diff --git a/flake.lock b/flake.lock index c6f11cf..9870ae5 100644 --- a/flake.lock +++ b/flake.lock @@ -42,16 +42,16 @@ ] }, "locked": { - "lastModified": 1779506708, - "narHash": "sha256-QOD/CNm196nCJRheux/URi4/HE66fthdOMqCJoPP1Y0=", + "lastModified": 1783740085, + "narHash": "sha256-qajyHfZY29G2oEQk+uHxmsJcRoBUBXP9maTpFlwP/dI=", "owner": "nix-community", "repo": "home-manager", - "rev": "3ee51fbdac8c8bdfe1e7e1fcaba6520a563f394f", + "rev": "3cd22efe6471dc7365c822bd9ad73a21e55f38fb", "type": "github" }, "original": { "owner": "nix-community", - "ref": "release-25.11", + "ref": "release-26.05", "repo": "home-manager", "type": "github" } @@ -103,6 +103,64 @@ "type": "github" } }, + "niri": { + "inputs": { + "niri-stable": "niri-stable", + "niri-unstable": "niri-unstable", + "nixpkgs": [ + "nixpkgs" + ], + "nixpkgs-stable": "nixpkgs-stable", + "xwayland-satellite-stable": "xwayland-satellite-stable", + "xwayland-satellite-unstable": "xwayland-satellite-unstable" + }, + "locked": { + "lastModified": 1783510829, + "narHash": "sha256-VtZC3AiKp3w6oCTRlEaraI9Fi2T8CmdDuhzGf3lNG9M=", + "owner": "sodiboo", + "repo": "niri-flake", + "rev": "ba8fc95733e53354e82dd1a821d8391dcd56e4bc", + "type": "github" + }, + "original": { + "owner": "sodiboo", + "repo": "niri-flake", + "type": "github" + } + }, + "niri-stable": { + "flake": false, + "locked": { + "lastModified": 1756556321, + "narHash": "sha256-RLD89dfjN0RVO86C/Mot0T7aduCygPGaYbog566F0Qo=", + "owner": "YaLTeR", + "repo": "niri", + "rev": "01be0e65f4eb91a9cd624ac0b76aaeab765c7294", + "type": "github" + }, + "original": { + "owner": "YaLTeR", + "ref": "v25.08", + "repo": "niri", + "type": "github" + } + }, + "niri-unstable": { + "flake": false, + "locked": { + "lastModified": 1783506058, + "narHash": "sha256-LyuNO/1BM7GphVyt4C4Qj2OkdHZvM/9Hxs7mQ5ExjYc=", + "owner": "YaLTeR", + "repo": "niri", + "rev": "ef5b7379dc444d33b01a7faec2bd6592d3188357", + "type": "github" + }, + "original": { + "owner": "YaLTeR", + "repo": "niri", + "type": "github" + } + }, "nix-darwin": { "inputs": { "nixpkgs": [ @@ -110,16 +168,16 @@ ] }, "locked": { - "lastModified": 1772129556, - "narHash": "sha256-Utk0zd8STPsUJPyjabhzPc5BpPodLTXrwkpXBHYnpeg=", + "lastModified": 1783744694, + "narHash": "sha256-2cp6N3rrwnGYLTx9l6N+NI+kwrCWxvJUbj5WJhvB29A=", "owner": "nix-darwin", "repo": "nix-darwin", - "rev": "ebec37af18215214173c98cf6356d0aca24a2585", + "rev": "c3e90c89649b07d1a96e4b9dd6cd0d6e44b91a74", "type": "github" }, "original": { "owner": "nix-darwin", - "ref": "nix-darwin-25.11", + "ref": "nix-darwin-26.05", "repo": "nix-darwin", "type": "github" } @@ -160,16 +218,16 @@ }, "nixpkgs": { "locked": { - "lastModified": 1779796641, - "narHash": "sha256-ZsIrKmhp4vbBXoXXmR/tBXA/UCsAQiJL9vsgZEduhVY=", + "lastModified": 1783703440, + "narHash": "sha256-O3/YajjWo001VUIgD8BwaRdSNLUFe7nZ1qV5TwhRBcw=", "owner": "nixos", "repo": "nixpkgs", - "rev": "25f538306313eae3927264466c70d7001dcea1df", + "rev": "8f0500b9660505dc3cb647775fe9a978a74b5283", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-25.11", + "ref": "nixos-26.05", "repo": "nixpkgs", "type": "github" } @@ -189,6 +247,22 @@ "type": "github" } }, + "nixpkgs-stable": { + "locked": { + "lastModified": 1782847189, + "narHash": "sha256-twXPFqFsrrY5r28Zh7Homgcp2gUMBgQ6WDS98Q/3xFI=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "b6018f87da91d19d0ab4cf979885689b469cdd41", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-25.11", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs-unstable": { "locked": { "lastModified": 1780243769, @@ -205,6 +279,26 @@ "type": "github" } }, + "noctalia": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1783509806, + "narHash": "sha256-obeRpRcGCBEXdevCnI9eZPy7k2epocUvQrkYM4pGBRM=", + "owner": "noctalia-dev", + "repo": "noctalia-shell", + "rev": "54c8cd49fb709f6e7731d02dfc2468bbfb16effe", + "type": "github" + }, + "original": { + "owner": "noctalia-dev", + "repo": "noctalia-shell", + "type": "github" + } + }, "root": { "inputs": { "flake-parts": "flake-parts", @@ -212,11 +306,46 @@ "homebrew-cask": "homebrew-cask", "homebrew-core": "homebrew-core", "import-tree": "import-tree", + "niri": "niri", "nix-darwin": "nix-darwin", "nix-flatpak": "nix-flatpak", "nix-homebrew": "nix-homebrew", "nixpkgs": "nixpkgs", - "nixpkgs-unstable": "nixpkgs-unstable" + "nixpkgs-unstable": "nixpkgs-unstable", + "noctalia": "noctalia" + } + }, + "xwayland-satellite-stable": { + "flake": false, + "locked": { + "lastModified": 1755491097, + "narHash": "sha256-m+9tUfsmBeF2Gn4HWa6vSITZ4Gz1eA1F5Kh62B0N4oE=", + "owner": "Supreeeme", + "repo": "xwayland-satellite", + "rev": "388d291e82ffbc73be18169d39470f340707edaa", + "type": "github" + }, + "original": { + "owner": "Supreeeme", + "ref": "v0.7", + "repo": "xwayland-satellite", + "type": "github" + } + }, + "xwayland-satellite-unstable": { + "flake": false, + "locked": { + "lastModified": 1781226823, + "narHash": "sha256-28696iIw8uE0ZUyFTtzhEM8xMh85clCYypMxkvUi+sc=", + "owner": "Supreeeme", + "repo": "xwayland-satellite", + "rev": "8575d0ef55d70f9b4c46b6bffb3accf912217e1e", + "type": "github" + }, + "original": { + "owner": "Supreeeme", + "repo": "xwayland-satellite", + "type": "github" } } }, diff --git a/flake.nix b/flake.nix index 8014fc8..d510ace 100755 --- a/flake.nix +++ b/flake.nix @@ -6,20 +6,28 @@ flake-parts.url = "github:hercules-ci/flake-parts"; # Nixpkgs - nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11"; + nixpkgs.url = "github:nixos/nixpkgs/nixos-26.05"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; # Nix Darwin - nix-darwin.url = "github:nix-darwin/nix-darwin/nix-darwin-25.11"; + nix-darwin.url = "github:nix-darwin/nix-darwin/nix-darwin-26.05"; nix-darwin.inputs.nixpkgs.follows = "nixpkgs"; # Home manager - home-manager.url = "github:nix-community/home-manager/release-25.11"; + home-manager.url = "github:nix-community/home-manager/release-26.05"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; # Nix Flatpak nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=latest"; + # Niri + niri.url = "github:sodiboo/niri-flake"; + niri.inputs.nixpkgs.follows = "nixpkgs"; + + # Noctalia + noctalia.url = "github:noctalia-dev/noctalia-shell"; + noctalia.inputs.nixpkgs.follows = "nixpkgs"; + # Nix Homebrew nix-homebrew.url = "github:zhaofengli/nix-homebrew"; homebrew-core.url = "github:homebrew/homebrew-core"; @@ -31,7 +39,9 @@ outputs = inputs@{ self, + niri, nixpkgs, + noctalia, nix-darwin, flake-parts, import-tree, @@ -55,10 +65,12 @@ nixos = nixpkgs.lib.nixosSystem { specialArgs = { self = self; - nixpkgs = nixpkgs; - nixpkgs-unstable = nixpkgs-unstable; + niri = niri; + noctalia = noctalia; import-tree = import-tree; home-manager = home-manager; + nixpkgs = nixpkgs; + nixpkgs-unstable = nixpkgs-unstable; }; modules = [ (import-tree ./overlays/nixos) @@ -69,12 +81,14 @@ ] ++ [ (import-tree ./overlays/nixos) + nix-flatpak.nixosModules.nix-flatpak home-manager.nixosModules.home-manager (import-tree ./hosts/common) (import-tree ./hosts/nixos/home/users) - ]; + ] + ++ [ niri.nixosModules.niri ]; }; }; darwinConfigurations = { diff --git a/hosts/common/home-manager.nix b/hosts/common/home-manager.nix index 1834694..c502155 100644 --- a/hosts/common/home-manager.nix +++ b/hosts/common/home-manager.nix @@ -4,4 +4,5 @@ home-manager.useUserPackages = true; home-manager.overwriteBackup = true; home-manager.backupFileExtension = "bak"; + home-manager.sharedModules = [ ]; } diff --git a/hosts/darwin/home/users/alistreaza.nix b/hosts/darwin/home/users/alistreaza.nix index 317dcaa..a4f542a 100644 --- a/hosts/darwin/home/users/alistreaza.nix +++ b/hosts/darwin/home/users/alistreaza.nix @@ -37,6 +37,6 @@ # The state version is required and should stay at the version you # originally installed. - home.stateVersion = "25.11"; + home.stateVersion = "26.05"; }; } diff --git a/hosts/nixos/home/users/alistreaza.nix b/hosts/nixos/home/users/alistreaza.nix index 2d4a55a..04cef49 100644 --- a/hosts/nixos/home/users/alistreaza.nix +++ b/hosts/nixos/home/users/alistreaza.nix @@ -1,4 +1,4 @@ -{ import-tree, ... }: +{ pkgs, import-tree, ... }: { home-manager.users.alistreaza = { imports = [ @@ -11,7 +11,9 @@ homeDirectory = "/home/alistreaza"; }; + # Gnome home.xdg.enable = true; + home.shells.gnome.enable = true; # Shell apps home.shell.nh.enable = true; @@ -22,11 +24,19 @@ # Code editor home.env.nix.enable = true; - # Terminal app + # Terminal Apps home.ghostty.enable = true; + # Firefox app + home.firefox.enable = true; + home.firefox.privacy = true; + + home.packages = with pkgs; [ + zed-editor + ]; + # The state version is required and should stay at the version you # originally installed. - home.stateVersion = "25.11"; + home.stateVersion = "26.05"; }; } diff --git a/hosts/nixos/system/hardware-configuration.nix b/hosts/nixos/system/hardware-configuration.nix index 9b10d9d..590e573 100644 --- a/hosts/nixos/system/hardware-configuration.nix +++ b/hosts/nixos/system/hardware-configuration.nix @@ -1,32 +1,45 @@ # Do not modify this file! It was generated by ‘nixos-generate-config’ # and may be overwritten by future invocations. Please make changes # to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: +{ + config, + lib, + modulesPath, + ... +}: { - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; - boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "uas" "sd_mod" ]; + boot.initrd.availableKernelModules = [ + "xhci_pci" + "ahci" + "nvme" + "usb_storage" + "usbhid" + "sd_mod" + ]; boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-intel" ]; boot.extraModulePackages = [ ]; - fileSystems."/" = - { device = "/dev/disk/by-uuid/6002ba98-6ce8-49d5-a501-9c2500343b2a"; - fsType = "ext4"; - }; + fileSystems."/" = { + device = "/dev/disk/by-uuid/eb35b14e-3473-40f4-96ad-284204b9d615"; + fsType = "btrfs"; + }; - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/E9B0-43BF"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - swapDevices = - [ { device = "/dev/disk/by-uuid/b442da0b-8a3e-4f05-b13f-aec8a89917be"; } + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/5D52-D5CA"; + fsType = "vfat"; + options = [ + "fmask=0022" + "dmask=0022" ]; + }; + + swapDevices = [ ]; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; diff --git a/hosts/nixos/system/os.nix b/hosts/nixos/system/os.nix index 75c1813..e8dccf0 100755 --- a/hosts/nixos/system/os.nix +++ b/hosts/nixos/system/os.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ ... }: { # System services @@ -30,15 +30,6 @@ # Terminal programs.ssh.enableAskPassword = false; # No-window git push fix - environment.systemPackages = with pkgs; [ - pods - zed-editor - ]; - - services.flatpak.packages = [ - "io.github.flattool.Warehouse" - ]; - # System version - system.stateVersion = "25.11"; + system.stateVersion = "26.05"; } diff --git a/modules/home/nixos/apps/firefox.nix b/modules/home/nixos/apps/firefox.nix index e973f62..87c40f1 100644 --- a/modules/home/nixos/apps/firefox.nix +++ b/modules/home/nixos/apps/firefox.nix @@ -21,11 +21,10 @@ in programs.firefox = { enable = true; languagePacks = [ "fr-FR" ]; - policies = { - DisablePocket = true; - ExtensionSettings = - { } - + mkif cfg.privacy { + policies = mkMerge [ + { + DisablePocket = true; + ExtensionSettings = mkIf cfg.privacy { "uBlock0@raymondhill.net" = { default_area = "menupanel"; install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi"; @@ -33,70 +32,73 @@ in private_browsing = true; }; }; - } - + mkif cfg.privacy { - DisableTelemetry = true; - DisableFirefoxStudies = true; - EnableTrackingProtection = true; - }; + } + (mkIf cfg.privacy { + DisableTelemetry = true; + DisableFirefoxStudies = true; + EnableTrackingProtection = true; + }) + ]; profiles.default = { - settings = { - # Vertical tabs - "sidebar.revamp" = true; - "sidebar.verticalTabs" = true; - "sidebar.new-sidebar.has-used" = true; - "sidebar.main.tools" = "history,passwords"; - "sidebar.backupState" = { - "panelOpen" = true; - "launcherExpanded" = false; - "launcherVisible" = true; - }; - # No bookmarks - "browser.toolbars.bookmarks.visibility" = "never"; - # New tab page - "browser.newtabpage.activity-stream.feeds.topsites" = false; - "browser.newtabpage.activity-stream.showSponsoredTopSites" = false; - "browser.newtabpage.activity-stream.showSponsoredCheckboxes" = false; - } - + mkif cfg.privacy { - # Disable some telemetry - "app.shield.optoutstudies.enabled" = false; - "browser.discovery.enabled" = false; - "browser.newtabpage.activity-stream.feeds.telemetry" = false; - "browser.newtabpage.activity-stream.telemetry" = false; - "browser.ping-centre.telemetry" = false; - "datareporting.healthreport.service.enabled" = false; - "datareporting.healthreport.uploadEnabled" = false; - "datareporting.policy.dataSubmissionEnabled" = false; - "datareporting.sessions.current.clean" = true; - "devtools.onboarding.telemetry.logged" = false; - "toolkit.telemetry.archive.enabled" = false; - "toolkit.telemetry.bhrPing.enabled" = false; - "toolkit.telemetry.enabled" = false; - "toolkit.telemetry.firstShutdownPing.enabled" = false; - "toolkit.telemetry.hybridContent.enabled" = false; - "toolkit.telemetry.newProfilePing.enabled" = false; - "toolkit.telemetry.prompted" = 2; - "toolkit.telemetry.rejected" = true; - "toolkit.telemetry.reportingpolicy.firstRun" = false; - "toolkit.telemetry.server" = ""; - "toolkit.telemetry.shutdownPingSender.enabled" = false; - "toolkit.telemetry.unified" = false; - "toolkit.telemetry.unifiedIsOptIn" = false; - "toolkit.telemetry.updatePing.enabled" = false; - } - + mkif cfg.sanity { - # Sanitize - "SanitizeOnShutdown" = { - "Locked" = false; - "Cache" = true; - "History" = true; - "Cookies" = true; - "Sessions" = true; - "FormData" = true; - "SiteSettings" = true; - }; - }; + settings = mkMerge [ + { + # Vertical tabs + "sidebar.revamp" = true; + "sidebar.verticalTabs" = true; + "sidebar.new-sidebar.has-used" = true; + "sidebar.main.tools" = "history,passwords"; + "sidebar.backupState" = { + "panelOpen" = true; + "launcherExpanded" = false; + "launcherVisible" = true; + }; + # No bookmarks + "browser.toolbars.bookmarks.visibility" = "never"; + # New tab page + "browser.newtabpage.activity-stream.feeds.topsites" = false; + "browser.newtabpage.activity-stream.showSponsoredTopSites" = false; + "browser.newtabpage.activity-stream.showSponsoredCheckboxes" = false; + } + (mkIf cfg.privacy { + # Disable some telemetry + "app.shield.optoutstudies.enabled" = false; + "browser.discovery.enabled" = false; + "browser.newtabpage.activity-stream.feeds.telemetry" = false; + "browser.newtabpage.activity-stream.telemetry" = false; + "browser.ping-centre.telemetry" = false; + "datareporting.healthreport.service.enabled" = false; + "datareporting.healthreport.uploadEnabled" = false; + "datareporting.policy.dataSubmissionEnabled" = false; + "datareporting.sessions.current.clean" = true; + "devtools.onboarding.telemetry.logged" = false; + "toolkit.telemetry.archive.enabled" = false; + "toolkit.telemetry.bhrPing.enabled" = false; + "toolkit.telemetry.enabled" = false; + "toolkit.telemetry.firstShutdownPing.enabled" = false; + "toolkit.telemetry.hybridContent.enabled" = false; + "toolkit.telemetry.newProfilePing.enabled" = false; + "toolkit.telemetry.prompted" = 2; + "toolkit.telemetry.rejected" = true; + "toolkit.telemetry.reportingpolicy.firstRun" = false; + "toolkit.telemetry.server" = ""; + "toolkit.telemetry.shutdownPingSender.enabled" = false; + "toolkit.telemetry.unified" = false; + "toolkit.telemetry.unifiedIsOptIn" = false; + "toolkit.telemetry.updatePing.enabled" = false; + }) + (mkIf cfg.sanity { + # Sanitize + "SanitizeOnShutdown" = { + "Locked" = false; + "Cache" = true; + "History" = true; + "Cookies" = true; + "Sessions" = true; + "FormData" = true; + "SiteSettings" = true; + }; + }) + ]; }; }; }; diff --git a/modules/home/nixos/shells/gnome.nix b/modules/home/nixos/shells/gnome.nix index a94fae1..fc9956c 100644 --- a/modules/home/nixos/shells/gnome.nix +++ b/modules/home/nixos/shells/gnome.nix @@ -1,11 +1,16 @@ -{ lib, config, ... }: +{ + pkgs, + lib, + config, + ... +}: with lib; let - cfg = config.home.shell.gnome; + cfg = config.home.shells.gnome; in { - options.home.shell.gnome = { - + options.home.shells.gnome = { + enable = mkEnableOption "Gnome service"; extensions = { paperwm = mkOption { type = types.bool; @@ -26,15 +31,27 @@ in }; }; - config = { - dconf = { - enable = true; - settings = { + }; + config = mkIf cfg.enable { + home.packages = mkMerge [ + [ + pkgs.numix-icon-theme + pkgs.numix-icon-theme-square + ] + (mkIf cfg.extensions.paperwm [ pkgs.gnomeExtensions.paperwm ]) + (mkIf cfg.extensions.app-hider [ pkgs.gnomeExtensions.app-hider ]) + (mkIf cfg.extensions.dash-to-panel [ pkgs.gnomeExtensions.dash-to-panel ]) + ]; + + dconf = { + enable = true; + settings = mkMerge [ + { # We define the input sources to use the French layout with Mac keyboard variant. "org/gnome/desktop/input-sources" = { sources = [ - (mkTuple [ + (lib.hm.gvariant.mkTuple [ "xkb" "fr+mac" ]) @@ -44,6 +61,7 @@ in # We define the interface settings to use a teal accent color and prefer dark color scheme. "org/gnome/desktop/interface" = { accent-color = "teal"; + icon-theme = "Numix-Square"; color-scheme = "prefer-dark"; }; @@ -57,14 +75,14 @@ in disable-user-extensions = false; enabled-extensions = with pkgs.gnomeExtensions; - [ ] - + mk-if cfg.extensions.paperwm [ paperwm.extensionUuid ] - + mk-if cfg.extensions.app-hider [ app-hider.extensionUuid ] - + mk-if cfg.extensions.dash-to-panel [ dash-to-panel.extensionUuid ]; + mkMerge [ + (mkIf cfg.extensions.paperwm [ paperwm.extensionUuid ]) + (mkIf cfg.extensions.app-hider [ app-hider.extensionUuid ]) + (mkIf cfg.extensions.dash-to-panel [ dash-to-panel.extensionUuid ]) + ]; }; - } - + mkIf cfg.extensions.app-hider { + (mkIf cfg.extensions.app-hider { "org/gnome/shell/extensions/app-hider" = { hidden-apps = [ "nvim.desktop" @@ -73,8 +91,8 @@ in "nixos-manual.desktop" ]; }; - } - + mkIf cfg.extensions.dash-to-panel { + }) + (mkIf cfg.extensions.dash-to-panel { "org/gnome/shell/extensions/dash-to-panel" = { prefs-opened = false; isolate-monitors = true; @@ -97,8 +115,8 @@ in highlight-appicon-hover = true; hide-overview-on-startup = true; }; - } - + mkIf cfg.extensions.paperwm { + }) + (mkIf cfg.extensions.paperwm { "org/gnome/shell/extensions/paperwm" = { show-window-position-bar = false; show-workspace-indicator = false; @@ -117,8 +135,8 @@ in name = "Université"; index = 1; }; - }; - }; + }) + ]; }; }; } diff --git a/modules/system/nixos/networks/bluetooth.nix b/modules/system/nixos/networks/bluetooth.nix new file mode 100644 index 0000000..d4c4fdb --- /dev/null +++ b/modules/system/nixos/networks/bluetooth.nix @@ -0,0 +1,15 @@ +{ lib, config, ... }: +with lib; +let + cfg = config.os.bluetooth; +in +{ + options.os.bluetooth = { + enable = mkEnableOption "System networks manager service"; + }; + config = mkIf cfg.enable { + + hardware.bluetooth.enable = true; + + }; +} diff --git a/modules/system/nixos/networks/networking.nix b/modules/system/nixos/networks/networking.nix index 1d1a566..e437144 100644 --- a/modules/system/nixos/networks/networking.nix +++ b/modules/system/nixos/networks/networking.nix @@ -17,7 +17,5 @@ in openFirewall = true; }; - networking.networkmanager.enable = true; - }; } diff --git a/modules/system/nixos/shells/gnome.nix b/modules/system/nixos/shells/gnome.nix index 12b2a6a..1bd21d9 100644 --- a/modules/system/nixos/shells/gnome.nix +++ b/modules/system/nixos/shells/gnome.nix @@ -32,12 +32,13 @@ in systemPackages = with pkgs; - [ nautilus ] - ++ [ + [ + nautilus loupe papers simple-scan - ]; + ] + ++ (lib.optional config.os.flatpak.enable gnome-software); }; };