modules.gui.gnome: fix build
This commit is contained in:
@@ -1,18 +1,17 @@
|
|||||||
{ lib, config, ... }:
|
{ lib, config, pkgs, ... }:
|
||||||
|
|
||||||
with lib;
|
|
||||||
let
|
let
|
||||||
cfg = config.sane.gui.gnome;
|
cfg = config.sane.gui.gnome;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options = {
|
options = with lib; {
|
||||||
sane.gui.gnome.enable = mkOption {
|
sane.gui.gnome.enable = mkOption {
|
||||||
default = false;
|
default = false;
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
sane.programs.guiApps.enableFor.user.colin = true;
|
sane.programs.guiApps.enableFor.user.colin = true;
|
||||||
|
|
||||||
# start gnome/gdm on boot
|
# start gnome/gdm on boot
|
||||||
@@ -23,6 +22,27 @@ in
|
|||||||
# gnome does networking stuff with networkmanager
|
# gnome does networking stuff with networkmanager
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
networking.wireless.enable = lib.mkForce false;
|
networking.wireless.enable = lib.mkForce false;
|
||||||
|
|
||||||
|
|
||||||
|
# services.xserver.desktopManager.gnome.enable enables some default apps we don't really care about.
|
||||||
|
# see <nixos/modules/services/x11/desktop-managers/gnome.nix>
|
||||||
|
environment.gnome.excludePackages = with pkgs; [
|
||||||
|
# gnome.gnome-menus # unused outside gnome classic, but probably harmless
|
||||||
|
gnome.gnome-control-center #< if you want a faster deploy
|
||||||
|
gnome-tour
|
||||||
|
];
|
||||||
|
|
||||||
|
# disable these for a faster build cycle
|
||||||
|
services.dleyna-renderer.enable = false;
|
||||||
|
services.dleyna-server.enable = false;
|
||||||
|
services.gnome.gnome-browser-connector.enable = false;
|
||||||
|
services.gnome.gnome-initial-setup.enable = false;
|
||||||
|
services.gnome.gnome-remote-desktop.enable = false;
|
||||||
|
services.gnome.gnome-user-share.enable = false;
|
||||||
|
services.gnome.rygel.enable = false;
|
||||||
|
services.gnome.evolution-data-server.enable = lib.mkForce false;
|
||||||
|
services.gnome.gnome-online-accounts.enable = lib.mkForce false;
|
||||||
|
services.gnome.gnome-online-miners.enable = lib.mkForce false;
|
||||||
};
|
};
|
||||||
# user extras:
|
# user extras:
|
||||||
# obtain these by running `dconf dump /` after manually customizing gnome
|
# obtain these by running `dconf dump /` after manually customizing gnome
|
||||||
|
@@ -14,6 +14,14 @@
|
|||||||
# OAuth depends on webkitgtk_4_1: old, forces an annoying recompilation
|
# OAuth depends on webkitgtk_4_1: old, forces an annoying recompilation
|
||||||
enableOAuth2 = false;
|
enableOAuth2 = false;
|
||||||
};
|
};
|
||||||
|
gnome-control-center = gsuper.gnome-control-center.override {
|
||||||
|
# i build goa without the "backend", to avoid webkit_4_1.
|
||||||
|
# however gnome-control-center *directly* uses goa-backend because it manages the accounts...
|
||||||
|
# so if you really need gnome-control center, then here we are, re-enabling the goa backend.
|
||||||
|
gnome-online-accounts = self.gnome-online-accounts.override {
|
||||||
|
enableBackend = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
# gnome-shell = gsuper.gnome-shell.override {
|
# gnome-shell = gsuper.gnome-shell.override {
|
||||||
# evolution-data-server-gtk4 = evolution-data-server-gtk4.override {
|
# evolution-data-server-gtk4 = evolution-data-server-gtk4.override {
|
||||||
# # avoid webkitgtk_6_0 build. lol.
|
# # avoid webkitgtk_6_0 build. lol.
|
||||||
|
@@ -113,7 +113,7 @@ let
|
|||||||
firefox-unwrapped = callPackage ./patched/firefox-unwrapped { inherit (unpatched) firefox-unwrapped; };
|
firefox-unwrapped = callPackage ./patched/firefox-unwrapped { inherit (unpatched) firefox-unwrapped; };
|
||||||
|
|
||||||
gnome = unpatched.gnome.overrideScope' (gself: gsuper: {
|
gnome = unpatched.gnome.overrideScope' (gself: gsuper: {
|
||||||
gnome-control-center = gself.callPackage ./patched/gnome-control-center {
|
gnome-control-center = import ./patched/gnome-control-center {
|
||||||
inherit (gsuper) gnome-control-center;
|
inherit (gsuper) gnome-control-center;
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
{ gnome-control-center }:
|
{ gnome-control-center }:
|
||||||
|
|
||||||
(gnome-control-center.overrideAttrs (upstream: {
|
gnome-control-center.overrideAttrs (upstream: {
|
||||||
# gnome-control-center does not start without XDG_CURRENT_DESKTOP=gnome
|
# gnome-control-center does not start without XDG_CURRENT_DESKTOP=gnome
|
||||||
# see: <https://github.com/NixOS/nixpkgs/issues/230493>
|
# see: <https://github.com/NixOS/nixpkgs/issues/230493>
|
||||||
# see: <https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/736>
|
# see: <https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/736>
|
||||||
@@ -12,4 +12,4 @@
|
|||||||
--set XDG_CURRENT_DESKTOP "gnome"
|
--set XDG_CURRENT_DESKTOP "gnome"
|
||||||
);
|
);
|
||||||
'' + upstream.preFixup;
|
'' + upstream.preFixup;
|
||||||
}))
|
})
|
||||||
|
Reference in New Issue
Block a user