refactor(modules): split monolithic system/desktop config

This commit is contained in:
randogoth 2026-02-04 10:29:55 +02:00
parent c299acb87d
commit febdf2702c
13 changed files with 249 additions and 209 deletions

View file

@ -1,19 +1,17 @@
{ pkgs, lib, ... }:
let
# Patched Logo Menu extension (same patch as installed system-wide).
logoMenuExtension = pkgs.gnomeExtensions.logo-menu.overrideAttrs (old: {
patches = (old.patches or []) ++ [ ./patches/logo-menu-custom-menu.patch ];
version = "38";
src = pkgs.fetchzip {
url = "https://extensions.gnome.org/extension-data/logomenuaryan_k.v38.shell-extension.zip";
hash = "sha256-GdGn7YKfOOEM0kV1Gd9H5c1KKjs/+/4XCsxO2pFdqu4=";
stripRoot = false;
};
patches = (old.patches or [ ]) ++ [ ./patches/logo-menu-custom-menu.patch ];
});
# Expose the extension schema in the layout expected by gsettings overrides.
logoMenuSchemas = pkgs.runCommand "logo-menu-gsettings-schemas" { } ''
schemaSrc="${logoMenuExtension}/share/gnome-shell/extensions/logomenu@aryan_k/schemas";
dest=$out/share/gsettings-schemas/logo-menu-gsettings-schemas/glib-2.0/schemas
mkdir -p "$dest"
cp -a "$schemaSrc"/*.xml "$dest"/
'';
in {
in
{
services.displayManager.gdm.enable = true;
services.desktopManager.gnome.enable = true;
@ -62,35 +60,51 @@ in {
];
};
environment.gnome.excludePackages = with pkgs; [
environment.systemPackages = lib.mkAfter [
pkgs.gnome-browser-connector
pkgs.gnome-extension-manager
pkgs.mission-center
pkgs.papirus-icon-theme
pkgs.gnomeExtensions.all-in-one-clipboard
pkgs.gnomeExtensions.alphabetical-app-grid
pkgs.gnomeExtensions.app-hider
pkgs.gnomeExtensions.apps
pkgs.gnomeExtensions.blur-my-shell
pkgs.gnomeExtensions.caffeine
logoMenuExtension
pkgs.gnomeExtensions.places-status-indicator
pkgs.gnomeExtensions.restart-to
];
environment.gnome.excludePackages = [
# comment out to include
gnome-tour
gnome-user-docs
pkgs.gnome-tour
pkgs.gnome-user-docs
# baobab # disk usage analyzer
decibels # audio player
epiphany # web browser
geary # email client
pkgs.decibels # audio player
pkgs.epiphany # web browser
pkgs.geary # email client
# gnome-text-editor # text editor
# gnome-backgrounds
gnome-calculator
gnome-calendar
gnome-characters
pkgs.gnome-calculator
pkgs.gnome-calendar
pkgs.gnome-characters
# gnome-clocks
gnome-console
gnome-contacts
pkgs.gnome-console
pkgs.gnome-contacts
# gnome-font-viewer
# gnome-logs
gnome-maps
gnome-music
gnome-system-monitor
gnome-weather
loupe
nautilus
papers
pkgs.gnome-maps
pkgs.gnome-music
pkgs.gnome-system-monitor
pkgs.gnome-weather
pkgs.loupe
pkgs.nautilus
pkgs.papers
# gnome-connections
showtime
simple-scan
snapshot
yelp
pkgs.showtime
pkgs.simple-scan
pkgs.snapshot
pkgs.yelp
];
}