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

Harmonize Gnome3 Defaults #67522

Merged
merged 5 commits into from Sep 1, 2019

Conversation

worldofpeace
Copy link
Contributor

@worldofpeace worldofpeace commented Aug 26, 2019

Motivation for this change

See commit messages for what was removed and added.

Fixes #67310

Things to consider in this PR

It seems upstream has moved to Evolution to World so it isn't in core-utilities. We're missing a default email application.

We could either re-add it or swap it for Geary. I'd recommend the latter, and it seems to already be planned

Do we want to remove telepathy from the defaults?
It's runtime optional in gnome-shell, though I think for this to work in NixOS we'd have to use sessionPath but it would be limited to the telepathy module. We'd then have to disable the functionality in the default apps.

I don't think we should include gnome-boxes default. I'm pretty sure it'd bring in some pretty large dependencies, I don't think a default experience needs a virtual machine application.
Though we do need something in the future for remote desktop viewing.

Add seahorse default. It was recently added to world

My opinion is that it's a useful application for secrets which are already managed default.

Remove vino

This might be something to do later, I'm not sure if gnome-shell has it runtime optional.


Release notes will be prepared once approval is given.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.
Notify maintainers

cc @

@worldofpeace
Copy link
Contributor Author

Note mousetweaks was part of 3.32 but removed for 3.34.
The functionality was added to gnome-shell

@worldofpeace
Copy link
Contributor Author

I'd like to include

in here as well, since it is a change to defaults.

As far as I can tell from how things have changed for fontconfig; I'm not expecting any issues from disabling penultimate since I believe that lessened now defunct issues.

@jtojnar
Copy link
Contributor

jtojnar commented Aug 26, 2019

I would vote for disabling penultimate by default on NixOS. It is non-standard package causing significant deviations from upstream. If someone wants to have it, they can always enable it.

@worldofpeace worldofpeace added this to the 19.09 milestone Aug 26, 2019
@worldofpeace worldofpeace added this to In Progress in GNOME Aug 26, 2019
@worldofpeace
Copy link
Contributor Author

I would vote for disabling penultimate by default on NixOS. It is non-standard package causing significant deviations from upstream. If someone wants to have it, they can always enable it.

I agree, I've opened #67529 perpendicular to this but included cd51ab5 here.

@jtojnar
Copy link
Contributor

jtojnar commented Aug 26, 2019

It seems upstream has moved to Evolution to World so it isn't in core-utilities. We're missing a default email application.

Do we need one? Lot of people use web mails these days.

We could either re-add it or swap it for Geary. I'd recommend the latter, and it seems to already be planned

Works for me, as that is what I use.

Do we want to remove telepathy from the defaults?
It's runtime optional in gnome-shell, though I think for this to work in NixOS we'd have to use sessionPath but it would be limited to the telepathy module. We'd then have to disable the functionality in the default apps.

I would rather keep it for now (at least until they drop support). It would be in line with our custom of building packages with as wide feature set as possible. Though, if it is only a runtime dependency (via GI_TYPELIB_PATH) maybe it would be permissible.

You know my abhorrence of sessionPath, so the only alternative would be something like gnome-shell-with-packages and I am too lazy to implement that. The harder part would actually be the need to decouple gnome-shell from gnome-session and we already need that for Shell-less Flashback so maybe, it is not such a bad idea.

I don't think we should include gnome-boxes default. I'm pretty sure it'd bring in some pretty large dependencies, I don't think a default experience needs a virtual machine application.

I agree with cutting out Boxes for being huge.

Though we do need something in the future for remote desktop viewing.

Does that need to be in core-utils? It feels like a too specialist task to justify such a huge closure.

Add seahorse default. It was recently added to world
My opinion is that it's a useful application for secrets which are already managed default.

How often does one need it though? I run it maybe once a year when Polari somehow stops being able to use the stored passwords and I need to re-enter them manually.

Remove vino

We need to keep it until https://gitlab.gnome.org/GNOME/gnome-control-center/issues/212 is resolved.

@worldofpeace
Copy link
Contributor Author

It seems upstream has moved to Evolution to World so it isn't in core-utilities. We're missing a default email application.

Do we need one? Lot of people use web mails these days.

We could either re-add it or swap it for Geary. I'd recommend the latter, and it seems to already be planned

Works for me, as that is what I use.

The traditional suite of applications usually contains some sort of email client.
I guess I'll add Geary 👍 , it's already going fine in Pantheon as a replacement for their in development mail application.

Do we want to remove telepathy from the defaults?
It's runtime optional in gnome-shell, though I think for this to work in NixOS we'd have to use sessionPath but it would be limited to the telepathy module. We'd then have to disable the functionality in the default apps.

I would rather keep it for now (at least until they drop support). It would be in line with our custom of building packages with as wide feature set as possible. Though, if it is only a runtime dependency (via GI_TYPELIB_PATH) maybe it would be permissible.

It does seem they've already dropped it from core

You know my abhorrence of sessionPath, so the only alternative would be something like gnome-shell-with-packages and I am too lazy to implement that. The harder part would actually be the need to decouple gnome-shell from gnome-session and we already need that for Shell-less Flashback so maybe, it is not such a bad idea.

Right, I think if it needs to work that could bleed into the larger scheme we could make it a priority for 3.34 and the next release.

I don't think we should include gnome-boxes default. I'm pretty sure it'd bring in some pretty large dependencies, I don't think a default experience needs a virtual machine application.

I agree with cutting out Boxes for being huge.

Though we do need something in the future for remote desktop viewing.

Does that need to be in core-utils? It feels like a too specialist task to justify such a huge closure.

