Refactor colorscheme generation

This commit is contained in:
Agatha Lovelace 2023-04-20 22:22:22 +02:00
parent 4d6cca2a92
commit 13021eb2b1
Signed by: sorceress
GPG Key ID: 01D0B3AB10CED4F8
9 changed files with 37 additions and 50 deletions

View File

@ -1,8 +1,4 @@
{ lib, pkgs, config, ... }@attrs: { lib, pkgs, config, ... }: {
let
utils = import ./colors.nix attrs;
colorscheme = utils.colorscheme "purple" ../../../external/6.png;
in {
home-manager.users.agatha = { home-manager.users.agatha = {
xsession.windowManager.bspwm = { xsession.windowManager.bspwm = {
enable = true; enable = true;
@ -14,7 +10,9 @@ in {
extraConfig = lib.strings.concatStringsSep "\n" extraConfig = lib.strings.concatStringsSep "\n"
[ "nitrogen --set-zoom-fill ${../../../external/6.png}" ]; [ "nitrogen --set-zoom-fill ${../../../external/6.png}" ];
monitors = { eDP-1 = [ "I" "II" "III" "IV" "V" "VI" "VII" "VIII" ]; }; monitors = { eDP-1 = [ "I" "II" "III" "IV" "V" "VI" "VII" "VIII" ]; };
settings = let color = n: colorscheme.colors."${builtins.toString n}"; settings = let
color = n:
config.environment.graphical.colors.purple."${builtins.toString n}";
in { in {
border_width = 3; border_width = 3;
window_gap = 15; window_gap = 15;

View File

@ -1,13 +0,0 @@
{ lib, pkgs, ... }: {
colorscheme = name: image: rec {
generate = pkgs.callPackage ({ runCommand, colorpickle }:
runCommand "colors-${name}" { nativeBuildInputs = [ colorpickle ]; } ''
colorpickle ${image} --lighten 0.05 --bold-delta 0.1 > $out
'') { };
colors = builtins.listToAttrs (lib.lists.imap0 (i: v: {
name = builtins.toString i;
value = v;
}) (lib.strings.splitString "\n" (builtins.readFile generate)));
};
}

View File

@ -45,6 +45,7 @@
xdotool xdotool
prismlauncher prismlauncher
obs-studio obs-studio
nil
]; ];
# Brightness/volume keys # Brightness/volume keys
@ -148,6 +149,11 @@
home.sessionVariables = { "DIRENV_LOG_FORMAT" = ""; }; home.sessionVariables = { "DIRENV_LOG_FORMAT" = ""; };
}; };
environment.graphical.colorschemes.purple = {
image = ../../../external/6.png;
params = [ "--lighten" "0.05" "--bold-delta" "0.1" ];
};
services.gvfs.enable = true; services.gvfs.enable = true;
security.polkit.enable = true; security.polkit.enable = true;
programs.dconf.enable = true; programs.dconf.enable = true;

View File

@ -1,8 +1,7 @@
{ lib, pkgs, config, ... }@attrs: { lib, pkgs, config, ... }:
let let
utils = import ./colors.nix attrs; color = n:
colorscheme = utils.colorscheme "purple" ../../../external/6.png; config.environment.graphical.colors.purple."${builtins.toString n}";
color = n: colorscheme.colors."${builtins.toString n}";
in { in {
home-manager.users.agatha = { home-manager.users.agatha = {
services.dunst = { services.dunst = {

View File

@ -1,8 +1,7 @@
{ pkgs, config, ... }@attrs: { pkgs, config, ... }:
let let
utils = import ./colors.nix attrs; color = n:
colorscheme = utils.colorscheme "purple" ../../../external/6.png; config.environment.graphical.colors.purple."${builtins.toString n}";
color = n: colorscheme.colors."${builtins.toString n}";
in { in {
home-manager.users.agatha = { home-manager.users.agatha = {
programs.kitty = { programs.kitty = {

View File

@ -1,8 +1,4 @@
{ lib, pkgs, config, ... }@attrs: { lib, pkgs, config, ... }: {
let
utils = import ./colors.nix attrs;
colorscheme = utils.colorscheme "purple" ../../../external/6.png;
in {
home-manager.users.agatha = { home-manager.users.agatha = {
systemd.user.services.polybar = { systemd.user.services.polybar = {
@ -29,7 +25,9 @@ in {
script = "polybar right &"; script = "polybar right &";
settings = let color = n: colorscheme.colors."${builtins.toString n}"; settings = let
color = n:
config.environment.graphical.colors.purple."${builtins.toString n}";
in { in {
"colors" = { "colors" = {
background = color 0; background = color 0;

View File

@ -1,8 +1,7 @@
{ lib, pkgs, config, ... }@attrs: { lib, pkgs, config, ... }:
let let
utils = import ./colors.nix attrs; color = n:
colorscheme = utils.colorscheme "purple" ../../../external/6.png; config.environment.graphical.colors.purple."${builtins.toString n}";
color = n: colorscheme.colors."${builtins.toString n}";
in { in {
home-manager.users.agatha = { home-manager.users.agatha = {
programs.rofi = { programs.rofi = {

View File

@ -28,11 +28,11 @@
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1681058620, "lastModified": 1682020898,
"narHash": "sha256-dethIZN9+Tcu/FbcyQnS4e8Ly+S50tnjBdLQBscxcF4=", "narHash": "sha256-XYSSFmqIjsvmgusWaOSD/WeaTyH8o83i+qma1BQgARU=",
"owner": "AgathaSorceress", "owner": "AgathaSorceress",
"repo": "colorpickle", "repo": "colorpickle",
"rev": "06b6ae85e8a141ccee67f3597ccf37ca61f8dcc3", "rev": "2574b83cb0454a146a0346bf0d6a134d62241e60",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -284,11 +284,11 @@
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1681780219, "lastModified": 1681970018,
"narHash": "sha256-whY/Ae5/szGGvZV9db7OQm30Z646HIjkL7bOLNiR0Go=", "narHash": "sha256-V/OeOVRJGOqQHKSG1RgZuLOMGclRgxfoYBN8zCzKxCE=",
"owner": "helix-editor", "owner": "helix-editor",
"repo": "helix", "repo": "helix",
"rev": "ca65d312e715413cd5675cafd599d74534900d3f", "rev": "b336cd76a740eea6ea41baa1028233ccf6e12ee5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -304,11 +304,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1681799488, "lastModified": 1681971090,
"narHash": "sha256-aAK/Mzf2yZ20stXkmPmtvtDQFy2XaEjAyZ3Fo56FbQc=", "narHash": "sha256-3j0M63GkG6GGny9e+C//GyuDCx1IwrurD27S0YI+GQY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "2dcb61d396b45f10d9e0621a7358b361f94323ff", "rev": "5160039edca28a7e66bad0cfc72a07c91d6768ad",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -652,11 +652,11 @@
}, },
"nixpkgs_8": { "nixpkgs_8": {
"locked": { "locked": {
"lastModified": 1681696129, "lastModified": 1681932375,
"narHash": "sha256-Ba2y1lmsWmmAOAoTD5G9UnTS/UqV0ZFyzysgdfu7qag=", "narHash": "sha256-tSXbYmpnKSSWpzOrs27ie8X3I0yqKA6AuCzCYNtwbCU=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "de66115c552acc4e0c0f92c5a5efb32e37dfa216", "rev": "3d302c67ab8647327dba84fbdb443cdbf0e82744",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@ -34,7 +34,7 @@
overlays = [ overlays = [
(final: prev: { (final: prev: {
helix = helix.packages.${final.system}.default; helix = helix.packages.${final.system}.default;
colorpickle = colorpickle.defaultPackage.${final.system}; colorpickle = colorpickle.packages.${final.system}.default;
frq-friend = frq-friend.defaultPackage.${final.system}; frq-friend = frq-friend.defaultPackage.${final.system};
}) })
colmena.overlay colmena.overlay
@ -79,6 +79,7 @@
./hosts/ritual/configuration.nix ./hosts/ritual/configuration.nix
(import "${home-manager}/nixos") (import "${home-manager}/nixos")
url-eater.nixosModule url-eater.nixosModule
colorpickle.nixosModules.default
]; ];
deployment = { deployment = {