add quickshell

This commit is contained in:
lucy 2026-08-31 17:54:31 +02:00
commit a172869a4a
6 changed files with 79 additions and 5 deletions

View file

@ -29,7 +29,11 @@
specialArgs = { inherit inputs; }; specialArgs = { inherit inputs; };
modules = [ modules = [
./theme.nix ./theme.nix
{ config.theming.theme = "catppuccin-mocha"; } ({ pkgs, ... }: {
config.theming.theme = "catppuccin-mocha";
config.theming.font = "Iosevka";
config.theming.fontPackage = pkgs.iosevka;
})
base16.nixosModule base16.nixosModule
({ config, ... }: { scheme = "${config.theming.theme}"; }) ({ config, ... }: { scheme = "${config.theming.theme}"; })
./modules/hosts/nerv/configuration.nix ./modules/hosts/nerv/configuration.nix
@ -43,6 +47,7 @@
./modules/programs/emacs.nix ./modules/programs/emacs.nix
./modules/programs/niri.nix ./modules/programs/niri.nix
./modules/programs/foot.nix ./modules/programs/foot.nix
./modules/programs/quickshell.nix
]; ];
} }
]; ];

View file

@ -13,11 +13,29 @@ in
nixfmt nixfmt
clang clang
kdePackages.qtdeclarative kdePackages.qtdeclarative
fuzzel
]; ];
home.stateVersion = "26.05"; home.stateVersion = "26.05";
home.pointerCursor = {
enable = true;
name = "macOS";
package = pkgs.apple-cursor;
size = 24;
};
gtk = { gtk = {
enable = true; enable = true;
colorScheme = "dark"; colorScheme = "dark";
iconTheme = {
name = "Papirus-Dark";
package = pkgs.papirus-icon-theme;
};
font = {
name = config.theming.font;
package = config.theming.fontPackage;
size = 12;
};
cursorTheme.name = "macOS";
cursorTheme.size = 24;
gtk3.extraCss = '' gtk3.extraCss = ''
@define-color theme_bg_color ${c.base00}; @define-color theme_bg_color ${c.base00};
@define-color theme_fg_color ${c.base05}; @define-color theme_fg_color ${c.base05};
@ -58,5 +76,6 @@ in
@define-color success_color ${c.base0B}; @define-color success_color ${c.base0B};
''; '';
}; };
dconf.settings."org/gnome/desktop/interface".color-scheme = "prefer-dark";
}; };
} }

View file

@ -20,7 +20,10 @@
networking.networkmanager.enable = true; networking.networkmanager.enable = true;
# enable flakes # enable flakes
nix.settings.experimental-features = [ "nix-command" "flakes" ]; nix.settings.experimental-features = [
"nix-command"
"flakes"
];
# use proprietary nvidia drivers # use proprietary nvidia drivers
hardware.graphics.enable = true; hardware.graphics.enable = true;
@ -39,6 +42,10 @@
i18n.defaultLocale = "en_US.UTF-8"; i18n.defaultLocale = "en_US.UTF-8";
services.desktopManager.gnome.enable = true; services.desktopManager.gnome.enable = true;
services.displayManager.gdm.enable = true; services.displayManager.gdm.enable = true;
programs.niri = {
enable = true;
};
services.xserver.xkb.layout = "us"; services.xserver.xkb.layout = "us";
services.pipewire = { services.pipewire = {
enable = true; enable = true;
@ -62,6 +69,9 @@
git git
clang clang
]; ];
fonts.packages = [
config.theming.fontPackage
];
system.stateVersion = "26.05"; # Did you read the comment? system.stateVersion = "26.05"; # Did you read the comment?
} }

View file

@ -11,6 +11,10 @@ in
home-manager.users.lucy.programs.foot = { home-manager.users.lucy.programs.foot = {
enable = true; enable = true;
settings = { settings = {
main = {
font = "${config.theming.font}:size=12";
pad = "10x10";
};
colors-dark = { colors-dark = {
background = c.base00; background = c.base00;

View file

@ -0,0 +1,36 @@
{ pkgs, config, ... }:
let
c = config.scheme.withHashtag;
in
{
home-manager.users.lucy = {
programs.quickshell.enable = true;
programs.quickshell.systemd.enable = true;
xdg.configFile."quickshell/Colors.js" = {
enable = true;
text = ''
const colors = {
base00: "${c.base00}",
base01: "${c.base01}",
base02: "${c.base02}",
base03: "${c.base03}",
base04: "${c.base04}",
base05: "${c.base05}",
base06: "${c.base06}",
base07: "${c.base07}",
base08: "${c.base08}",
base09: "${c.base09}",
base0A: "${c.base0A}",
base0B: "${c.base0B}",
base0C: "${c.base0C}",
base0D: "${c.base0D}",
base0E: "${c.base0E}",
base0F: "${c.base0F}",
}
'';
force = true;
};
};
}

View file

@ -1,12 +1,12 @@
{ lib, inputs}: { { lib, inputs, ...}: {
options.theming.theme = lib.mkOption { options.theming.theme = lib.mkOption {
type = lib.types.str; type = lib.types.str;
apply = name: "${inputs.tt-schemes}/base16/${name}"; apply = name: "${inputs.tt-schemes}/base16/${name}.yaml";
}; };
options.theming.font = lib.mkOption { options.theming.font = lib.mkOption {
type = lib.types.str; type = lib.types.str;
}; };
options.theming.fontPackage = lib.mkOption { options.theming.fontPackage = lib.mkOption {
type = lib.types.pkgs; type = lib.types.package;
}; };
} }