Nixpkgs: Remove Xfce 4.12

Created on 14 Sep 2019  路  10Comments  路  Source: NixOS/nixpkgs

Describe the bug
We have Xfce 4.14 in nixpkgs, a separate module just for this version and a test.

All of these supersede what's used for Xfce 4.12 and we shouldn't have multiple versions of it in nixpkgs.

Things to do
Off the top of my head, these are the things that should be done to achieve this.
The remove defunct xfce software is going to need a keen eye.

  • [x] move pkgs/desktops/xfce4-14 -> pkgs/desktops/xfce
  • [x] remove defunct xfce software (please use throw's)
  • [x] alias xfce4-14 to xfce (drop in 20.09)
  • [x] move nixos/tests/xfce4-14.nix -> nixos/tests/xfce.nix
  • [x] have xfce4-14 desktopManager support thunarPlugins interface.
  • [x] move/rename services.xserver.desktopManager.xfce4-14 -> services.xserver.desktopManager.xfce
bug nixos xfce clean-up module (update)

Most helpful comment

There may be issues with the latest release, but it is a stable release so they hopefully won't be blocking issues

That was the point I tried to argue, sorry for being unclear.
What upstream guys say "stable" that means it has no issues on Linux they are using (Ubuntu or something).

4.14 is stable now, but, for example, the start menu remembers full Nix Store paths.
Once you run Chromium, it runs chromium-76. Then, after nixos-rebuild which supposes to upgrade chromium to -77, xfce start menu will still run chromium-76. After reboot it will still be chromium-76. And after garbage collection it will be a "file not found".

Of course we could consider issues like this non-blocking, but the very existence of nixos-specific issues is the reason to make difference between "upstream stable" and "nixos stable".

All 10 comments

Note I may not be able to be responsible to produce this myself in 20.03, so I've opened this to solicit some assistance.

alias xfce4-14 to xfce (drop in 20.09)

by 20.09 there will be xfce4-16, they plan yearly releases

So nixpkgs will likely have two xfce versions always

alias xfce4-14 to xfce (drop in 20.09)

by 20.09 there will be xfce4-16, they plan yearly releases

So nixpkgs will likely have two xfce versions always

Could you explain further why it'd have to be like this?
My understanding is that we'd just update the single xfce package set to 4.16 when it's released.
I don't think any other distro keeps old versions of xfce around.

4.14 still has a lot of nixos-specific issues which need time to fix.
By the time we make 4.14 stable on nixos, 4.16 will be released
bringing new issues to fix.
That's why I expect two versions - one matching upstream version but
not well tested on nixos and another which is few months old and
usable on non-developer machines

On 9/14/19, worldofpeace notifications@github.com wrote:

alias xfce4-14 to xfce (drop in 20.09)

by 20.09 there will be xfce4-16, they plan yearly releases

So nixpkgs will likely have two xfce versions always

Could you explain further why it'd have to be like this?
My understanding is that we'd just update the single xfce package set to
4.16 when it's released.
I don't think any other distro keeps old versions of xfce around.

--
You are receiving this because you commented.
Reply to this email directly or view it on GitHub:
https://github.com/NixOS/nixpkgs/issues/68737#issuecomment-531473265

I understand a situation where there would be different versions of Xfce on the stable release and unstable, but I don't think we should maintain multiple package sets. It makes the release more difficult.
People could expect the same quality by distributing the latest stable release and its predecessor.
Suddenly we're maintaining two different interfaces to interact with the same software, just at different points in time. There may be issues with the latest release, but it is a __stable__ release so they hopefully won't be blocking issues (xfce appears to have more maturity to avoid this.)

We're only in a situation where we actually have to deprecate Xfce 4.12 because a second set of Xfce packages were introduced, and they had a very unreasonable window of time between the release.
(#32763 was for testing)

As they've promised more timely releases this will be a much simpler task.

There may be issues with the latest release, but it is a stable release so they hopefully won't be blocking issues

That was the point I tried to argue, sorry for being unclear.
What upstream guys say "stable" that means it has no issues on Linux they are using (Ubuntu or something).

4.14 is stable now, but, for example, the start menu remembers full Nix Store paths.
Once you run Chromium, it runs chromium-76. Then, after nixos-rebuild which supposes to upgrade chromium to -77, xfce start menu will still run chromium-76. After reboot it will still be chromium-76. And after garbage collection it will be a "file not found".

Of course we could consider issues like this non-blocking, but the very existence of nixos-specific issues is the reason to make difference between "upstream stable" and "nixos stable".

There may be issues with the latest release, but it is a _stable_ release so they hopefully won't be blocking issues

That was the point I tried to argue, sorry for being unclear.
What upstream guys say "stable" that means it has no issues on Linux they are using (Ubuntu or something).

4.14 is stable now, but, for example, the start menu remembers full Nix Store paths.
Once you run Chromium, it runs chromium-76. Then, after nixos-rebuild which supposes to upgrade chromium to -77, xfce start menu will still run chromium-76. After reboot it will still be chromium-76. And after garbage collection it will be a "file not found".

Of course we could consider issues like this non-blocking, but the very existence of nixos-specific issues is the reason to make difference between "upstream stable" and "nixos stable".

This issue appears to pop up frequently in Nix with application launchers.
We should probably report this upstream so it can be fixed, which component is this?. If we had more resources we could coordinate that upstream stable is nixos stable. But unfortunately, it appears that we lack the resources to have this maintained very well in NixOS (I can only contribute to this provisionally).
Attracting new maintainers and contributors is something I try to do to help this.

We should probably report this upstream so it can be fixed, which component is this?

Probably whiskermenu or dockbarx-panel-plugin.
I do not fix it because I am trying to rethink the ideas about stable paths of the applications and about how $PATH is constructed (merging everything at /run/current-system/sw has obvious drawback of re-introducing dll hell)

71095 adds a xfce 4.12 specific option description and configuration

    agent.pinentryFlavor = mkOption {
      type = types.nullOr (types.enum pkgs.pinentry.flavors);
      example = "gnome3";
      description = ''
        Which pinentry interface to use. If not null, the path to the
        pinentry binary will be passed to gpg-agent via commandline and
        thus overrides the pinentry option in gpg-agent.conf in the user's
        home directory.
        If not set at all, it'll pick an appropriate flavor depending on the
        system configuration (qt flavor for lxqt and plasma5, gtk2 for xfce
        4.12, gnome3 on all other systems with X enabled, ncurses otherwise).
      '';
    };
Was this page helpful?
0 / 5 - 0 ratings

Related issues

tomberek picture tomberek  路  3Comments

copumpkin picture copumpkin  路  3Comments

chris-martin picture chris-martin  路  3Comments

teto picture teto  路  3Comments

retrry picture retrry  路  3Comments