flake: refactor gnome and kde config inclusion
This commit is contained in:
parent
c07b2f920e
commit
52f5d725ea
6 changed files with 65 additions and 49 deletions
10
flake.nix
10
flake.nix
|
|
@ -103,12 +103,14 @@
|
||||||
common_modules = [
|
common_modules = [
|
||||||
{ nixpkgs.pkgs = pkgs; }
|
{ nixpkgs.pkgs = pkgs; }
|
||||||
./system/configuration.nix
|
./system/configuration.nix
|
||||||
{ login-manager.greetd.enable = desktop == "sway"; }
|
{
|
||||||
|
login-manager.greetd.enable = desktop == "sway";
|
||||||
|
my.gnome.enable = desktop == "gnome";
|
||||||
|
my.kde.enable = desktop == "kde";
|
||||||
|
}
|
||||||
|
|
||||||
{ home-manager.extraSpecialArgs = specialArgs; }
|
{ home-manager.extraSpecialArgs = specialArgs; }
|
||||||
]
|
];
|
||||||
++ lib.optional (desktop == "gnome") ./system/gnome.nix
|
|
||||||
++ lib.optional (desktop == "kde") ./system/kde.nix;
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
checks."${system}" = {
|
checks."${system}" = {
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,8 @@
|
||||||
./network.nix
|
./network.nix
|
||||||
./sops.nix
|
./sops.nix
|
||||||
./greetd.nix
|
./greetd.nix
|
||||||
|
./gnome.nix
|
||||||
|
./kde.nix
|
||||||
./home-manager.nix
|
./home-manager.nix
|
||||||
../settings
|
../settings
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,25 @@
|
||||||
{ pkgs, lib, ... }:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
options.my.gnome.enable = lib.mkEnableOption { };
|
||||||
|
|
||||||
|
config = lib.mkIf config.my.gnome.enable {
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
displayManager.gdm.enable = true;
|
||||||
desktopManager.gnome = {
|
desktopManager.gnome = {
|
||||||
enable = true;
|
enable = true;
|
||||||
# Enable VRR (Variable Refresh Rate)
|
# Enable VRR (Variable Refresh Rate)
|
||||||
extraGSettingsOverridePackages = with pkgs; [ gnome.mutter ];
|
extraGSettingsOverridePackages = with pkgs; [ mutter ];
|
||||||
extraGSettingsOverrides = ''
|
extraGSettingsOverrides = ''
|
||||||
[org.gnome.mutter]
|
[org.gnome.mutter]
|
||||||
experimental-features=['variable-refresh-rate', 'scale-monitor-framebuffer']
|
experimental-features=['variable-refresh-rate', 'scale-monitor-framebuffer']
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
displayManager.gdm.enable = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# Workaround for https://github.com/NixOS/nixpkgs/issues/103746
|
# Workaround for https://github.com/NixOS/nixpkgs/issues/103746
|
||||||
|
|
@ -32,16 +40,14 @@
|
||||||
|
|
||||||
programs.gpaste.enable = true;
|
programs.gpaste.enable = true;
|
||||||
|
|
||||||
# services.xserver.displayManager.autologin.user = "lelgenio";
|
environment.systemPackages = with pkgs; [
|
||||||
environment.systemPackages =
|
|
||||||
with pkgs;
|
|
||||||
with gnome;
|
|
||||||
[
|
|
||||||
gnome-tweaks
|
gnome-tweaks
|
||||||
dconf-editor
|
dconf-editor
|
||||||
|
|
||||||
chrome-gnome-shell
|
gnome-browser-connector
|
||||||
gnomeExtensions.quick-settings-audio-devices-hider
|
gnomeExtensions.quick-settings-audio-devices-hider
|
||||||
|
gnomeExtensions.user-themes
|
||||||
gnome-pass-search-provider
|
gnome-pass-search-provider
|
||||||
];
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,13 @@
|
||||||
{ config, pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
options.my.kde.enable = lib.mkEnableOption { };
|
||||||
|
|
||||||
|
config = lib.mkIf config.my.kde.enable {
|
||||||
# Enable the X11 windowing system.
|
# Enable the X11 windowing system.
|
||||||
services.xserver.enable = true;
|
services.xserver.enable = true;
|
||||||
# Enable the KDE Desktop Environment.
|
# Enable the KDE Desktop Environment.
|
||||||
|
|
@ -7,9 +15,5 @@
|
||||||
services.xserver.desktopManager.plasma5.enable = true;
|
services.xserver.desktopManager.plasma5.enable = true;
|
||||||
# services.xserver.displayManager.autologin.user = "lelgenio";
|
# services.xserver.displayManager.autologin.user = "lelgenio";
|
||||||
programs.dconf.enable = true;
|
programs.dconf.enable = true;
|
||||||
# environment.systemPackages = with pkgs;
|
};
|
||||||
# with gnome; [
|
|
||||||
# gnome-tweaks
|
|
||||||
# dconf-editor
|
|
||||||
# ];
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,5 +5,7 @@
|
||||||
android.enable = lib.mkEnableOption { };
|
android.enable = lib.mkEnableOption { };
|
||||||
media-packages.enable = lib.mkEnableOption { };
|
media-packages.enable = lib.mkEnableOption { };
|
||||||
containers.enable = lib.mkEnableOption { };
|
containers.enable = lib.mkEnableOption { };
|
||||||
|
gnome.enable = lib.mkEnableOption { };
|
||||||
|
kde.enable = lib.mkEnableOption { };
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,7 @@ lib.mkIf (config.my.desktop == "gnome") {
|
||||||
qt6Packages.qtstyleplugin-kvantum
|
qt6Packages.qtstyleplugin-kvantum
|
||||||
];
|
];
|
||||||
|
|
||||||
services.gpg-agent.pinentry.package = pkgs.pinentry-gnome;
|
services.gpg-agent.pinentry.package = lib.mkForce pkgs.pinentry-gnome3;
|
||||||
|
|
||||||
xdg.defaultApplications = {
|
xdg.defaultApplications = {
|
||||||
enable = lib.mkForce false;
|
enable = lib.mkForce false;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue