Switch to module-based rice

This commit is contained in:
Filippo Berto 2024-10-22 18:49:26 +02:00
parent a8ee39aaa3
commit 61329e5f96
No known key found for this signature in database
GPG key ID: FE98AE5EC52B1056
19 changed files with 505 additions and 547 deletions

44
flake.lock generated
View file

@ -165,24 +165,6 @@
"type": "github" "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": { "git-hooks-nix": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_3", "flake-compat": "flake-compat_3",
@ -353,14 +335,14 @@
"kitty-themes-src": "kitty-themes-src", "kitty-themes-src": "kitty-themes-src",
"nixpkgs": "nixpkgs_3", "nixpkgs": "nixpkgs_3",
"nixpkgs-lib": "nixpkgs-lib_3", "nixpkgs-lib": "nixpkgs-lib_3",
"systems": "systems_4" "systems": "systems_3"
}, },
"locked": { "locked": {
"lastModified": 1729514200, "lastModified": 1729607158,
"narHash": "sha256-rrzFumYWlFwjUs1uSmsOgBzqWxDysaRbFj4Wh9paVLc=", "narHash": "sha256-H0cr8kohjo+fJIKIpcLZwtmRUGH01Gyld0ulhfqe/Rw=",
"owner": "bertof", "owner": "bertof",
"repo": "nix-rice", "repo": "nix-rice",
"rev": "9e5da4fa06a0c9a7300d70266660136cc08b81bf", "rev": "2a4b7d31de444ab5d1f8623f41f0382c9e3eac33",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -577,7 +559,6 @@
"deploy-rs": "deploy-rs", "deploy-rs": "deploy-rs",
"flake-compat": "flake-compat_2", "flake-compat": "flake-compat_2",
"flake-parts": "flake-parts", "flake-parts": "flake-parts",
"flake-utils": "flake-utils",
"git-hooks-nix": "git-hooks-nix", "git-hooks-nix": "git-hooks-nix",
"home-manager": "home-manager_2", "home-manager": "home-manager_2",
"home-manager-u": "home-manager-u", "home-manager-u": "home-manager-u",
@ -586,7 +567,7 @@
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_4", "nixpkgs": "nixpkgs_4",
"nixpkgs-u": "nixpkgs-u", "nixpkgs-u": "nixpkgs-u",
"systems": "systems_5" "systems": "systems_4"
} }
}, },
"systems": { "systems": {
@ -649,21 +630,6 @@
"type": "github" "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": { "utils": {
"inputs": { "inputs": {
"systems": "systems_2" "systems": "systems_2"

View file

@ -25,7 +25,6 @@
nixpkgs.follows = "nixpkgs"; nixpkgs.follows = "nixpkgs";
}; };
}; };
flake-utils.url = "github:numtide/flake-utils";
nix-rice.url = "github:bertof/nix-rice/modules"; nix-rice.url = "github:bertof/nix-rice/modules";
nixos-generators = { nixos-generators = {
url = "github:nix-community/nixos-generators"; url = "github:nix-community/nixos-generators";
@ -53,15 +52,10 @@
]; ];
}; };
basic_module = { basic_module = {
nixpkgs = { nixpkgs = {
config = nix-config; config = nix-config;
overlays = [ overlays = [
# Nix rice
inputs.nix-rice.overlays.default
inputs.self.overlays.rice
# packages # packages
inputs.self.overlays.packages inputs.self.overlays.packages
inputs.self.overlays.overrides inputs.self.overlays.overrides
@ -97,6 +91,9 @@
# Nix configuration # Nix configuration
basic_module basic_module
inputs.nix-rice.modules.default
./modules/nixos/rice.nix
# S3 cache read # S3 cache read
./modules/nixos/s3_cache_read.nix ./modules/nixos/s3_cache_read.nix
@ -137,10 +134,7 @@
./modules/nixos/musa.nix ./modules/nixos/musa.nix
] ++ homeManagerUModules ++ [{ home-manager.users.bertof = import ./instances/odin/hm.nix; }]; ] ++ homeManagerUModules ++ [{ home-manager.users.bertof = import ./instances/odin/hm.nix; }];
installerModules = commonModules ++ [ ./modules/nixos/installer.nix ]; installerModules = commonModules ++ [ ./modules/nixos/installer.nix ];
in in
inputs.flake-parts.lib.mkFlake { inherit inputs; } { inputs.flake-parts.lib.mkFlake { inherit inputs; } {
systems = import inputs.systems; systems = import inputs.systems;
@ -152,8 +146,7 @@
inherit system; inherit system;
config = nix-config; config = nix-config;
overlays = [ overlays = [
inputs.nix-rice.overlays.default # inputs.nix-rice.overlays.default
# inputs.self.overlays.rice.default
inputs.self.overlays.packages inputs.self.overlays.packages
]; ];
}; };
@ -224,8 +217,6 @@
overlays = { overlays = {
default = inputs.self.overlays.packages; default = inputs.self.overlays.packages;
rice = import ./rice.nix;
packages = self: _super: { packages = self: _super: {
keyboard-switch = self.callPackage ./pkgs/keyboard-switch { }; keyboard-switch = self.callPackage ./pkgs/keyboard-switch { };
sddm-sugar-dark = self.callPackage ./pkgs/sddm-sugar-dark { }; sddm-sugar-dark = self.callPackage ./pkgs/sddm-sugar-dark { };
@ -235,10 +226,9 @@
wl-update-background = self.callPackage ./pkgs/wl-update-background { }; 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" ]; }; 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; }; 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: _: { # two-channels = (self: _: {
@ -253,14 +243,10 @@
# }); # });
}; };
nixosConfigurations = nixosConfigurations = {
{
thor = inputs.nixpkgs-u.lib.nixosSystem { thor = inputs.nixpkgs-u.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
modules = modules = commonModules ++ [
commonModules
++ [
./instances/thor/hardware-configuration.nix ./instances/thor/hardware-configuration.nix
inputs.nixos-hardware.nixosModules.common-cpu-amd inputs.nixos-hardware.nixosModules.common-cpu-amd
inputs.nixos-hardware.nixosModules.common-pc-ssd inputs.nixos-hardware.nixosModules.common-pc-ssd
@ -283,9 +269,9 @@
} }
./modules/nixos/musa.nix ./modules/nixos/musa.nix
] ] ++ homeManagerUModules ++ [{
++ homeManagerUModules home-manager.users.bertof = import ./instances/thor/hm.nix;
++ [{ home-manager.users.bertof = import ./instances/thor/hm.nix; }]; }];
}; };
odin-nvidia = inputs.nixpkgs-u.lib.nixosSystem { odin-nvidia = inputs.nixpkgs-u.lib.nixosSystem {
@ -300,9 +286,7 @@
heimdall = inputs.nixpkgs.lib.nixosSystem { heimdall = inputs.nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
modules = modules = commonModules ++ [
commonModules
++ [
inputs.nixos-hardware.nixosModules.common-cpu-amd inputs.nixos-hardware.nixosModules.common-cpu-amd
inputs.nixos-hardware.nixosModules.common-gpu-amd inputs.nixos-hardware.nixosModules.common-gpu-amd
inputs.nixos-hardware.nixosModules.common-pc-ssd inputs.nixos-hardware.nixosModules.common-pc-ssd
@ -320,20 +304,16 @@
# ./modules/nixos/ntfy.nix # ./modules/nixos/ntfy.nix
# S3 cache read # S3 cache read
./modules/nixos/s3_cache_read.nix ./modules/nixos/s3_cache_read.nix
] ] ++ homeManagerModules ++ [{
++ homeManagerModules home-manager.users.bertof = import ./instances/heimdall/hm.nix;
++ [{ home-manager.users.bertof = import ./instances/heimdall/hm.nix; }]; }];
}; };
freya = inputs.nixpkgs.lib.nixosSystem { freya = inputs.nixpkgs.lib.nixosSystem {
system = "aarch64-linux"; system = "aarch64-linux";
modules = modules = commonModules ++ [
commonModules
++ [
inputs.nixos-hardware.nixosModules.raspberry-pi-4 inputs.nixos-hardware.nixosModules.raspberry-pi-4
( ({ lib, ... }: {
{ lib, ... }:
{
boot.supportedFilesystems = lib.mkForce [ boot.supportedFilesystems = lib.mkForce [
"btrfs" "btrfs"
"reiserfs" "reiserfs"
@ -343,8 +323,7 @@
"ntfs" "ntfs"
"cifs" "cifs"
]; ];
} })
)
./modules/nixos/server ./modules/nixos/server
./instances/freya/hardware-configuration.nix ./instances/freya/hardware-configuration.nix
@ -358,9 +337,9 @@
./modules/nixos/ntfy.nix ./modules/nixos/ntfy.nix
# S3 cache read # S3 cache read
./modules/nixos/s3_cache_read.nix ./modules/nixos/s3_cache_read.nix
] ] ++ homeManagerModules ++ [{
++ homeManagerModules home-manager.users.bertof = import ./instances/freya/hm.nix;
++ [{ home-manager.users.bertof = import ./instances/freya/hm.nix; }]; }];
}; };
baldur = inputs.nixpkgs.lib.nixosSystem { baldur = inputs.nixpkgs.lib.nixosSystem {
@ -384,9 +363,7 @@
loki = inputs.nixpkgs.lib.nixosSystem { loki = inputs.nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
modules = modules = commonModules ++ [
commonModules
++ [
./modules/nixos/server ./modules/nixos/server
inputs.nixos-hardware.nixosModules.common-cpu-intel inputs.nixos-hardware.nixosModules.common-cpu-intel
@ -397,14 +374,10 @@
./modules/nixos/users/tiziano.nix ./modules/nixos/users/tiziano.nix
# S3 cache read # S3 cache read
./modules/nixos/s3_cache_read.nix ./modules/nixos/s3_cache_read.nix
] ] ++ homeManagerModules ++ [{
++ homeManagerModules
++ [
{
home-manager.users.bertof = import ./instances/loki/hm.nix; home-manager.users.bertof = import ./instances/loki/hm.nix;
home-manager.users.tiziano = import ./instances/loki/hm_tiziano.nix; home-manager.users.tiziano = import ./instances/loki/hm_tiziano.nix;
} }];
];
}; };
# # Deploy-rs checks # # Deploy-rs checks

View file

@ -1,8 +1,10 @@
{ pkgs, ... }: { nixosConfig, ... }:
with nixosConfig.nix-rice.lib;
let let
strPalette = pkgs.lib.nix-rice.palette.toRgbHex rec { inherit (nixosConfig.nix-rice) rice;
inherit (pkgs.rice.colorPalette) normal bright primary; strPalette = palette.toRgbHex rec {
dim = pkgs.rice.colorPalette.dark; inherit (rice.colorPalette) normal bright primary;
dim = rice.colorPalette.dark;
cursor = { cursor = {
cursor = normal.white; cursor = normal.white;
text = normal.black; text = normal.black;
@ -23,7 +25,7 @@ let
in in
{ {
# Include fonts packages # Include fonts packages
home.packages = [ pkgs.rice.font.monospace.package ]; home.packages = [ rice.font.monospace.package ];
programs.alacritty = { programs.alacritty = {
enable = true; enable = true;
settings = { settings = {
@ -41,10 +43,10 @@ in
}; };
scrolling.history = 3000; scrolling.history = 3000;
font = { font = {
normal.family = pkgs.rice.font.monospace.name; normal.family = rice.font.monospace.name;
inherit (pkgs.rice.font.monospace) size; inherit (rice.font.monospace) size;
}; };
window.opacity = pkgs.rice.opacity; window.opacity = rice.opacity;
mouse = { mouse = {
# hide_when_typing = true; # hide_when_typing = true;
hints.modifiers = "Control"; hints.modifiers = "Control";

View file

@ -1,6 +1,7 @@
{ pkgs, lib, ... }: { pkgs, lib, nixosConfig, ... }:
with nixosConfig.nix-rice.lib;
let let
strPalette = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.colorPalette; strPalette = palette.toRgbHex nixosConfig.nix-rice.rice.colorPalette;
fmtString = str: "'${str}'"; fmtString = str: "'${str}'";
in in
{ {

View file

@ -1,26 +1,24 @@
{ pkgs, ... }: { pkgs, nixosConfig, ... }:
with nixosConfig.nix-rice.lib;
let let
inherit (pkgs.lib) nix-rice; inherit (nixosConfig.nix-rice) rice;
strPalette = nix-rice.palette.toRGBHex pkgs.rice.colorPalette; strPalette = palette.toRGBHex rice.colorPalette;
in in
{ {
home.packages = builtins.attrValues { home.packages = builtins.attrValues {
inherit (pkgs) dunst; inherit (pkgs) dunst;
inherit (pkgs.rice.font.normal) package; inherit (rice.font.normal) package;
}; };
services.dunst = { services.dunst = {
enable = true; enable = true;
iconTheme = { iconTheme = { package = pkgs.qogir-icon-theme; name = "Qogir"; };
package = pkgs.qogir-icon-theme;
name = "Qogir";
};
settings = { settings = {
global = { global = {
browser = "${pkgs.xdg-utils}/bin/xdg-open"; browser = "${pkgs.xdg-utils}/bin/xdg-open";
corner_radius = 10; corner_radius = 10;
dmenu = "${pkgs.rofi}/bin/rofi -dmenu -p dunst:"; dmenu = "${pkgs.rofi}/bin/rofi -dmenu -p dunst:";
follow = "keyboard"; follow = "keyboard";
font = "${pkgs.rice.font.normal.name} 10"; font = "${rice.font.normal.name} 10";
frame_color = strPalette.normal.blue; frame_color = strPalette.normal.blue;
frame_width = 1; frame_width = 1;
height = 320; height = 320;
@ -28,7 +26,7 @@ in
notification_limit = 10; notification_limit = 10;
offset = "7x7"; offset = "7x7";
separator_color = strPalette.normal.blue; 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)"; width = "(0, 320)";
}; };
urgency_low = { urgency_low = {

View file

@ -1,8 +1,8 @@
{ pkgs, ... }: { pkgs, nixosConfig, ... }:
{ {
gtk = { gtk = {
enable = true; enable = true;
font = pkgs.rice.font.normal; font = nixosConfig.nix-rice.rice.font.normal;
iconTheme = { iconTheme = {
package = pkgs.qogir-icon-theme; package = pkgs.qogir-icon-theme;
name = "Qogir-dark"; name = "Qogir-dark";

View file

@ -1,6 +1,9 @@
{ nixosConfig, pkgs, ... }: { nixosConfig, pkgs, ... }:
with nixosConfig.nix-rice.lib;
let
strPalette = palette.toRgbaShortHex nixosConfig.nix-rice.rice.colorPalette;
in
{ {
imports = [ imports = [
./kitty.nix ./kitty.nix
./nautilus.nix ./nautilus.nix
@ -50,11 +53,7 @@
}; };
xdg.configFile."hypr/hyprland.conf" = { xdg.configFile."hypr/hyprland.conf" = {
text = text = ''
let
strPalette = pkgs.lib.nix-rice.palette.toRgbaShortHex pkgs.rice.colorPalette;
in
''
# #
# Please note not all available settings / options are set here. # Please note not all available settings / options are set here.
# For a full list, see the wiki # For a full list, see the wiki

View file

@ -1,5 +1,7 @@
{ pkgs, ... }: { pkgs, nixosConfig, ... }:
with nixosConfig.nix-rice.lib;
let let
inherit (nixosConfig.nix-rice) rice;
themeBuilder = themeBuilder =
palette: with palette; '' palette: with palette; ''
set-face global value rgb:${normal.magenta},default set-face global value rgb:${normal.magenta},default
@ -275,7 +277,7 @@ in
# THEME FILE # THEME FILE
xdg.configFile."kak/colors/nord.kak".text = themeBuilder ( 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 = '' xdg.configFile."kak-lsp/kak-lsp.toml".text = ''

View file

@ -1,7 +1,9 @@
{ pkgs, ... }: { nixosConfig, ... }:
with nixosConfig.nix-rice.lib;
let let
strPalette = pkgs.lib.nix-rice.palette.toRgbHex { inherit (nixosConfig.nix-rice) rice;
inherit (pkgs.rice.colorPalette) strPalette = palette.toRgbHex {
inherit (rice.colorPalette)
background background
foreground foreground
color0 color0
@ -31,7 +33,7 @@ in
enable_audio_bell = false; enable_audio_bell = false;
visual_bell_duration = toString 0.1; visual_bell_duration = toString 0.1;
update_check_interval = 0; update_check_interval = 0;
background_opacity = toString pkgs.rice.opacity; background_opacity = toString rice.opacity;
close_on_child_death = "yes"; close_on_child_death = "yes";
clipboard_control = "write-clipboard write-primary read-clipboard read-primary"; clipboard_control = "write-clipboard write-primary read-clipboard read-primary";
disable_ligatures = "never"; disable_ligatures = "never";
@ -44,6 +46,6 @@ in
"ctrl+shift+up" = "previous_window"; "ctrl+shift+up" = "previous_window";
"ctrl+shift+down" = "next_window"; "ctrl+shift+down" = "next_window";
}; };
font = pkgs.rice.font.monospace; font = rice.font.monospace;
}; };
} }

View file

@ -1,6 +1,8 @@
{ pkgs, ... }: { nixosConfig, ... }:
with nixosConfig.nix-rice.lib;
let let
strPalette = pkgs.lib.nix-rice.palette.toRgbShortHex pkgs.rice.colorPalette; inherit (nixosConfig.nix-rice) rice;
strPalette = palette.toRgbShortHex rice.colorPalette;
in in
{ {
programs.mangohud = { programs.mangohud = {

View file

@ -4,9 +4,9 @@
, lib , lib
, ... , ...
}: }:
with nixosConfig.nix-rice.lib;
let let
inherit (pkgs.rice) colorPalette opacity; inherit (nixosConfig.nix-rice.rice) colorPalette opacity;
inherit (pkgs.lib) nix-rice;
alpha = 255 * opacity; alpha = 255 * opacity;
grep = "${pkgs.gnugrep}/bin/grep"; grep = "${pkgs.gnugrep}/bin/grep";
cut = "${pkgs.coreutils}/bin/cut"; 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"' 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 = { normal = {
foreground = nix-rice.color.darken 10 colorPalette.foreground; foreground = color.darken 10 colorPalette.foreground;
background = nix-rice.color.setAlphaRgba alpha colorPalette.background; background = color.setAlphaRgba alpha colorPalette.background;
underline = colorPalette.normal.blue; underline = colorPalette.normal.blue;
}; };
active = { active = {
inherit (colorPalette) foreground; inherit (colorPalette) foreground;
background = nix-rice.color.setAlphaRgba alpha colorPalette.background; background = color.setAlphaRgba alpha colorPalette.background;
underline = colorPalette.normal.yellow; underline = colorPalette.normal.yellow;
}; };
selected = { selected = {
inherit (colorPalette) foreground; inherit (colorPalette) foreground;
background = nix-rice.color.setAlphaRgba alpha colorPalette.background; background = color.setAlphaRgba alpha colorPalette.background;
underline = colorPalette.bright.red; underline = colorPalette.bright.red;
}; };
inherit (colorPalette.normal) green red yellow; inherit (colorPalette.normal) green red yellow;
inherit (nix-rice.color) transparent; inherit (color) transparent;
orange = colorPalette.bright.red; orange = colorPalette.bright.red;
alert = orange; alert = orange;
}; };
@ -110,29 +110,22 @@ let
bottom.size = 0; bottom.size = 0;
}; };
font = [ 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" # "Font Awesome 6 Free:size=14;0"
# "Noto Color Emoji:size=2;2" # "Noto Color Emoji:size=2;2"
"Noto Sans Symbols2:size=${toString pkgs.rice.font.monospace.size};2" "Noto Sans Symbols2:size=${toString rice.font.monospace.size};2"
"Material Design Icons:size=${toString pkgs.rice.font.monospace.size};2" "Material Design Icons:size=${toString rice.font.monospace.size};2"
# "EmojiOne Color:size=${toString pkgs.rice.font.monospace.size};0" # "EmojiOne Color:size=${toString rice.font.monospace.size};0"
"Noto Sans CJK JP:size=${toString pkgs.rice.font.monospace.size};0" "Noto Sans CJK JP:size=${toString rice.font.monospace.size};0"
"Noto Sans CJK KR:size=${toString pkgs.rice.font.monospace.size};0" "Noto Sans CJK KR:size=${toString rice.font.monospace.size};0"
"Noto Sans CJK CN:size=${toString pkgs.rice.font.monospace.size};0" "Noto Sans CJK CN:size=${toString rice.font.monospace.size};0"
"Noto Sans CJK HK:size=${toString pkgs.rice.font.monospace.size};0" "Noto Sans CJK HK:size=${toString rice.font.monospace.size};0"
]; ];
enable-ipc = true; enable-ipc = true;
wm-restack = "bspwm"; wm-restack = "bspwm";
}; };
ramp = [ ramp = [ "" "" "" "" "" "" ];
""
""
""
""
""
""
];
in in
{ {
home.packages = builtins.attrValues { home.packages = builtins.attrValues {
@ -140,7 +133,7 @@ in
# emojione # emojione
# noto-fonts-emoji # noto-fonts-emoji
# font-awesome # font-awesome
inherit (pkgs.rice.font.monospace) package; inherit (rice.font.monospace) package;
}; };
services.polybar = { services.polybar = {
enable = true; enable = true;

View file

@ -1,4 +1,8 @@
{ pkgs, ... }: { pkgs, nixosConfig, ... }:
with nixosConfig.nix-rice.lib;
let
inherit (nixosConfig.nix-rice) rice;
in
{ {
home.packages = builtins.attrValues { home.packages = builtins.attrValues {
@ -14,7 +18,7 @@
programs.rofi = { programs.rofi = {
enable = true; enable = true;
location = "center"; 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 ]; plugins = [ pkgs.rofi-calc ];
extraConfig = { extraConfig = {
modi = "drun,run,ssh,window,calc"; modi = "drun,run,ssh,window,calc";

View file

@ -1,11 +1,13 @@
{ pkgs, ... }: { pkgs, nixosConfig, ... }:
with nixosConfig.nix-rice.lib;
let let
strPalette = pkgs.lib.nix-rice.palette.toRgbHex { inherit (nixosConfig.nix-rice) rice;
inherit (pkgs.rice.colorPalette) normal bright dark; strPalette = palette.toRgbHex {
inherit (pkgs.rice.colorPalette.primary) background foreground; inherit (rice.colorPalette) normal bright dark;
inherit (rice.colorPalette.primary) background foreground;
}; };
opacity = toString pkgs.rice.opacity; opacity = toString rice.opacity;
font = pkgs.rice.font.monospace; font = rice.font.monospace;
colorString = colorString =
normal: bright: normal: bright:
builtins.concatStringsSep ":" [ builtins.concatStringsSep ":" [

View file

@ -1,7 +1,9 @@
{ pkgs, ... }: { nixosConfig, ... }:
with nixosConfig.nix-rice.lib;
let let
strPalette = pkgs.lib.nix-rice.palette.toRGBHex pkgs.rice.colorPalette; inherit (nixosConfig.nix-rice) rice;
font = pkgs.rice.font.normal; strPalette = palette.toRGBHex rice.colorPalette;
font = rice.font.normal;
in in
{ {
services.twmn = { services.twmn = {
@ -17,7 +19,7 @@ in
animation.bounce.enable = false; animation.bounce.enable = false;
color = strPalette.primary.background; color = strPalette.primary.background;
height = 32; height = 32;
opacity = pkgs.lib.nix-rice.float.round (pkgs.rice.opacity * 100); opacity = float.round (rice.opacity * 100);
offset = { offset = {
x = -20; x = -20;
y = 50; y = 50;

View file

@ -1,17 +1,17 @@
{ pkgs, ... }: { pkgs, nixosConfig, ... }:
with nixosConfig.nix-rice.lib;
let let
inherit (pkgs.rice) colorPalette; inherit (nixosConfig.nix-rice.rice) colorPalette font;
inherit (pkgs.lib) nix-rice;
alpha = 0.9; alpha = 0.9;
custom = nix-rice.palette.toRGBHex { custom = palette.toRGBHex {
inherit (colorPalette.primary) background foreground; 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; primary_accent = colorPalette.normal.blue;
secondary_accent = colorPalette.normal.cyan; secondary_accent = colorPalette.normal.cyan;
tertiary_accent = colorPalette.primary.yellow; tertiary_accent = colorPalette.primary.yellow;
palette = { palette = {
primary_background_rgba = colorPalette.primary.background; 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"; swaync-client = "${pkgs.swaynotificationcenter}/bin/swaync-client";
@ -184,7 +184,7 @@ in
* { * {
border: none; border: none;
border-radius: 0px; border-radius: 0px;
font-family: ${pkgs.rice.font.monospace.name}; font-family: ${font.monospace.name};
font-size: 10px; font-size: 10px;
min-height: 0; min-height: 0;
} }

View file

@ -1,8 +1,8 @@
{ pkgs, ... }: { pkgs, nixosConfig, ... }:
with nixosConfig.nix-rice.lib;
let let
strPalette = pkgs.lib.nix-rice.palette.toRgbHex { inherit (nixosConfig.nix-rice) rice;
inherit (pkgs.rice.colorPalette) normal bright primary; strPalette = palette.toRgbHex rice.colorPalette;
};
in in
{ {
home.file.".Xresources" = { home.file.".Xresources" = {
@ -30,8 +30,8 @@ in
*.color14: ${strPalette.bright.cyan} *.color14: ${strPalette.bright.cyan}
*.color15: ${strPalette.bright.white} *.color15: ${strPalette.bright.white}
xterm*faceName: ${pkgs.rice.font.monospace.name} xterm*faceName: ${rice.font.monospace.name}
xterm*faceSize: ${toString pkgs.rice.font.monospace.size} xterm*faceSize: ${toString rice.font.monospace.size}
''; '';
onChange = "${pkgs.xorg.xrdb}/bin/xrdb -merge ~/.Xresources "; onChange = "${pkgs.xorg.xrdb}/bin/xrdb -merge ~/.Xresources ";
}; };

View file

@ -1,6 +1,8 @@
{ pkgs, ... }: { nixosConfig, ... }:
with nixosConfig.nix-rice.lib;
let let
strPalette = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.colorPalette; inherit (nixosConfig.nix-rice) rice;
strPalette = palette.toRgbHex rice.colorPalette;
in in
{ {
programs.zathura = { programs.zathura = {
@ -11,7 +13,7 @@ in
options = { options = {
# completion-bg = strPalette.bright.black; # completion-bg = strPalette.bright.black;
# default-bg = strPalette.normal.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-bg = strPalette.bright.black;
# inputbar-fg = strPalette.normal.cyan; # inputbar-fg = strPalette.normal.cyan;
page-padding = 10; page-padding = 10;
@ -59,6 +61,5 @@ in
# recolor = true; # recolor = true;
recolor-keephue = true; # keep original color recolor-keephue = true; # keep original color
}; };
}; };
} }

View file

@ -1,6 +1,7 @@
{ pkgs, ... }: { nixosConfig, ... }:
with nixosConfig.nix-rice.lib;
let let
strPalette = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.colorPalette; strPalette = palette.toRgbHex nixosConfig.nix-rice.rice.colorPalette;
in in
{ {
programs.zellij.enable = true; programs.zellij.enable = true;

View file

@ -1,10 +1,11 @@
self: super: { pkgs, config, ... }:
with super.lib.nix-rice; with config.nix-rice.lib;
let let
theme = kitty-themes.getThemeByName "Nightfox"; theme = kitty-themes.getThemeByName "Nightfox";
inherit (config.nix-rice) rice;
in in
{ {
rice = { nix-rice.config = {
colorPalette = rec { colorPalette = rec {
normal = palette.defaultPalette // { normal = palette.defaultPalette // {
black = theme.color0; black = theme.color0;
@ -36,17 +37,26 @@ in
font = { font = {
normal = { normal = {
name = "Cantarell"; name = "Cantarell";
package = self.cantarell-fonts; package = pkgs.cantarell-fonts;
size = 10; size = 10;
}; };
monospace = { monospace = {
name = "CaskaydiaCove Nerd Font"; name = "CaskaydiaCove Nerd Font";
package = self.nerdfonts.override { fonts = [ "CascadiaCode" ]; }; package = pkgs.nerdfonts.override { fonts = [ "CascadiaCode" ]; };
# name = "FiraCode Nerd Font Mono"; # name = "FiraCode Nerd Font Mono";
# package = self.nerdfonts.override { fonts = [ "FiraCode" ]; }; # package = pkgs.nerdfonts.override { fonts = [ "FiraCode" ]; };
size = 10; size = 10;
}; };
}; };
opacity = 0.95; opacity = 0.95;
}; };
nixpkgs.overlays = [
(_self: super: {
wl-lockscreen = super.wl-lockscreen.override {
strPalette = palette.toRgbaShortHex rice.colorPalette;
font = rice.font.normal;
};
})
];
} }