Yeah, I don't think gnome-boxes is a good candidate to be in core anything because it's so large.
Previously we shipped a remote desktop viewer "vinagre", not sure if there's an equivalent.

Add seahorse default. It was recently added to world
My opinion is that it's a useful application for secrets which are already managed default.

How often does one need it though? I run it maybe once a year when Polari somehow stops being able to use the stored passwords and I need to re-enter them manually.

Well I was thinking, it's a utility linked to gnome-keyring which is a service needed default.
So general use of the tools the DE provides us. Think of it as a utility like baobab which may not get frequent use.

Remove vino

We need to keep it until https://gitlab.gnome.org/GNOME/gnome-control-center/issues/212 is resolved.

Ahh, now I see why I was unsure about that. A todo for when it's ready.

@jtojnar
Copy link
Contributor

jtojnar commented Aug 27, 2019

Do we want to remove telepathy from the defaults?
It's runtime optional in gnome-shell, though I think for this to work in NixOS we'd have to use sessionPath but it would be limited to the telepathy module. We'd then have to disable the functionality in the default apps.

I would rather keep it for now (at least until they drop support). It would be in line with our custom of building packages with as wide feature set as possible. Though, if it is only a runtime dependency (via GI_TYPELIB_PATH) maybe it would be permissible.

It does seem they've already dropped it from core

* [gitlab.gnome.org/GNOME/gnome-build-meta/merge_requests/24](https://gitlab.gnome.org/GNOME/gnome-build-meta/merge_requests/24)

I was looking at it from NixOS perspective – that is dropping support from GNOME Shell code base. Every disabled feature means someone will probably need to rebuild the package with the feature enabled and will not be able to use the binary cache. At least with wrappers we would avoid GNOME Shell rebuild but , until #67546 is fixed, gnome-session will still be affected.

Previously we shipped a remote desktop viewer "vinagre", not sure if there's an equivalent.

I am afraid GNOME decided it belongs into Boxes, so no separate app. Well, we do have Remmina but it is far from lightweight itself.

Well I was thinking, it's a utility linked to gnome-keyring which is a service needed default.
So general use of the tools the DE provides us. Think of it as a utility like baobab which may not get frequent use.

It is pretty small and unobtrusive so I am not against it.

@worldofpeace
Copy link
Contributor Author

I was looking at it from NixOS perspective – that is dropping support from GNOME Shell code base. Every disabled feature means someone will probably need to rebuild the package with the feature enabled and will not be able to use the binary cache. At least with wrappers we would avoid GNOME Shell rebuild but , until #67546 is fixed, gnome-session will still be affected.

True, rebuilding anything is particually unattractive. Especially when it's just to change the executable wrapper. Also just realized decoupling gnome-shell from gnome-session would benefit Pantheon as it uses gnome-session.

Previously we shipped a remote desktop viewer "vinagre", not sure if there's an equivalent.

I am afraid GNOME decided it belongs into Boxes, so no separate app. Well, we do have Remmina but it is far from lightweight itself.

I just did some research and it appears Ubuntu shares the same sentiment towards Boxes and the default session. They actually ship Remmina.

Though it's only a slight improvement in NixOS

❯ nix path-info -Sh nixpkgs.gnome3.gnome-boxes                                                                                                                       
/nix/store/lafjx4kmh8s2kajbqcy8brlz1k4ifdqj-gnome-boxes-3.32.1	   1.3G

❯ nix path-info -Sh nixpkgs.remmina                                                                                                                                  
/nix/store/l9260dv356ra8ka9766k6miv4wz1f84m-remmina-1.3.4	 946.3M

I wonder how much of that we get for free.

Well I was thinking, it's a utility linked to gnome-keyring which is a service needed default.
So general use of the tools the DE provides us. Think of it as a utility like baobab which may not get frequent use.

It is pretty small and unobtrusive so I am not against it.

Will add 👍

@worldofpeace
Copy link
Contributor Author

Re-added seahorse, cleaned up its module and renamed it to programs ba8a53e

core-utilities is meant to be the base utilities for a GNOME system.

The following are removed and the gnome3 module will no longer include:
- accerciser
- gnome-nettool
- gnome-power-manager
- gucharmap
- nautilus-sendto
  See https://gitlab.gnome.org/GNOME/gnome-build-meta/merge_requests/246
- gnome-usage
- vinagre
- gnome-documents
  See https://gitlab.gnome.org/GNOME/gnome-build-meta/merge_requests/157
- dconf-editor
- gnome-todo
- gnome-tweaks
- evolution

The following were added:
- cheese
- geary
Adds:

- gnome-color-manager
- services.avahi
  It appears that GeoClue requires its daemon and IIRC has
  been default enabled in other distros for a while.
- orca
  It's the default screen-reader.
@worldofpeace
Copy link
Contributor Author

Added release notes @jtojnar (maybe they could be better?). We should merge with, #67667.

nixos/doc/manual/release-notes/rl-1909.xml Show resolved Hide resolved
nixos/doc/manual/release-notes/rl-1909.xml Outdated Show resolved Hide resolved
nixos/doc/manual/release-notes/rl-1909.xml Outdated Show resolved Hide resolved
@worldofpeace worldofpeace merged commit 9b13731 into NixOS:master Sep 1, 2019
GNOME automation moved this from In Progress to Done Sep 1, 2019
@worldofpeace worldofpeace deleted the gnome3/harmonize-defaults branch September 1, 2019 22:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
GNOME
  
Done
Development

Successfully merging this pull request may close these issues.

Cleanup GNOME3 default applications
3 participants