diff --git a/flake.lock b/flake.lock index 0cb5e01..76917fb 100644 --- a/flake.lock +++ b/flake.lock @@ -165,24 +165,6 @@ "type": "github" } }, - "flake-utils": { - "inputs": { - "systems": "systems_3" - }, - "locked": { - "lastModified": 1726560853, - "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, "git-hooks-nix": { "inputs": { "flake-compat": "flake-compat_3", @@ -353,14 +335,14 @@ "kitty-themes-src": "kitty-themes-src", "nixpkgs": "nixpkgs_3", "nixpkgs-lib": "nixpkgs-lib_3", - "systems": "systems_4" + "systems": "systems_3" }, "locked": { - "lastModified": 1729514200, - "narHash": "sha256-rrzFumYWlFwjUs1uSmsOgBzqWxDysaRbFj4Wh9paVLc=", + "lastModified": 1729607158, + "narHash": "sha256-H0cr8kohjo+fJIKIpcLZwtmRUGH01Gyld0ulhfqe/Rw=", "owner": "bertof", "repo": "nix-rice", - "rev": "9e5da4fa06a0c9a7300d70266660136cc08b81bf", + "rev": "2a4b7d31de444ab5d1f8623f41f0382c9e3eac33", "type": "github" }, "original": { @@ -577,7 +559,6 @@ "deploy-rs": "deploy-rs", "flake-compat": "flake-compat_2", "flake-parts": "flake-parts", - "flake-utils": "flake-utils", "git-hooks-nix": "git-hooks-nix", "home-manager": "home-manager_2", "home-manager-u": "home-manager-u", @@ -586,7 +567,7 @@ "nixos-hardware": "nixos-hardware", "nixpkgs": "nixpkgs_4", "nixpkgs-u": "nixpkgs-u", - "systems": "systems_5" + "systems": "systems_4" } }, "systems": { @@ -649,21 +630,6 @@ "type": "github" } }, - "systems_5": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, "utils": { "inputs": { "systems": "systems_2" diff --git a/flake.nix b/flake.nix index 40ca805..7a40c69 100644 --- a/flake.nix +++ b/flake.nix @@ -25,7 +25,6 @@ nixpkgs.follows = "nixpkgs"; }; }; - flake-utils.url = "github:numtide/flake-utils"; nix-rice.url = "github:bertof/nix-rice/modules"; nixos-generators = { url = "github:nix-community/nixos-generators"; @@ -53,15 +52,10 @@ ]; }; - basic_module = { nixpkgs = { config = nix-config; overlays = [ - # Nix rice - inputs.nix-rice.overlays.default - inputs.self.overlays.rice - # packages inputs.self.overlays.packages inputs.self.overlays.overrides @@ -97,6 +91,9 @@ # Nix configuration basic_module + inputs.nix-rice.modules.default + ./modules/nixos/rice.nix + # S3 cache read ./modules/nixos/s3_cache_read.nix @@ -137,10 +134,7 @@ ./modules/nixos/musa.nix ] ++ homeManagerUModules ++ [{ home-manager.users.bertof = import ./instances/odin/hm.nix; }]; - installerModules = commonModules ++ [ ./modules/nixos/installer.nix ]; - - in inputs.flake-parts.lib.mkFlake { inherit inputs; } { systems = import inputs.systems; @@ -152,8 +146,7 @@ inherit system; config = nix-config; overlays = [ - inputs.nix-rice.overlays.default - # inputs.self.overlays.rice.default + # inputs.nix-rice.overlays.default inputs.self.overlays.packages ]; }; @@ -224,8 +217,6 @@ overlays = { default = inputs.self.overlays.packages; - rice = import ./rice.nix; - packages = self: _super: { keyboard-switch = self.callPackage ./pkgs/keyboard-switch { }; sddm-sugar-dark = self.callPackage ./pkgs/sddm-sugar-dark { }; @@ -235,10 +226,9 @@ wl-update-background = self.callPackage ./pkgs/wl-update-background { }; }; - overrides = self: super: { + overrides = _self: super: { google-chrome = super.google-chrome.override { commandLineArgs = [ "--password-store=gnome" "--force-dark-mode" ]; }; sddm-theme-clairvoyance = super.sddm-theme-clairvoyance.override { wallpaper = ./wallpapers/background.jpg; }; - wl-lockscreen = super.wl-lockscreen.override { strPalette = self.lib.nix-rice.palette.toRgbaShortHex self.rice.colorPalette; font = self.rice.font.normal; }; }; # two-channels = (self: _: { @@ -253,191 +243,174 @@ # }); }; - nixosConfigurations = - { + nixosConfigurations = { + thor = inputs.nixpkgs-u.lib.nixosSystem { + system = "x86_64-linux"; + modules = commonModules ++ [ + ./instances/thor/hardware-configuration.nix + inputs.nixos-hardware.nixosModules.common-cpu-amd + inputs.nixos-hardware.nixosModules.common-pc-ssd + ./instances/thor/configuration.nix - thor = inputs.nixpkgs-u.lib.nixosSystem { - system = "x86_64-linux"; - modules = - commonModules - ++ [ - ./instances/thor/hardware-configuration.nix - inputs.nixos-hardware.nixosModules.common-cpu-amd - inputs.nixos-hardware.nixosModules.common-pc-ssd - ./instances/thor/configuration.nix + # S3 cache write + ./modules/nixos/s3_cache_write.nix - # S3 cache write - ./modules/nixos/s3_cache_write.nix + ./modules/nixos/pro_audio.nix + ./modules/nixos/kdeconnect.nix + ./modules/nixos/steam.nix - ./modules/nixos/pro_audio.nix - ./modules/nixos/kdeconnect.nix - ./modules/nixos/steam.nix - - ./modules/nixos/plymouth.nix - ./modules/nixos/hyprland.nix - { - home-manager.users.bertof.imports = [ - ./modules/hm/hyprland.nix - ./modules/hm/swayidle.nix - ]; - } - - ./modules/nixos/musa.nix - ] - ++ homeManagerUModules - ++ [{ home-manager.users.bertof = import ./instances/thor/hm.nix; }]; - }; - - odin-nvidia = inputs.nixpkgs-u.lib.nixosSystem { - system = "x86_64-linux"; - modules = commonModules ++ odinCommonModules ++ [ ./instances/odin/configuration-nvidia.nix ]; - }; - - odin = inputs.nixpkgs-u.lib.nixosSystem { - system = "x86_64-linux"; - modules = commonModules ++ odinCommonModules ++ [ ./instances/odin/configuration-intel.nix ]; - }; - - heimdall = inputs.nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - modules = - commonModules - ++ [ - inputs.nixos-hardware.nixosModules.common-cpu-amd - inputs.nixos-hardware.nixosModules.common-gpu-amd - inputs.nixos-hardware.nixosModules.common-pc-ssd - ./modules/nixos/server - - ./instances/heimdall/hardware-configuration.nix - ./instances/heimdall/configuration.nix - - ./modules/nixos/users/tiziano.nix - - ./modules/nixos/torrentbox.nix - ./modules/nixos/minio.nix - ./modules/nixos/rclone.nix - ./modules/nixos/nextcloud.nix - # ./modules/nixos/ntfy.nix - # S3 cache read - ./modules/nixos/s3_cache_read.nix - ] - ++ homeManagerModules - ++ [{ home-manager.users.bertof = import ./instances/heimdall/hm.nix; }]; - }; - - freya = inputs.nixpkgs.lib.nixosSystem { - system = "aarch64-linux"; - modules = - commonModules - ++ [ - inputs.nixos-hardware.nixosModules.raspberry-pi-4 - ( - { lib, ... }: - { - boot.supportedFilesystems = lib.mkForce [ - "btrfs" - "reiserfs" - "vfat" - "f2fs" - "xfs" - "ntfs" - "cifs" - ]; - } - ) - ./modules/nixos/server - - ./instances/freya/hardware-configuration.nix - ./instances/freya/configuration.nix - - ./modules/nixos/users/tiziano.nix - - ./modules/nixos/torrentbox.nix - ./modules/nixos/minio.nix - # ./modules/nixos/nextcloud.nix - ./modules/nixos/ntfy.nix - # S3 cache read - ./modules/nixos/s3_cache_read.nix - ] - ++ homeManagerModules - ++ [{ home-manager.users.bertof = import ./instances/freya/hm.nix; }]; - }; - - baldur = inputs.nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - modules = commonModules ++ [ - ./modules/nixos/server - ./instances/baldur/hardware-configuration.nix - ./instances/baldur/configuration.nix - # ./modules/nixos/digitalocean.nix - - ./modules/nixos/users/tiziano.nix - # S3 cache read - ./modules/nixos/s3_cache_read.nix - ] - # ++ homeManagerModules ++ [{ - # home-manager.users.bertof = import ./instances/baldur/hm.nix; - # home-manager.users.tiziano = import ./instances/baldur/hm_tiziano.nix; - # }] - ; - }; - - loki = inputs.nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - modules = - commonModules - ++ [ - ./modules/nixos/server - - inputs.nixos-hardware.nixosModules.common-cpu-intel - inputs.nixos-hardware.nixosModules.common-pc-ssd - ./instances/loki/hardware-configuration.nix - ./instances/loki/configuration.nix - - ./modules/nixos/users/tiziano.nix - # S3 cache read - ./modules/nixos/s3_cache_read.nix - ] - ++ homeManagerModules - ++ [ - { - home-manager.users.bertof = import ./instances/loki/hm.nix; - home-manager.users.tiziano = import ./instances/loki/hm_tiziano.nix; - } + ./modules/nixos/plymouth.nix + ./modules/nixos/hyprland.nix + { + home-manager.users.bertof.imports = [ + ./modules/hm/hyprland.nix + ./modules/hm/swayidle.nix ]; + } + + ./modules/nixos/musa.nix + ] ++ homeManagerUModules ++ [{ + home-manager.users.bertof = import ./instances/thor/hm.nix; + }]; + }; + + odin-nvidia = inputs.nixpkgs-u.lib.nixosSystem { + system = "x86_64-linux"; + modules = commonModules ++ odinCommonModules ++ [ ./instances/odin/configuration-nvidia.nix ]; + }; + + odin = inputs.nixpkgs-u.lib.nixosSystem { + system = "x86_64-linux"; + modules = commonModules ++ odinCommonModules ++ [ ./instances/odin/configuration-intel.nix ]; + }; + + heimdall = inputs.nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + modules = commonModules ++ [ + inputs.nixos-hardware.nixosModules.common-cpu-amd + inputs.nixos-hardware.nixosModules.common-gpu-amd + inputs.nixos-hardware.nixosModules.common-pc-ssd + ./modules/nixos/server + + ./instances/heimdall/hardware-configuration.nix + ./instances/heimdall/configuration.nix + + ./modules/nixos/users/tiziano.nix + + ./modules/nixos/torrentbox.nix + ./modules/nixos/minio.nix + ./modules/nixos/rclone.nix + ./modules/nixos/nextcloud.nix + # ./modules/nixos/ntfy.nix + # S3 cache read + ./modules/nixos/s3_cache_read.nix + ] ++ homeManagerModules ++ [{ + home-manager.users.bertof = import ./instances/heimdall/hm.nix; + }]; + }; + + freya = inputs.nixpkgs.lib.nixosSystem { + system = "aarch64-linux"; + modules = commonModules ++ [ + inputs.nixos-hardware.nixosModules.raspberry-pi-4 + ({ lib, ... }: { + boot.supportedFilesystems = lib.mkForce [ + "btrfs" + "reiserfs" + "vfat" + "f2fs" + "xfs" + "ntfs" + "cifs" + ]; + }) + ./modules/nixos/server + + ./instances/freya/hardware-configuration.nix + ./instances/freya/configuration.nix + + ./modules/nixos/users/tiziano.nix + + ./modules/nixos/torrentbox.nix + ./modules/nixos/minio.nix + # ./modules/nixos/nextcloud.nix + ./modules/nixos/ntfy.nix + # S3 cache read + ./modules/nixos/s3_cache_read.nix + ] ++ homeManagerModules ++ [{ + home-manager.users.bertof = import ./instances/freya/hm.nix; + }]; + }; + + baldur = inputs.nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + modules = commonModules ++ [ + ./modules/nixos/server + ./instances/baldur/hardware-configuration.nix + ./instances/baldur/configuration.nix + # ./modules/nixos/digitalocean.nix + + ./modules/nixos/users/tiziano.nix + # S3 cache read + ./modules/nixos/s3_cache_read.nix + ] + # ++ homeManagerModules ++ [{ + # home-manager.users.bertof = import ./instances/baldur/hm.nix; + # home-manager.users.tiziano = import ./instances/baldur/hm_tiziano.nix; + # }] + ; + }; + + loki = inputs.nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + modules = commonModules ++ [ + ./modules/nixos/server + + inputs.nixos-hardware.nixosModules.common-cpu-intel + inputs.nixos-hardware.nixosModules.common-pc-ssd + ./instances/loki/hardware-configuration.nix + ./instances/loki/configuration.nix + + ./modules/nixos/users/tiziano.nix + # S3 cache read + ./modules/nixos/s3_cache_read.nix + ] ++ homeManagerModules ++ [{ + home-manager.users.bertof = import ./instances/loki/hm.nix; + home-manager.users.tiziano = import ./instances/loki/hm_tiziano.nix; + }]; + }; + + # # Deploy-rs checks + # checks = builtins.mapAttrs (_system: deployLib: deployLib.deployChecks inputs.self.deploy) inputs.deploy-rs.lib; + + # Map nodes to Deploy-rs deployments + deploy.nodes = { + baldur = { + hostname = "baldur.bertof.net"; + profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.baldur; }; }; - - # # Deploy-rs checks - # checks = builtins.mapAttrs (_system: deployLib: deployLib.deployChecks inputs.self.deploy) inputs.deploy-rs.lib; - - # Map nodes to Deploy-rs deployments - deploy.nodes = { - baldur = { - hostname = "baldur.bertof.net"; - profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.baldur; }; - }; - freya = { - hostname = "freya.tsn"; - profiles.system = { user = "root"; path = inputs.deploy-rs.lib.aarch64-linux.activate.nixos inputs.self.nixosConfigurations.freya; }; - }; - heimdall = { - hostname = "heimdall.tsn"; - profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.heimdall; }; - }; - loki = { - hostname = "loki.tsn"; - profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.loki; }; - }; - odin = { - hostname = "odin.tsn"; - profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.odin; }; - }; - thor = { - hostname = "thor.tsn"; - profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.thor; }; - }; + freya = { + hostname = "freya.tsn"; + profiles.system = { user = "root"; path = inputs.deploy-rs.lib.aarch64-linux.activate.nixos inputs.self.nixosConfigurations.freya; }; + }; + heimdall = { + hostname = "heimdall.tsn"; + profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.heimdall; }; + }; + loki = { + hostname = "loki.tsn"; + profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.loki; }; + }; + odin = { + hostname = "odin.tsn"; + profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.odin; }; + }; + thor = { + hostname = "thor.tsn"; + profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.thor; }; }; }; + }; }; }; } diff --git a/modules/hm/alacritty.nix b/modules/hm/alacritty.nix index c114b33..690ec5e 100644 --- a/modules/hm/alacritty.nix +++ b/modules/hm/alacritty.nix @@ -1,8 +1,10 @@ -{ pkgs, ... }: +{ nixosConfig, ... }: +with nixosConfig.nix-rice.lib; let - strPalette = pkgs.lib.nix-rice.palette.toRgbHex rec { - inherit (pkgs.rice.colorPalette) normal bright primary; - dim = pkgs.rice.colorPalette.dark; + inherit (nixosConfig.nix-rice) rice; + strPalette = palette.toRgbHex rec { + inherit (rice.colorPalette) normal bright primary; + dim = rice.colorPalette.dark; cursor = { cursor = normal.white; text = normal.black; @@ -23,7 +25,7 @@ let in { # Include fonts packages - home.packages = [ pkgs.rice.font.monospace.package ]; + home.packages = [ rice.font.monospace.package ]; programs.alacritty = { enable = true; settings = { @@ -41,10 +43,10 @@ in }; scrolling.history = 3000; font = { - normal.family = pkgs.rice.font.monospace.name; - inherit (pkgs.rice.font.monospace) size; + normal.family = rice.font.monospace.name; + inherit (rice.font.monospace) size; }; - window.opacity = pkgs.rice.opacity; + window.opacity = rice.opacity; mouse = { # hide_when_typing = true; hints.modifiers = "Control"; diff --git a/modules/hm/cava.nix b/modules/hm/cava.nix index 6eeabe1..84d5e5e 100644 --- a/modules/hm/cava.nix +++ b/modules/hm/cava.nix @@ -1,6 +1,7 @@ -{ pkgs, lib, ... }: +{ pkgs, lib, nixosConfig, ... }: +with nixosConfig.nix-rice.lib; let - strPalette = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.colorPalette; + strPalette = palette.toRgbHex nixosConfig.nix-rice.rice.colorPalette; fmtString = str: "'${str}'"; in { diff --git a/modules/hm/dunst.nix b/modules/hm/dunst.nix index 8ab8975..3ef0523 100644 --- a/modules/hm/dunst.nix +++ b/modules/hm/dunst.nix @@ -1,26 +1,24 @@ -{ pkgs, ... }: +{ pkgs, nixosConfig, ... }: +with nixosConfig.nix-rice.lib; let - inherit (pkgs.lib) nix-rice; - strPalette = nix-rice.palette.toRGBHex pkgs.rice.colorPalette; + inherit (nixosConfig.nix-rice) rice; + strPalette = palette.toRGBHex rice.colorPalette; in { home.packages = builtins.attrValues { inherit (pkgs) dunst; - inherit (pkgs.rice.font.normal) package; + inherit (rice.font.normal) package; }; services.dunst = { enable = true; - iconTheme = { - package = pkgs.qogir-icon-theme; - name = "Qogir"; - }; + iconTheme = { package = pkgs.qogir-icon-theme; name = "Qogir"; }; settings = { global = { browser = "${pkgs.xdg-utils}/bin/xdg-open"; corner_radius = 10; dmenu = "${pkgs.rofi}/bin/rofi -dmenu -p dunst:"; follow = "keyboard"; - font = "${pkgs.rice.font.normal.name} 10"; + font = "${rice.font.normal.name} 10"; frame_color = strPalette.normal.blue; frame_width = 1; height = 320; @@ -28,7 +26,7 @@ in notification_limit = 10; offset = "7x7"; separator_color = strPalette.normal.blue; - transparency = 100 - nix-rice.float.round (pkgs.rice.opacity * 100); + transparency = 100 - nix-rice.float.round (rice.opacity * 100); width = "(0, 320)"; }; urgency_low = { diff --git a/modules/hm/gtk_theme.nix b/modules/hm/gtk_theme.nix index a57718d..d57eced 100644 --- a/modules/hm/gtk_theme.nix +++ b/modules/hm/gtk_theme.nix @@ -1,8 +1,8 @@ -{ pkgs, ... }: +{ pkgs, nixosConfig, ... }: { gtk = { enable = true; - font = pkgs.rice.font.normal; + font = nixosConfig.nix-rice.rice.font.normal; iconTheme = { package = pkgs.qogir-icon-theme; name = "Qogir-dark"; diff --git a/modules/hm/hyprland.nix b/modules/hm/hyprland.nix index 89576ca..4e0fb41 100644 --- a/modules/hm/hyprland.nix +++ b/modules/hm/hyprland.nix @@ -1,6 +1,9 @@ { nixosConfig, pkgs, ... }: +with nixosConfig.nix-rice.lib; +let + strPalette = palette.toRgbaShortHex nixosConfig.nix-rice.rice.colorPalette; +in { - imports = [ ./kitty.nix ./nautilus.nix @@ -50,259 +53,255 @@ }; xdg.configFile."hypr/hyprland.conf" = { - text = - let - strPalette = pkgs.lib.nix-rice.palette.toRgbaShortHex pkgs.rice.colorPalette; - in - '' - # - # Please note not all available settings / options are set here. - # For a full list, see the wiki - # + text = '' + # + # Please note not all available settings / options are set here. + # For a full list, see the wiki + # - # See https://wiki.hyprland.org/Configuring/Monitors/ - # monitor=name,resolution,position,scale - monitor=,preferred,auto,auto - monitor=Unknown-1,disable - ${ - if nixosConfig.networking.hostName == "thor" then - '' - monitor=DP-3,preferred,1080x420,auto - monitor=HDMI-A-1,preferred,0x0,auto,transform,3 - '' - else if nixosConfig.networking.hostName == "odin" then - '' - monitor=eDP-1,preferred,320x1440,1 - monitor=DP-1,preferred,0x0,1 - '' - else - "" + # See https://wiki.hyprland.org/Configuring/Monitors/ + # monitor=name,resolution,position,scale + monitor=,preferred,auto,auto + monitor=Unknown-1,disable + ${ + if nixosConfig.networking.hostName == "thor" then + '' + monitor=DP-3,preferred,1080x420,auto + monitor=HDMI-A-1,preferred,0x0,auto,transform,3 + '' + else if nixosConfig.networking.hostName == "odin" then + '' + monitor=eDP-1,preferred,320x1440,1 + monitor=DP-1,preferred,0x0,1 + '' + else + "" + } + + + # See https://wiki.hyprland.org/Configuring/Keywords/ for more + + # Execute your favorite apps at launch + exec-once = ${ + if nixosConfig.networking.hostName == "thor" then "xrandr --output DP-2 --primary" else "true" + } & swww init & nm-applet & blueman-applet & systemctl --user start hyprland-login.target + + # Source a file (multi-file configs) + # source = ~/.config/hypr/myColors.conf + + # Some default env vars. + env = XCURSOR_SIZE,24 + + # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ + input { + kb_layout = ${if nixosConfig.networking.hostName == "thor" then "us,it,us" else "it,us,us"} + kb_variant = ,,colemak + kb_model = + kb_options = grp:menu_toggle,compose:rctrl + kb_rules = + numlock_by_default = true + + follow_mouse = 2 + + touchpad { + natural_scroll = yes + } + + sensitivity = 0 # -1.0 - 1.0, 0 means no modification. + } + + $LAPTOP_KEYBOARD_ENABLED = true + device { + name = at-translated-set-2-keyboard + enabled = $LAPTOP_KEYBOARD_ENABLED + } + + device { + name=keychron-k1-max-keyboard + kb_layout=us + } + + device { + name=keychron-k1-max-keyboard-2 + kb_layout=us + } + + general { + # See https://wiki.hyprland.org/Configuring/Variables/ for more + + gaps_in = 1 + gaps_out = 2 + border_size = 2 + col.active_border = rgba(${strPalette.normal.yellow}) rgba(${strPalette.normal.red}) 45deg + col.inactive_border = rgba(${strPalette.bright.black}) + + layout = dwindle } + misc { + disable_hyprland_logo = true + } - # See https://wiki.hyprland.org/Configuring/Keywords/ for more + decoration { + # See https://wiki.hyprland.org/Configuring/Variables/ for more - # Execute your favorite apps at launch - exec-once = ${ - if nixosConfig.networking.hostName == "thor" then "xrandr --output DP-2 --primary" else "true" - } & swww init & nm-applet & blueman-applet & systemctl --user start hyprland-login.target + rounding = 10 - # Source a file (multi-file configs) - # source = ~/.config/hypr/myColors.conf - - # Some default env vars. - env = XCURSOR_SIZE,24 - - # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ - input { - kb_layout = ${if nixosConfig.networking.hostName == "thor" then "us,it,us" else "it,us,us"} - kb_variant = ,,colemak - kb_model = - kb_options = grp:menu_toggle,compose:rctrl - kb_rules = - numlock_by_default = true - - follow_mouse = 2 - - touchpad { - natural_scroll = yes - } - - sensitivity = 0 # -1.0 - 1.0, 0 means no modification. - } - - $LAPTOP_KEYBOARD_ENABLED = true - device { - name = at-translated-set-2-keyboard - enabled = $LAPTOP_KEYBOARD_ENABLED - } - - device { - name=keychron-k1-max-keyboard - kb_layout=us - } - - device { - name=keychron-k1-max-keyboard-2 - kb_layout=us - } - - general { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - - gaps_in = 1 - gaps_out = 2 - border_size = 2 - col.active_border = rgba(${strPalette.normal.yellow}) rgba(${strPalette.normal.red}) 45deg - col.inactive_border = rgba(${strPalette.bright.black}) - - layout = dwindle + blur { + enabled = true + size = 3 + passes = 1 + new_optimizations = true } - misc { - disable_hyprland_logo = true - } + drop_shadow = yes + shadow_range = 4 + shadow_render_power = 3 + col.shadow = rgba(1a1a1aee) + } - decoration { - # See https://wiki.hyprland.org/Configuring/Variables/ for more + animations { + enabled = yes - rounding = 10 + # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more - blur { - enabled = true - size = 3 - passes = 1 - new_optimizations = true - } + bezier = myBezier, 0.05, 0.9, 0.1, 1.05 - drop_shadow = yes - shadow_range = 4 - shadow_render_power = 3 - col.shadow = rgba(1a1a1aee) - } + animation = windows, 1, 7, myBezier + animation = windowsOut, 1, 7, default, popin 80% + animation = border, 1, 10, default + animation = borderangle, 1, 8, default + animation = fade, 1, 7, default + animation = workspaces, 1, 6, default + } - animations { - enabled = yes + dwindle { + # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more + pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below + preserve_split = yes # you probably want this + } - # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more + master { + # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more + new_status = master + } - bezier = myBezier, 0.05, 0.9, 0.1, 1.05 + gestures { + # See https://wiki.hyprland.org/Configuring/Variables/ for more + workspace_swipe = true + } - animation = windows, 1, 7, myBezier - animation = windowsOut, 1, 7, default, popin 80% - animation = border, 1, 10, default - animation = borderangle, 1, 8, default - animation = fade, 1, 7, default - animation = workspaces, 1, 6, default - } + # Example per-device config + # See https://wiki.hyprland.org/Configuring/Keywords/#executing for more + # device:epic-mouse-v1 { + # sensitivity = -0.5 + # } - dwindle { - # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more - pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below - preserve_split = yes # you probably want this - } - - master { - # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more - new_status = master - } - - gestures { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - workspace_swipe = true - } - - # Example per-device config - # See https://wiki.hyprland.org/Configuring/Keywords/#executing for more - # device:epic-mouse-v1 { - # sensitivity = -0.5 - # } - - # Example windowrule v1 - # windowrule = float, ^(kitty)$ - # Example windowrule v2 - # windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ - # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more + # Example windowrule v1 + # windowrule = float, ^(kitty)$ + # Example windowrule v2 + # windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ + # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more - # See https://wiki.hyprland.org/Configuring/Keywords/ for more - # $mainMod = SUPER + # See https://wiki.hyprland.org/Configuring/Keywords/ for more + # $mainMod = SUPER - # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more - bind = SUPER, RETURN, exec, kitty - bind = SUPER, W, killactive, - bind = SUPER, M, exec, wl-lockscreen - bind = SUPER_ALT_L, Q, exit, - bind = SUPER, E, exec, nautilus - bind = SUPER, L, exec, env -u WAYLAND_DISPLAY logseq - bind = SUPER_SHIFT, E, exec, nemo - bind = SUPER, V, togglefloating, - bind = SUPER, SPACE, exec, sirula - bind = SUPER, F, fullscreen, - bind = SUPER, P, pseudo, # dwindle - bind = SUPER, J, togglesplit, # dwindle - bind = SUPER ALT, E, exec, wofi-emoji - bind = SUPER ALT, P, exec, wl-clipedit - bind = SUPER, B, exec, wl-update-background - bind = ,Print, exec, grimblast copy - bind = SHIFT, Print, exec, grimblast copy area + # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more + bind = SUPER, RETURN, exec, kitty + bind = SUPER, W, killactive, + bind = SUPER, M, exec, wl-lockscreen + bind = SUPER_ALT_L, Q, exit, + bind = SUPER, E, exec, nautilus + bind = SUPER, L, exec, env -u WAYLAND_DISPLAY logseq + bind = SUPER_SHIFT, E, exec, nemo + bind = SUPER, V, togglefloating, + bind = SUPER, SPACE, exec, sirula + bind = SUPER, F, fullscreen, + bind = SUPER, P, pseudo, # dwindle + bind = SUPER, J, togglesplit, # dwindle + bind = SUPER ALT, E, exec, wofi-emoji + bind = SUPER ALT, P, exec, wl-clipedit + bind = SUPER, B, exec, wl-update-background + bind = ,Print, exec, grimblast copy + bind = SHIFT, Print, exec, grimblast copy area - # Move focus to relative position - bind = SUPER, left, movefocus, l - bind = SUPER, right, movefocus, r - bind = SUPER, up, movefocus, u - bind = SUPER, down, movefocus, d + # Move focus to relative position + bind = SUPER, left, movefocus, l + bind = SUPER, right, movefocus, r + bind = SUPER, up, movefocus, u + bind = SUPER, down, movefocus, d - # Move window to relative position - bind = SUPER_SHIFT, left, movewindow, l - bind = SUPER_SHIFT, right, movewindow, r - bind = SUPER_SHIFT, up, movewindow, u - bind = SUPER_SHIFT, down, movewindow, d + # Move window to relative position + bind = SUPER_SHIFT, left, movewindow, l + bind = SUPER_SHIFT, right, movewindow, r + bind = SUPER_SHIFT, up, movewindow, u + bind = SUPER_SHIFT, down, movewindow, d - # Switch workspaces with mainMod + [0-9] - bind = SUPER, 1, workspace, 1 - bind = SUPER, 2, workspace, 2 - bind = SUPER, 3, workspace, 3 - bind = SUPER, 4, workspace, 4 - bind = SUPER, 5, workspace, 5 - bind = SUPER, 6, workspace, 6 - bind = SUPER, 7, workspace, 7 - bind = SUPER, 8, workspace, 8 - bind = SUPER, 9, workspace, 9 - bind = SUPER, 0, workspace, 10 + # Switch workspaces with mainMod + [0-9] + bind = SUPER, 1, workspace, 1 + bind = SUPER, 2, workspace, 2 + bind = SUPER, 3, workspace, 3 + bind = SUPER, 4, workspace, 4 + bind = SUPER, 5, workspace, 5 + bind = SUPER, 6, workspace, 6 + bind = SUPER, 7, workspace, 7 + bind = SUPER, 8, workspace, 8 + bind = SUPER, 9, workspace, 9 + bind = SUPER, 0, workspace, 10 - # Move active window to a workspace with mainMod + SHIFT + [0-9] - bind = SUPER SHIFT, 1, movetoworkspace, 1 - bind = SUPER SHIFT, 2, movetoworkspace, 2 - bind = SUPER SHIFT, 3, movetoworkspace, 3 - bind = SUPER SHIFT, 4, movetoworkspace, 4 - bind = SUPER SHIFT, 5, movetoworkspace, 5 - bind = SUPER SHIFT, 6, movetoworkspace, 6 - bind = SUPER SHIFT, 7, movetoworkspace, 7 - bind = SUPER SHIFT, 8, movetoworkspace, 8 - bind = SUPER SHIFT, 9, movetoworkspace, 9 - bind = SUPER SHIFT, 0, movetoworkspace, 10 + # Move active window to a workspace with mainMod + SHIFT + [0-9] + bind = SUPER SHIFT, 1, movetoworkspace, 1 + bind = SUPER SHIFT, 2, movetoworkspace, 2 + bind = SUPER SHIFT, 3, movetoworkspace, 3 + bind = SUPER SHIFT, 4, movetoworkspace, 4 + bind = SUPER SHIFT, 5, movetoworkspace, 5 + bind = SUPER SHIFT, 6, movetoworkspace, 6 + bind = SUPER SHIFT, 7, movetoworkspace, 7 + bind = SUPER SHIFT, 8, movetoworkspace, 8 + bind = SUPER SHIFT, 9, movetoworkspace, 9 + bind = SUPER SHIFT, 0, movetoworkspace, 10 - # Move workspace to monitor with mainMod + SHIFT + CTRL + [0-9] - bind = SUPER SHIFT CTRL, 1, movecurrentworkspacetomonitor, 0 - bind = SUPER SHIFT CTRL, 2, movecurrentworkspacetomonitor, 1 - bind = SUPER SHIFT CTRL, 3, movecurrentworkspacetomonitor, 2 - bind = SUPER SHIFT CTRL, 4, movecurrentworkspacetomonitor, 3 - bind = SUPER SHIFT CTRL, 5, movecurrentworkspacetomonitor, 4 - bind = SUPER SHIFT CTRL, 6, movecurrentworkspacetomonitor, 5 - bind = SUPER SHIFT CTRL, 7, movecurrentworkspacetomonitor, 6 - bind = SUPER SHIFT CTRL, 8, movecurrentworkspacetomonitor, 7 - bind = SUPER SHIFT CTRL, 9, movecurrentworkspacetomonitor, 8 - bind = SUPER SHIFT CTRL, 0, movecurrentworkspacetomonitor, 9 + # Move workspace to monitor with mainMod + SHIFT + CTRL + [0-9] + bind = SUPER SHIFT CTRL, 1, movecurrentworkspacetomonitor, 0 + bind = SUPER SHIFT CTRL, 2, movecurrentworkspacetomonitor, 1 + bind = SUPER SHIFT CTRL, 3, movecurrentworkspacetomonitor, 2 + bind = SUPER SHIFT CTRL, 4, movecurrentworkspacetomonitor, 3 + bind = SUPER SHIFT CTRL, 5, movecurrentworkspacetomonitor, 4 + bind = SUPER SHIFT CTRL, 6, movecurrentworkspacetomonitor, 5 + bind = SUPER SHIFT CTRL, 7, movecurrentworkspacetomonitor, 6 + bind = SUPER SHIFT CTRL, 8, movecurrentworkspacetomonitor, 7 + bind = SUPER SHIFT CTRL, 9, movecurrentworkspacetomonitor, 8 + bind = SUPER SHIFT CTRL, 0, movecurrentworkspacetomonitor, 9 - bind = ALT, Tab, cyclenext - bind = ALT SHIFT, Tab, cyclenext, prev + bind = ALT, Tab, cyclenext + bind = ALT SHIFT, Tab, cyclenext, prev - # Scroll through existing workspaces with mainMod + scroll - bind = SUPER, mouse_down, workspace, e+1 - bind = SUPER, mouse_up, workspace, e-1 + # Scroll through existing workspaces with mainMod + scroll + bind = SUPER, mouse_down, workspace, e+1 + bind = SUPER, mouse_up, workspace, e-1 - # Move/resize windows with mainMod + LMB/RMB and dragging - bindm = SUPER, mouse:272, movewindow - bindm = SUPER, mouse:273, resizewindow + # Move/resize windows with mainMod + LMB/RMB and dragging + bindm = SUPER, mouse:272, movewindow + bindm = SUPER, mouse:273, resizewindow - bindel=, XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%+ - bindel=, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%- - bindl=, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle - bind = SUPER ALT, M, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle + bindel=, XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%+ + bindel=, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%- + bindl=, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle + bind = SUPER ALT, M, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle - bind = , XF86AudioNext, exec, playerctl next - bind = , XF86AudioPlay, exec, playerctl play-pause - bind = , XF86AudioPrev, exec, playerctl previous - bind = SUPER ALT, Right, exec, playerctl next - bind = SUPER ALT, Down, exec, playerctl play-pause - bind = SUPER ALT, Left, exec, playerctl previous + bind = , XF86AudioNext, exec, playerctl next + bind = , XF86AudioPlay, exec, playerctl play-pause + bind = , XF86AudioPrev, exec, playerctl previous + bind = SUPER ALT, Right, exec, playerctl next + bind = SUPER ALT, Down, exec, playerctl play-pause + bind = SUPER ALT, Left, exec, playerctl previous - bind = , XF86PowerOff, exec, wlogout + bind = , XF86PowerOff, exec, wlogout - bind = , XF86MonBrightnessUp, exec, brillo -A 10 - bind = , XF86MonBrightnessDown, exec, brillo -U 10 - ''; + bind = , XF86MonBrightnessUp, exec, brillo -A 10 + bind = , XF86MonBrightnessDown, exec, brillo -U 10 + ''; }; } diff --git a/modules/hm/kakoune.nix b/modules/hm/kakoune.nix index 1e60bb8..bdc9372 100644 --- a/modules/hm/kakoune.nix +++ b/modules/hm/kakoune.nix @@ -1,5 +1,7 @@ -{ pkgs, ... }: +{ pkgs, nixosConfig, ... }: +with nixosConfig.nix-rice.lib; let + inherit (nixosConfig.nix-rice) rice; themeBuilder = palette: with palette; '' set-face global value rgb:${normal.magenta},default @@ -275,7 +277,7 @@ in # THEME FILE xdg.configFile."kak/colors/nord.kak".text = themeBuilder ( - pkgs.lib.nix-rice.palette.toRgbShortHex pkgs.rice.colorPalette + palette.toRgbShortHex rice.colorPalette ); xdg.configFile."kak-lsp/kak-lsp.toml".text = '' diff --git a/modules/hm/kitty.nix b/modules/hm/kitty.nix index 739a98b..a79fcad 100644 --- a/modules/hm/kitty.nix +++ b/modules/hm/kitty.nix @@ -1,7 +1,9 @@ -{ pkgs, ... }: +{ nixosConfig, ... }: +with nixosConfig.nix-rice.lib; let - strPalette = pkgs.lib.nix-rice.palette.toRgbHex { - inherit (pkgs.rice.colorPalette) + inherit (nixosConfig.nix-rice) rice; + strPalette = palette.toRgbHex { + inherit (rice.colorPalette) background foreground color0 @@ -31,7 +33,7 @@ in enable_audio_bell = false; visual_bell_duration = toString 0.1; update_check_interval = 0; - background_opacity = toString pkgs.rice.opacity; + background_opacity = toString rice.opacity; close_on_child_death = "yes"; clipboard_control = "write-clipboard write-primary read-clipboard read-primary"; disable_ligatures = "never"; @@ -44,6 +46,6 @@ in "ctrl+shift+up" = "previous_window"; "ctrl+shift+down" = "next_window"; }; - font = pkgs.rice.font.monospace; + font = rice.font.monospace; }; } diff --git a/modules/hm/mangohud.nix b/modules/hm/mangohud.nix index 463f75f..ac5e332 100644 --- a/modules/hm/mangohud.nix +++ b/modules/hm/mangohud.nix @@ -1,6 +1,8 @@ -{ pkgs, ... }: +{ nixosConfig, ... }: +with nixosConfig.nix-rice.lib; let - strPalette = pkgs.lib.nix-rice.palette.toRgbShortHex pkgs.rice.colorPalette; + inherit (nixosConfig.nix-rice) rice; + strPalette = palette.toRgbShortHex rice.colorPalette; in { programs.mangohud = { diff --git a/modules/hm/polybar.nix b/modules/hm/polybar.nix index 93d76d7..6457985 100644 --- a/modules/hm/polybar.nix +++ b/modules/hm/polybar.nix @@ -4,9 +4,9 @@ , lib , ... }: +with nixosConfig.nix-rice.lib; let - inherit (pkgs.rice) colorPalette opacity; - inherit (pkgs.lib) nix-rice; + inherit (nixosConfig.nix-rice.rice) colorPalette opacity; alpha = 255 * opacity; grep = "${pkgs.gnugrep}/bin/grep"; cut = "${pkgs.coreutils}/bin/cut"; @@ -62,27 +62,27 @@ let }" zsh -c 'rofi -show menu -modi "menu:rofi-power-menu --choices=shutdown/reboot/hibernate/logout"' ''; - colors = nix-rice.palette.toARGBHex rec { + colors = palette.toARGBHex rec { normal = { - foreground = nix-rice.color.darken 10 colorPalette.foreground; - background = nix-rice.color.setAlphaRgba alpha colorPalette.background; + foreground = color.darken 10 colorPalette.foreground; + background = color.setAlphaRgba alpha colorPalette.background; underline = colorPalette.normal.blue; }; active = { inherit (colorPalette) foreground; - background = nix-rice.color.setAlphaRgba alpha colorPalette.background; + background = color.setAlphaRgba alpha colorPalette.background; underline = colorPalette.normal.yellow; }; selected = { inherit (colorPalette) foreground; - background = nix-rice.color.setAlphaRgba alpha colorPalette.background; + background = color.setAlphaRgba alpha colorPalette.background; underline = colorPalette.bright.red; }; inherit (colorPalette.normal) green red yellow; - inherit (nix-rice.color) transparent; + inherit (color) transparent; orange = colorPalette.bright.red; alert = orange; }; @@ -110,29 +110,22 @@ let bottom.size = 0; }; font = [ - "${pkgs.rice.font.monospace.name}:size=${toString pkgs.rice.font.monospace.size};2" + "${rice.font.monospace.name}:size=${toString rice.font.monospace.size};2" # "Font Awesome 6 Free:size=14;0" # "Noto Color Emoji:size=2;2" - "Noto Sans Symbols2:size=${toString pkgs.rice.font.monospace.size};2" - "Material Design Icons:size=${toString pkgs.rice.font.monospace.size};2" - # "EmojiOne Color:size=${toString pkgs.rice.font.monospace.size};0" - "Noto Sans CJK JP:size=${toString pkgs.rice.font.monospace.size};0" - "Noto Sans CJK KR:size=${toString pkgs.rice.font.monospace.size};0" - "Noto Sans CJK CN:size=${toString pkgs.rice.font.monospace.size};0" - "Noto Sans CJK HK:size=${toString pkgs.rice.font.monospace.size};0" + "Noto Sans Symbols2:size=${toString rice.font.monospace.size};2" + "Material Design Icons:size=${toString rice.font.monospace.size};2" + # "EmojiOne Color:size=${toString rice.font.monospace.size};0" + "Noto Sans CJK JP:size=${toString rice.font.monospace.size};0" + "Noto Sans CJK KR:size=${toString rice.font.monospace.size};0" + "Noto Sans CJK CN:size=${toString rice.font.monospace.size};0" + "Noto Sans CJK HK:size=${toString rice.font.monospace.size};0" ]; enable-ipc = true; wm-restack = "bspwm"; }; - ramp = [ - "▂" - "▃" - "▄" - "▅" - "▆" - "▇" - ]; + ramp = [ "▂" "▃" "▄" "▅" "▆" "▇" ]; in { home.packages = builtins.attrValues { @@ -140,7 +133,7 @@ in # emojione # noto-fonts-emoji # font-awesome - inherit (pkgs.rice.font.monospace) package; + inherit (rice.font.monospace) package; }; services.polybar = { enable = true; diff --git a/modules/hm/rofi.nix b/modules/hm/rofi.nix index 661ba85..90bf15c 100644 --- a/modules/hm/rofi.nix +++ b/modules/hm/rofi.nix @@ -1,4 +1,8 @@ -{ pkgs, ... }: +{ pkgs, nixosConfig, ... }: +with nixosConfig.nix-rice.lib; +let + inherit (nixosConfig.nix-rice) rice; +in { home.packages = builtins.attrValues { @@ -14,7 +18,7 @@ programs.rofi = { enable = true; location = "center"; - font = "${pkgs.rice.font.monospace.name} ${toString pkgs.rice.font.monospace.size}"; + font = "${rice.font.monospace.name} ${toString rice.font.monospace.size}"; plugins = [ pkgs.rofi-calc ]; extraConfig = { modi = "drun,run,ssh,window,calc"; diff --git a/modules/hm/terminator.nix b/modules/hm/terminator.nix index d0dd672..c142741 100644 --- a/modules/hm/terminator.nix +++ b/modules/hm/terminator.nix @@ -1,11 +1,13 @@ -{ pkgs, ... }: +{ pkgs, nixosConfig, ... }: +with nixosConfig.nix-rice.lib; let - strPalette = pkgs.lib.nix-rice.palette.toRgbHex { - inherit (pkgs.rice.colorPalette) normal bright dark; - inherit (pkgs.rice.colorPalette.primary) background foreground; + inherit (nixosConfig.nix-rice) rice; + strPalette = palette.toRgbHex { + inherit (rice.colorPalette) normal bright dark; + inherit (rice.colorPalette.primary) background foreground; }; - opacity = toString pkgs.rice.opacity; - font = pkgs.rice.font.monospace; + opacity = toString rice.opacity; + font = rice.font.monospace; colorString = normal: bright: builtins.concatStringsSep ":" [ diff --git a/modules/hm/twmn.nix b/modules/hm/twmn.nix index bdd24e7..8051407 100644 --- a/modules/hm/twmn.nix +++ b/modules/hm/twmn.nix @@ -1,7 +1,9 @@ -{ pkgs, ... }: +{ nixosConfig, ... }: +with nixosConfig.nix-rice.lib; let - strPalette = pkgs.lib.nix-rice.palette.toRGBHex pkgs.rice.colorPalette; - font = pkgs.rice.font.normal; + inherit (nixosConfig.nix-rice) rice; + strPalette = palette.toRGBHex rice.colorPalette; + font = rice.font.normal; in { services.twmn = { @@ -17,7 +19,7 @@ in animation.bounce.enable = false; color = strPalette.primary.background; height = 32; - opacity = pkgs.lib.nix-rice.float.round (pkgs.rice.opacity * 100); + opacity = float.round (rice.opacity * 100); offset = { x = -20; y = 50; diff --git a/modules/hm/waybar.nix b/modules/hm/waybar.nix index 3ddf660..fbeb320 100644 --- a/modules/hm/waybar.nix +++ b/modules/hm/waybar.nix @@ -1,17 +1,17 @@ -{ pkgs, ... }: +{ pkgs, nixosConfig, ... }: +with nixosConfig.nix-rice.lib; let - inherit (pkgs.rice) colorPalette; - inherit (pkgs.lib) nix-rice; + inherit (nixosConfig.nix-rice.rice) colorPalette font; alpha = 0.9; - custom = nix-rice.palette.toRGBHex { + custom = palette.toRGBHex { inherit (colorPalette.primary) background foreground; - alpha_background = nix-rice.color.setAlphaRgba alpha colorPalette.primary.background; + alpha_background = color.setAlphaRgba alpha colorPalette.primary.background; primary_accent = colorPalette.normal.blue; secondary_accent = colorPalette.normal.cyan; tertiary_accent = colorPalette.primary.yellow; palette = { primary_background_rgba = colorPalette.primary.background; - tertiary_background_hex = nix-rice.color.setAlphaRgba alpha colorPalette.primary.background; + tertiary_background_hex = color.setAlphaRgba alpha colorPalette.primary.background; }; }; swaync-client = "${pkgs.swaynotificationcenter}/bin/swaync-client"; @@ -184,7 +184,7 @@ in * { border: none; border-radius: 0px; - font-family: ${pkgs.rice.font.monospace.name}; + font-family: ${font.monospace.name}; font-size: 10px; min-height: 0; } diff --git a/modules/hm/xresources.nix b/modules/hm/xresources.nix index f7aae2b..7228a96 100644 --- a/modules/hm/xresources.nix +++ b/modules/hm/xresources.nix @@ -1,8 +1,8 @@ -{ pkgs, ... }: +{ pkgs, nixosConfig, ... }: +with nixosConfig.nix-rice.lib; let - strPalette = pkgs.lib.nix-rice.palette.toRgbHex { - inherit (pkgs.rice.colorPalette) normal bright primary; - }; + inherit (nixosConfig.nix-rice) rice; + strPalette = palette.toRgbHex rice.colorPalette; in { home.file.".Xresources" = { @@ -30,8 +30,8 @@ in *.color14: ${strPalette.bright.cyan} *.color15: ${strPalette.bright.white} - xterm*faceName: ${pkgs.rice.font.monospace.name} - xterm*faceSize: ${toString pkgs.rice.font.monospace.size} + xterm*faceName: ${rice.font.monospace.name} + xterm*faceSize: ${toString rice.font.monospace.size} ''; onChange = "${pkgs.xorg.xrdb}/bin/xrdb -merge ~/.Xresources "; }; diff --git a/modules/hm/zathura.nix b/modules/hm/zathura.nix index 363156c..8d10774 100644 --- a/modules/hm/zathura.nix +++ b/modules/hm/zathura.nix @@ -1,6 +1,8 @@ -{ pkgs, ... }: +{ nixosConfig, ... }: +with nixosConfig.nix-rice.lib; let - strPalette = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.colorPalette; + inherit (nixosConfig.nix-rice) rice; + strPalette = palette.toRgbHex rice.colorPalette; in { programs.zathura = { @@ -11,7 +13,7 @@ in options = { # completion-bg = strPalette.bright.black; # default-bg = strPalette.normal.black; - font = "${pkgs.rice.font.normal.name} 10"; + font = "${rice.font.normal.name} 10"; # inputbar-bg = strPalette.bright.black; # inputbar-fg = strPalette.normal.cyan; page-padding = 10; @@ -59,6 +61,5 @@ in # recolor = true; recolor-keephue = true; # keep original color }; - }; } diff --git a/modules/hm/zellij.nix b/modules/hm/zellij.nix index de242d5..72919ae 100644 --- a/modules/hm/zellij.nix +++ b/modules/hm/zellij.nix @@ -1,6 +1,7 @@ -{ pkgs, ... }: +{ nixosConfig, ... }: +with nixosConfig.nix-rice.lib; let - strPalette = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.colorPalette; + strPalette = palette.toRgbHex nixosConfig.nix-rice.rice.colorPalette; in { programs.zellij.enable = true; diff --git a/rice.nix b/modules/nixos/rice.nix similarity index 71% rename from rice.nix rename to modules/nixos/rice.nix index a487a9a..572fefc 100644 --- a/rice.nix +++ b/modules/nixos/rice.nix @@ -1,10 +1,11 @@ -self: super: -with super.lib.nix-rice; +{ pkgs, config, ... }: +with config.nix-rice.lib; let theme = kitty-themes.getThemeByName "Nightfox"; + inherit (config.nix-rice) rice; in { - rice = { + nix-rice.config = { colorPalette = rec { normal = palette.defaultPalette // { black = theme.color0; @@ -36,17 +37,26 @@ in font = { normal = { name = "Cantarell"; - package = self.cantarell-fonts; + package = pkgs.cantarell-fonts; size = 10; }; monospace = { name = "CaskaydiaCove Nerd Font"; - package = self.nerdfonts.override { fonts = [ "CascadiaCode" ]; }; + package = pkgs.nerdfonts.override { fonts = [ "CascadiaCode" ]; }; # name = "FiraCode Nerd Font Mono"; - # package = self.nerdfonts.override { fonts = [ "FiraCode" ]; }; + # package = pkgs.nerdfonts.override { fonts = [ "FiraCode" ]; }; size = 10; }; }; opacity = 0.95; }; + + nixpkgs.overlays = [ + (_self: super: { + wl-lockscreen = super.wl-lockscreen.override { + strPalette = palette.toRgbaShortHex rice.colorPalette; + font = rice.font.normal; + }; + }) + ]; }