forked from aylac.top/nixcfg
this repo has no description

add cosmic

aylac.top 27d987a4 95c09650

verified
Changed files
+120 -4
modules
home
desktop
nixos
desktop
+51
modules/home/desktop/cosmic/default.nix
···
+
{
+
lib,
+
config,
+
pkgs,
+
...
+
}: {
+
options.myHome.desktop.cosmic = {
+
enable = lib.mkEnableOption "COSMIC desktop environment";
+
};
+
+
config = lib.mkIf config.myHome.desktop.cosmic.enable {
+
dconf = {
+
enable = true;
+
+
settings = {
+
"org/gnome/desktop/wm/preferences".button-layout = "appmenu:close";
+
};
+
};
+
+
myHome.profiles.defaultApps = {
+
audioPlayer = {
+
package = lib.mkDefault config.programs.mpv.finalPackage;
+
icon = lib.mkDefault "mpv";
+
};
+
editor = {
+
package = lib.mkDefault pkgs.cosmic-edit;
+
icon = lib.mkDefault "com.system76.CosmicEdit";
+
};
+
fileManager = {
+
package = lib.mkDefault pkgs.cosmic-files;
+
icon = lib.mkDefault "com.system76.CosmicFiles";
+
};
+
imageViewer = {
+
package = lib.mkDefault pkgs.loupe;
+
icon = lib.mkDefault "org.gnome.Loupe";
+
};
+
pdfViewer = {
+
package = lib.mkDefault pkgs.papers;
+
icon = lib.mkDefault "org.gnome.Papers";
+
};
+
terminal = {
+
package = lib.mkDefault pkgs.cosmic-term;
+
icon = lib.mkDefault "com.system76.CosmicTerm";
+
};
+
videoPlayer = {
+
package = lib.mkDefault config.programs.mpv.finalPackage;
+
icon = lib.mkDefault "mpv";
+
};
+
};
+
};
+
}
+1
modules/home/desktop/default.nix
···
imports = [
./gnome
./plasma
+
./cosmic
];
options.myHome.desktop.enable = lib.mkOption {
+2
modules/home/desktop/gnome/default.nix
···
switch-to-workspace-up = [];
toggle-fullscreen = ["<Super>w"];
};
+
+
"org/gnome/desktop/wm/preferences".button-layout = "appmenu:close";
};
};
+42 -1
modules/home/desktop/plasma/default.nix
···
{
lib,
config,
+
pkgs,
...
}: {
options.myHome.desktop.plasma = {
enable = lib.mkEnableOption "KDE Plasma desktop environment";
};
-
config = lib.mkIf config.myHome.desktop.plasma.enable {};
+
config = lib.mkIf config.myHome.desktop.plasma.enable {
+
dconf = {
+
enable = true;
+
+
settings = {
+
"org/gnome/desktop/wm/preferences".button-layout = "appmenu:minimize,maximize,close";
+
};
+
};
+
+
myHome.profiles.defaultApps = {
+
audioPlayer = {
+
package = lib.mkDefault config.programs.mpv.finalPackage;
+
icon = lib.mkDefault "mpv";
+
};
+
editor = {
+
package = lib.mkDefault pkgs.kdePackages.kate;
+
icon = lib.mkDefault "org.kde.kate";
+
};
+
fileManager = {
+
package = lib.mkDefault pkgs.kdePackages.dolphin;
+
exec = lib.mkDefault (lib.getExe config.myHome.profiles.defaultApps.fileManager.package);
+
icon = lib.mkDefault "org.kde.dolphin";
+
};
+
imageViewer = {
+
package = lib.mkDefault pkgs.kdePackages.gwenview;
+
icon = lib.mkDefault "org.kde.gwenview";
+
};
+
pdfViewer = {
+
package = lib.mkDefault pkgs.kdePackages.okular;
+
icon = lib.mkDefault "org.kde.okular";
+
};
+
terminal = {
+
package = lib.mkDefault pkgs.kdePackages.konsole;
+
icon = lib.mkDefault "org.kde.konsole";
+
};
+
videoPlayer = {
+
package = lib.mkDefault config.programs.mpv.finalPackage;
+
icon = lib.mkDefault "mpv";
+
};
+
};
+
};
}
+19
modules/nixos/desktop/cosmic/default.nix
···
+
{
+
config,
+
lib,
+
...
+
}: {
+
options.myNixOS.desktop.cosmic.enable = lib.mkEnableOption "COSMIC desktop environment";
+
+
config = lib.mkIf config.myNixOS.desktop.cosmic.enable {
+
home-manager.sharedModules = [
+
{
+
config.myHome.desktop.cosmic.enable = true;
+
}
+
];
+
+
services.desktopManager.cosmic.enable = true;
+
system.nixos.tags = ["cosmic"];
+
myNixOS.desktop.enable = true;
+
};
+
}
+1
modules/nixos/desktop/default.nix
···
imports = [
./gnome
./plasma
+
./cosmic
];
options.myNixOS.desktop.enable = lib.mkOption {
+2 -3
modules/nixos/desktop/gnome/default.nix
···
];
};
-
myNixOS = {
-
desktop.enable = true;
-
};
+
myNixOS.desktop.enable = true;
+
system.nixos.tags = ["gnome"];
#qt = {
# enable = true;
+2
modules/nixos/desktop/plasma/default.nix
···
];
services.desktopManager.plasma6.enable = true;
+
system.nixos.tags = ["plasma"];
+
myNixOS.desktop.enable = true;
};
}