Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

nixos/plasma5: Install default KDE apps for music, images and documents #101725

Merged
merged 1 commit into from Oct 2, 2021

Conversation

andir
Copy link
Member

@andir andir commented Oct 26, 2020

Motivation for this change

I received this commit via Email and think this might require discussion with
those maintaining the KDE Plasma modules & packages.

From https://apps.kde.org/:
Elisa is a simple KDE music player (with builtin internet radio support),
Okular is a universal KDE document viewer (can fill PDF forms),
Gwenview is a fast and easy to use KDE image viewer.

All three are missing in the default installation KDE installation, e.g.

services.xserver = {
displayManager.sddm.enable = true;
desktopManager.plasma5.enable = true;
};

which provides no alternatives, hence requiring them whilst being
offline is unfortunate, so install them by default.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
    • I did execute nixos/tests/plasma5.nix

>From https://apps.kde.org/:
Elisa is a simple KDE music player (with builtin internet radio support),
Okular is a universal KDE document viewer (can fill PDF forms),
Gwenview is a fast and easy to use KDE image viewer.

All three are missing in the default installation KDE installation, e.g.

	services.xserver = {
	  displayManager.sddm.enable = true;
	  desktopManager.plasma5.enable = true;
	};

which provides no alternatives, hence requiring them whilst being
offline is unfortunate, so install them by default.
@andir
Copy link
Member Author

andir commented Oct 26, 2020

cc @worldofpeace (for the lack of better knowledge about our KDE people)

@cole-h
Copy link
Member

cole-h commented Oct 26, 2020

Also cc @ttuegel (one of our KDE people, I believe)

@worldofpeace
Copy link
Contributor

See my commit message at 55bc3e4, it has my stance on this. And it's exactly this, we need to ship some default applications, but we need a way for power users to filter apps out that they don't want.

We use this function in gnome-3 https://github.com/NixOS/nixpkgs/blob/master/pkgs/desktops/gnome-3/default.nix#L6, and had an option excludePackages https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/services/x11/desktop-managers/gnome3.nix#L428. However, we've tiered the configuration for gnome in an intentional way that a user cannot filter out any essential package from the global environment using excludePackages. This has been my personal choice for a intuitive interface to duplicate through the DE modules, and also having an option (if possible) to switch on and off default apps entirely https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/services/x11/desktop-managers/pantheon.nix#L32. All of this though is dependent on how the environment categorizes applications, like there also could probably be an option to provision kde game applications.

@worldofpeace
Copy link
Contributor

worldofpeace commented Oct 26, 2020

Overall I think a tentative goal for 21.03 should be wayland in plasma (by then it will be 2021, that's 2020+1 🤣 ) and sane defaults while still being flexible for a minimal environment.

@worldofpeace
Copy link
Contributor

Also cc @ttuegel (one of our KDE people, I believe)

Very much one of our KDE people. I would say essentially the sole (official) maintainer in nixpkgs.

@andir andir requested a review from ttuegel November 18, 2020 20:08
@andir
Copy link
Member Author

andir commented Dec 1, 2020

Anything I can do to move this forward?

@ttuegel
Copy link
Member

ttuegel commented Dec 4, 2020

This has been my personal choice for a intuitive interface to duplicate through the DE modules, and also having an option (if possible) to switch on and off default apps entirely

This PR seems pretty simple. Let's add a minimal flag to turn off the new applications, and leave the more complex solution for another time, when we have more optional applications.

@stale
Copy link

stale bot commented Jun 2, 2021

I marked this as stale due to inactivity. → More info

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jun 2, 2021
@peterhoeg
Copy link
Member

@ttuegel, I disagree on the minimal flag. That will just lead to someone saying "oh, now khelpcenter needs to be behind that same flag because I don't need help and same with spectacle because I don't do screenshots". I'm much in favour of merging this as-is as it makes for a better out of the box experience and the negative impact is just a little extra space used which in the grand scheme of things is just noise.

That being said, having a granular mechanism would be great, but as nobody has done that yet, let's just get this in. Do you feel very strongly about the minimal flag?

@stale stale bot removed the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jun 17, 2021
@ttuegel ttuegel merged commit 000e81b into NixOS:master Oct 2, 2021
@ttuegel
Copy link
Member

ttuegel commented Oct 2, 2021

That being said, having a granular mechanism would be great, but as nobody has done that yet, let's just get this in. Do you feel very strongly about the minimal flag?

This is going to make testing new releases a big pain, but I don't care anymore.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants