linted
This commit is contained in:
atagen 2025-02-02 16:57:31 +11:00
parent 4e99a0e323
commit 7485de646a
95 changed files with 2743 additions and 2282 deletions

View file

@ -2,10 +2,12 @@
lib,
config,
...
}: let
}:
let
port = 3021;
in {
imports = [./ollama.nix];
in
{
imports = [ ./ollama.nix ];
localWebApps = {
anything-llm = {
@ -13,43 +15,50 @@ in {
genericName = "Chatbot";
icon = ../icons/anythingllm.png;
inherit port;
requires.containers = ["anything-llm" "ollama"];
requires.containers = [
"anything-llm"
"ollama"
];
};
};
services.podman.containers.anything-llm = let
str = builtins.toString;
username = config.mainUser;
in {
image = "docker.io/mintplexlabs/anythingllm";
devices = ["nvidia.com/gpu=all"];
ports = ["${str port}:3001"];
autoStart = false;
autoUpdate = "registry";
network = ["ollama"];
volumes = let
home = "/home/${username}";
share = "${home}/.local/share/anything-llm";
in [
"${share}:/app/server/storage"
"${share}/.env:/app/server/.env"
"${share}/config:/home/anythingllm/.config/anythingllm-desktop"
"${share}/config:/home/${username}/.config/anythingllm-desktop"
];
environment = {
STORAGE_DIR = "/app/server/storage";
LLM_PROVIDER = "ollama";
OLLAMA_BASE_PATH = "http://ollama:11434";
EMBEDDING_ENGINE = "ollama";
EMBEDDING_BASE_PATH = "http://ollama:11434";
VECTOR_DB = "lancedb";
WHISPER_PROVIDER = "local";
TTS_PROVIDER = "native";
services.podman.containers.anything-llm =
let
str = builtins.toString;
username = config.mainUser;
in
{
image = "docker.io/mintplexlabs/anythingllm";
devices = [ "nvidia.com/gpu=all" ];
ports = [ "${str port}:3001" ];
autoStart = false;
autoUpdate = "registry";
network = [ "ollama" ];
volumes =
let
home = "/home/${username}";
share = "${home}/.local/share/anything-llm";
in
[
"${share}:/app/server/storage"
"${share}/.env:/app/server/.env"
"${share}/config:/home/anythingllm/.config/anythingllm-desktop"
"${share}/config:/home/${username}/.config/anythingllm-desktop"
];
environment = {
STORAGE_DIR = "/app/server/storage";
LLM_PROVIDER = "ollama";
OLLAMA_BASE_PATH = "http://ollama:11434";
EMBEDDING_ENGINE = "ollama";
EMBEDDING_BASE_PATH = "http://ollama:11434";
VECTOR_DB = "lancedb";
WHISPER_PROVIDER = "local";
TTS_PROVIDER = "native";
};
extraConfig.Unit.Requires = [ "podman-ollama.service" ];
extraPodmanArgs = [
"--health-cmd"
(lib.escapeShellArg "bash -c 'cat < /dev/null > /dev/tcp/localhost/3001'")
];
};
extraConfig.Unit.Requires = ["podman-ollama.service"];
extraPodmanArgs = [
"--health-cmd"
(lib.escapeShellArg "bash -c 'cat < /dev/null > /dev/tcp/localhost/3001'")
];
};
}

View file

@ -1,4 +1,5 @@
{...}: {
_:
{
programs.atuin = {
enable = true;
enableZshIntegration = true;

View file

@ -1,10 +1,14 @@
{
config,
lib,
...
}: let
}:
let
officialAddon = name: {
install_url = lib.strings.concatStrings ["https://addons.mozilla.org/firefox/downloads/latest/" name "/latest.xpi"];
install_url = lib.strings.concatStrings [
"https://addons.mozilla.org/firefox/downloads/latest/"
name
"/latest.xpi"
];
installation_mode = "force_installed";
};
lock-false = {
@ -15,7 +19,8 @@
Value = true;
Status = "locked";
};
in {
in
{
programs.firefox = {
enable = true;

View file

@ -3,16 +3,19 @@
lib,
pkgs,
...
}: let
}:
let
palette-hex = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.palette;
palette-shex = pkgs.lib.nix-rice.palette.toRGBShortHex pkgs.rice.palette;
in {
in
{
programs.helix = {
enable = true;
themes = with palette-hex; {
nix-rice = {
"attribute" = bright.cyan;
"keyword" = {fg = normal.red;};
"keyword" = {
fg = normal.red;
};
"keyword.directive" = normal.red;
"namespace" = bright.cyan;
"punctuation" = bright.yellow;
@ -27,29 +30,31 @@ in {
"type.builtin" = normal.yellow;
"constructor" = {
fg = bright.magenta;
modifiers = ["bold"];
modifiers = [ "bold" ];
};
"function" = {
fg = normal.green;
modifiers = ["bold"];
modifiers = [ "bold" ];
};
"function.macro" = bright.cyan;
"function.builtin" = normal.yellow;
"tag" = normal.red;
"comment" = {
fg = normal.magenta;
modifiers = ["italic"];
modifiers = [ "italic" ];
};
"constant" = {
fg = bright.magenta;
};
"constant" = {fg = bright.magenta;};
"constant.builtin" = {
fg = bright.magenta;
modifiers = ["bold"];
modifiers = [ "bold" ];
};
"string" = normal.green;
"constant.numeric" = bright.magenta;
"constant.character.escape" = {
fg = bright.white;
modifiers = ["bold"];
modifiers = [ "bold" ];
};
"label" = bright.cyan;
"module" = bright.cyan;
@ -60,64 +65,86 @@ in {
"error" = bright.red;
"info" = bright.cyan;
"hint" = bright.blue;
"ui.background" = {bg = util.bg;};
"ui.linenr" = {fg = normal.cyan;};
"ui.background" = {
inherit (util) bg;
};
"ui.linenr" = {
fg = normal.cyan;
};
"ui.linenr.selected" = {
fg = normal.yellow;
modifiers = ["bold"];
modifiers = [ "bold" ];
};
"ui.cursorline" = {
bg = normal.black;
};
"ui.cursorline" = {bg = normal.black;};
"ui.statusline" = {
fg = util.fg;
inherit (util) fg;
bg = bright.black;
};
"ui.statusline.normal" = {
fg = util.fg;
inherit (util) fg;
bg = bright.black;
};
"ui.statusline.insert" = {
fg = util.fg;
inherit (util) fg;
bg = normal.blue;
};
"ui.statusline.select" = {
fg = util.fg;
inherit (util) fg;
bg = bright.yellow;
};
"ui.statusline.inactive" = {
fg = normal.white;
bg = normal.black;
};
"ui.popup" = {bg = normal.black;};
"ui.window" = {bg = normal.black;};
"ui.popup" = {
bg = normal.black;
};
"ui.window" = {
bg = normal.black;
};
"ui.help" = {
bg = normal.black;
fg = util.fg;
inherit (util) fg;
};
"ui.text" = {
inherit (util) fg;
};
"ui.text.focus" = {
inherit (util) fg;
};
"ui.text" = {fg = util.fg;};
"ui.text.focus" = {fg = util.fg;};
"ui.selection" = {
# modifiers = ["reversed"];
bg = bright.yellow;
};
"ui.selection.primary" = {modifiers = ["reversed"];};
"ui.selection.primary" = {
modifiers = [ "reversed" ];
};
# "ui.selection.primary" = { bg = bright.cyan; };
"ui.cursor.primary" = {
bg = normal.white;
fg = normal.black;
};
"ui.cursor.match" = {bg = bright.cyan;};
"ui.cursor.match" = {
bg = bright.cyan;
};
"ui.menu" = {
fg = util.fg;
inherit (util) fg;
bg = bright.black;
};
"ui.menu.selected" = {
fg = bright.black;
bg = bright.blue;
modifiers = ["bold"];
modifiers = [ "bold" ];
};
"ui.virtual.whitespace" = bright.black;
"ui.virtual.ruler" = {bg = normal.black;};
"ui.virtual.inlay-hint" = {fg = normal.magenta;};
"ui.virtual.ruler" = {
bg = normal.black;
};
"ui.virtual.inlay-hint" = {
fg = normal.magenta;
};
"diagnostic.warning" = {
underline = {
color = bright.yellow;
@ -143,12 +170,18 @@ in {
};
};
"markup.heading" = bright.cyan;
"markup.bold" = {modifiers = ["bold"];};
"markup.italic" = {modifiers = ["italic"];};
"markup.strikethrough" = {modifiers = ["crossed_out"];};
"markup.bold" = {
modifiers = [ "bold" ];
};
"markup.italic" = {
modifiers = [ "italic" ];
};
"markup.strikethrough" = {
modifiers = [ "crossed_out" ];
};
"markup.link.url" = {
fg = bright.green;
modifiers = ["underlined"];
modifiers = [ "underlined" ];
};
"markup.link.text" = bright.red;
"markup.raw" = bright.red;
@ -184,17 +217,28 @@ in {
normal = "block";
select = "underline";
};
statusline.left = ["mode" "spinner" "version-control" "file-name" "file-modification-indicator"];
statusline.left = [
"mode"
"spinner"
"version-control"
"file-name"
"file-modification-indicator"
];
lsp.display-messages = true;
keys = let
extend = {
"A-x" = "extend_to_line_bounds";
"X" = ["extend_line_up" "extend_to_line_bounds"];
keys =
let
extend = {
"A-x" = "extend_to_line_bounds";
"X" = [
"extend_line_up"
"extend_to_line_bounds"
];
};
in
{
normal = extend;
select = extend;
};
in {
normal = extend;
select = extend;
};
};
};
@ -202,13 +246,19 @@ in {
language = [
{
name = "rust";
language-servers = ["rust-analyzer" "lsp-ai"];
language-servers = [
"rust-analyzer"
"lsp-ai"
];
auto-format = true;
}
{
name = "nix";
language-servers = ["nixd" "lsp-ai"];
file-types = ["nix"];
language-servers = [
"nixd"
"lsp-ai"
];
file-types = [ "nix" ];
# auto-format = true;
formatter = {
command = "alejandra";
@ -216,8 +266,14 @@ in {
}
{
name = "ocaml";
language-servers = ["ocamllsp" "lsp-ai"];
file-types = ["ml" "mli"];
language-servers = [
"ocamllsp"
"lsp-ai"
];
file-types = [
"ml"
"mli"
];
auto-format = true;
formatter = {
command = "ocamlformat";
@ -233,7 +289,7 @@ in {
lsp-ai = {
command = "lsp-ai";
config = {
memory.fileStore = {};
memory.fileStore = { };
models = {
llama32 = {
type = "ollama";
@ -285,7 +341,7 @@ in {
};
};
};
}; #language-server
}; #languages
}; #helix config
}; # language-server
}; # languages
}; # helix config
}

View file

@ -3,16 +3,19 @@
lib,
pkgs,
...
}: let
}:
let
palette-hex = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.palette;
palette-shex = pkgs.lib.nix-rice.palette.toRGBShortHex pkgs.rice.palette;
in {
in
{
programs.helix = {
enable = true;
themes = with palette-hex; {
nix-rice = {
"attribute" = bright.cyan;
"keyword" = {fg = normal.red;};
"keyword" = {
fg = normal.red;
};
"keyword.directive" = normal.red;
"namespace" = bright.cyan;
"punctuation" = bright.yellow;
@ -27,29 +30,31 @@ in {
"type.builtin" = normal.yellow;
"constructor" = {
fg = bright.magenta;
modifiers = ["bold"];
modifiers = [ "bold" ];
};
"function" = {
fg = normal.green;
modifiers = ["bold"];
modifiers = [ "bold" ];
};
"function.macro" = bright.cyan;
"function.builtin" = normal.yellow;
"tag" = normal.red;
"comment" = {
fg = normal.magenta;
modifiers = ["italic"];
modifiers = [ "italic" ];
};
"constant" = {
fg = bright.magenta;
};
"constant" = {fg = bright.magenta;};
"constant.builtin" = {
fg = bright.magenta;
modifiers = ["bold"];
modifiers = [ "bold" ];
};
"string" = normal.green;
"constant.numeric" = bright.magenta;
"constant.character.escape" = {
fg = bright.white;
modifiers = ["bold"];
modifiers = [ "bold" ];
};
"label" = bright.cyan;
"module" = bright.cyan;
@ -60,64 +65,86 @@ in {
"error" = bright.red;
"info" = bright.cyan;
"hint" = bright.blue;
"ui.background" = {bg = util.bg;};
"ui.linenr" = {fg = normal.cyan;};
"ui.background" = {
inherit (util) bg;
};
"ui.linenr" = {
fg = normal.cyan;
};
"ui.linenr.selected" = {
fg = normal.yellow;
modifiers = ["bold"];
modifiers = [ "bold" ];
};
"ui.cursorline" = {
bg = normal.black;
};
"ui.cursorline" = {bg = normal.black;};
"ui.statusline" = {
fg = util.fg;
inherit (util) fg;
bg = bright.black;
};
"ui.statusline.normal" = {
fg = util.fg;
inherit (util) fg;
bg = bright.black;
};
"ui.statusline.insert" = {
fg = util.fg;
inherit (util) fg;
bg = normal.blue;
};
"ui.statusline.select" = {
fg = util.fg;
inherit (util) fg;
bg = bright.yellow;
};
"ui.statusline.inactive" = {
fg = normal.white;
bg = normal.black;
};
"ui.popup" = {bg = normal.black;};
"ui.window" = {bg = normal.black;};
"ui.popup" = {
bg = normal.black;
};
"ui.window" = {
bg = normal.black;
};
"ui.help" = {
bg = normal.black;
fg = util.fg;
inherit (util) fg;
};
"ui.text" = {
inherit (util) fg;
};
"ui.text.focus" = {
inherit (util) fg;
};
"ui.text" = {fg = util.fg;};
"ui.text.focus" = {fg = util.fg;};
"ui.selection" = {
# modifiers = ["reversed"];
bg = bright.yellow;
};
"ui.selection.primary" = {modifiers = ["reversed"];};
"ui.selection.primary" = {
modifiers = [ "reversed" ];
};
# "ui.selection.primary" = { bg = bright.cyan; };
"ui.cursor.primary" = {
bg = normal.white;
fg = normal.black;
};
"ui.cursor.match" = {bg = bright.cyan;};
"ui.cursor.match" = {
bg = bright.cyan;
};
"ui.menu" = {
fg = util.fg;
inherit (util) fg;
bg = bright.black;
};
"ui.menu.selected" = {
fg = bright.black;
bg = bright.blue;
modifiers = ["bold"];
modifiers = [ "bold" ];
};
"ui.virtual.whitespace" = bright.black;
"ui.virtual.ruler" = {bg = normal.black;};
"ui.virtual.inlay-hint" = {fg = normal.magenta;};
"ui.virtual.ruler" = {
bg = normal.black;
};
"ui.virtual.inlay-hint" = {
fg = normal.magenta;
};
"diagnostic.warning" = {
underline = {
color = bright.yellow;
@ -143,12 +170,18 @@ in {
};
};
"markup.heading" = bright.cyan;
"markup.bold" = {modifiers = ["bold"];};
"markup.italic" = {modifiers = ["italic"];};
"markup.strikethrough" = {modifiers = ["crossed_out"];};
"markup.bold" = {
modifiers = [ "bold" ];
};
"markup.italic" = {
modifiers = [ "italic" ];
};
"markup.strikethrough" = {
modifiers = [ "crossed_out" ];
};
"markup.link.url" = {
fg = bright.green;
modifiers = ["underlined"];
modifiers = [ "underlined" ];
};
"markup.link.text" = bright.red;
"markup.raw" = bright.red;
@ -168,7 +201,13 @@ in {
normal = "block";
select = "underline";
};
statusline.left = ["mode" "spinner" "version-control" "file-name" "file-modification-indicator"];
statusline.left = [
"mode"
"spinner"
"version-control"
"file-name"
"file-modification-indicator"
];
lsp.display-messages = true;
# keys = let
# extend = {
@ -186,15 +225,15 @@ in {
language = [
{
name = "rust";
language-servers = ["rust-analyzer"];
language-servers = [ "rust-analyzer" ];
}
{
name = "nix";
language-servers = ["nil"];
file-types = ["nix"];
# auto-format = true;
language-servers = [ "nil" ];
file-types = [ "nix" ];
auto-format = true;
formatter = {
command = "alejandra";
command = "nixfmt";
};
}
];
@ -219,7 +258,7 @@ in {
};
};
};
}; #language-server
}; #languages
}; #helix config
}; # language-server
}; # languages
}; # helix config
}

View file

@ -1,22 +1,22 @@
{
config,
lib,
pkgs,
...
}: let
}:
let
palette-hex = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.palette;
palette-shex = pkgs.lib.nix-rice.palette.toRGBShortHex pkgs.rice.palette;
in {
in
{
programs.kitty = with pkgs.rice; {
enable = true;
font = with fonts; {
name = monospace.name;
size = monospace.size;
inherit (monospace) name;
inherit (monospace) size;
};
settings = with palette-hex; {
foreground = util.fg;
background = util.bg;
cursor = util.cursor;
inherit (util) cursor;
cursor_text = util.bg;
selection_foreground = util.fg_sel;
selection_background = util.bg_sel;

View file

@ -1,4 +1,5 @@
{pkgs, ...}: {
{ pkgs, ... }:
{
programs.murex = {
enable = true;
direnv = true;
@ -60,25 +61,28 @@
fresh
'';
plugins = let
inherit
(pkgs)
plugins =
let
inherit (pkgs)
murex-jump
murex-starship
;
in
[
murex-jump
murex-starship
;
in [
murex-jump
murex-starship
];
];
};
programs.starship = {
enable = true;
};
home.packages = let
inherit (pkgs) jump;
in [
jump
];
home.packages =
let
inherit (pkgs) jump;
in
[
jump
];
}

View file

@ -3,71 +3,76 @@
lib,
config,
...
}: {
}:
{
xdg.desktopEntries.ollama = {
name = "Ollama";
type = "Application";
icon = ../icons/ollama.png;
exec = let
inherit (lib) getExe getExe';
notify-send = "${getExe' pkgs.libnotify "notify-send"} -a \"Ollama\"";
systemctl = "${getExe' pkgs.systemd "systemctl"}";
podman = "${getExe pkgs.podman}";
in "${pkgs.writeShellScript "ollama" ''
set -euo pipefail
exec =
let
inherit (lib) getExe getExe';
notify-send = "${getExe' pkgs.libnotify "notify-send"} -a \"Ollama\"";
systemctl = "${getExe' pkgs.systemd "systemctl"}";
podman = "${getExe pkgs.podman}";
in
"${pkgs.writeShellScript "ollama" ''
set -euo pipefail
exit_error() {
${notify-send} -w "Failure" $1
exit 1
}
exit_error() {
${notify-send} -w "Failure" $1
exit 1
}
container_checks() {
if [ "$(${podman} inspect -f {{.State.Health.Status}} ollama)" == "healthy" ]; then
return 0
else
return 1
fi
}
container_checks() {
if [ "$(${podman} inspect -f {{.State.Health.Status}} ollama)" == "healthy" ]; then
return 0
else
return 1
fi
}
${notify-send} "Launching Ollama.." "Please be patient."
${notify-send} "Launching Ollama.." "Please be patient."
${systemctl} --user start podman-ollama
checks=0
until container_checks; do
sleep 2
checks=$((checks+1))
if [ $((checks%10)) -eq 0 ]; then
${notify-send} "Launching.."
fi
if [ $checks -ge 60 ]; then
${systemctl} --no-block --user stop podman-ollama.target
exit_error "Failed to launch!"
fi
done
${systemctl} --user start podman-ollama
checks=0
until container_checks; do
sleep 2
checks=$((checks+1))
if [ $((checks%10)) -eq 0 ]; then
${notify-send} "Launching.."
fi
if [ $checks -ge 60 ]; then
${systemctl} --no-block --user stop podman-ollama.target
exit_error "Failed to launch!"
fi
done
${notify-send} "Ollama serving on port 11434."
''}";
${notify-send} "Ollama serving on port 11434."
''}";
};
services.podman = {
containers.ollama = let
username = config.mainUser;
in {
image = "docker.io/ollama/ollama:latest";
devices = ["nvidia.com/gpu=all"];
autoStart = false;
autoUpdate = "registry";
network = ["ollama"];
ports = ["11434:11434"];
volumes = [
"/home/${username}/.local/share/ollama:/models"
];
environment.OLLAMA_MODELS = "/models";
extraPodmanArgs = [
"--health-cmd"
(lib.escapeShellArg "bash -c 'cat < /dev/null > /dev/tcp/localhost/11434'")
];
};
containers.ollama =
let
username = config.mainUser;
in
{
image = "docker.io/ollama/ollama:latest";
devices = [ "nvidia.com/gpu=all" ];
autoStart = false;
autoUpdate = "registry";
network = [ "ollama" ];
ports = [ "11434:11434" ];
volumes = [
"/home/${username}/.local/share/ollama:/models"
];
environment.OLLAMA_MODELS = "/models";
extraPodmanArgs = [
"--health-cmd"
(lib.escapeShellArg "bash -c 'cat < /dev/null > /dev/tcp/localhost/11434'")
];
};
networks.ollama = {
subnet = "192.168.10.0/24";

View file

@ -1,11 +1,12 @@
{
lib,
pkgs,
...
}: let
}:
let
port = 3021;
in {
imports = [./ollama.nix];
in
{
imports = [ ./ollama.nix ];
localWebApps = {
openwebui = {
@ -13,28 +14,35 @@ in {
genericName = "LLM";
icon = ../icons/openwebui.png;
inherit port;
requires.containers = ["openwebui" "ollama"];
requires.containers = [
"openwebui"
"ollama"
];
};
};
services.podman = {
containers.openwebui = let
str = builtins.toString;
in {
# serviceName = "openwebui";
image = "ghcr.io/open-webui/open-webui:main";
ports = ["${str port}:${str port}"];
environment = {
WEBUI_AUTH = "False";
PORT = "${str port}";
containers.openwebui =
let
str = builtins.toString;
in
{
# serviceName = "openwebui";
image = "ghcr.io/open-webui/open-webui:main";
ports = [ "${str port}:${str port}" ];
environment = {
WEBUI_AUTH = "False";
PORT = "${str port}";
};
autoStart = false;
networks = [ "ollama" ];
unitConfig = {
Requires = [ "podman-ollama.service" ];
};
extraOptions = [
"--health-cmd"
(lib.escapeShellArg "bash -c 'cat < /dev/null > /dev/tcp/localhost/${str port}'")
];
};
autoStart = false;
networks = ["ollama"];
unitConfig = {Requires = ["podman-ollama.service"];};
extraOptions = [
"--health-cmd"
(lib.escapeShellArg "bash -c 'cat < /dev/null > /dev/tcp/localhost/${str port}'")
];
};
};
}

View file

@ -1,12 +1,9 @@
{
lib,
pkgs,
config,
...
}: let
inherit (lib) getExe;
inherit (config.home) homeDirectory;
in {
}:
{
localWebApps = {
stable-diffusion = {
name = "Stable Diffusion";
@ -14,7 +11,7 @@ in {
icon = ../icons/comfyui.png;
id = 5;
port = 7860;
requires = ["stable-diffusion"];
requires = [ "stable-diffusion" ];
};
};
}

View file

@ -1,17 +1,19 @@
{pkgs, ...}: {
{ pkgs, inputs, ... }:
{
programs.vscode = {
enable = true;
extensions = with pkgs.vscode-extensions; [
extensions = with inputs.nix-vscode.extensions.x86_64-linux.vscode-marketplace; [
rust-lang.rust-analyzer
serayuzgur.crates
ocamllabs.ocaml-platform
jnoortheen.nix-ide
# arrterian.nix-env-selector
mkhl.direnv
continue.continue
# silverquark.dancehelix
# gregoire.dance
barbosshack.crates-io
vadimcn.vscode-lldb
kamadorueda.alejandra
kend.dancehelixkey
hikionori.kanagawa-vscode-theme
];
mutableExtensionsDir = true;
mutableExtensionsDir = false;
userSettings = {
"window.titleBarStyle" = "custom";
"editor.fontFamily" = "${pkgs.rice.fonts.monospace.name}";

View file

@ -1,39 +1,43 @@
{
config,
lib,
pkgs,
...
}: let
}:
let
palette-hex = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.palette;
in {
in
{
programs.wlogout = {
enable = true;
package = pkgs.wleave;
layout = builtins.fromJSON (builtins.readFile ../dots/wlogout/layout);
style = with palette-hex; (builtins.replaceStrings
[
"/usr/share/wlogout"
"/etc/wlogout"
"#WINBG"
"#BTNCOL"
"#BTNBG"
"#BTNFOCUSBG"
"#WINLOGO"
]
[
"${pkgs.wlogout}/share/wlogout"
"${pkgs.wlogout}/etc/wlogout"
util.bg
bright.yellow
util.bg
normal.black
(builtins.path {
name = "winlogo";
path = ../icons/winlogo.png;
sha256 = "7c1ff96b553c7a7ca3a7b7cf8efe830ab7feea92355aed288a10ee7347c24108";
})
]
(builtins.readFile ../dots/wlogout/style.css));
style =
with palette-hex;
(builtins.replaceStrings
[
"/usr/share/wlogout"
"/etc/wlogout"
"#WINBG"
"#BTNCOL"
"#BTNBG"
"#BTNFOCUSBG"
"#WINLOGO"
]
[
"${pkgs.wlogout}/share/wlogout"
"${pkgs.wlogout}/etc/wlogout"
util.bg
bright.yellow
util.bg
normal.black
(builtins.path {
name = "winlogo";
path = ../icons/winlogo.png;
sha256 = "7c1ff96b553c7a7ca3a7b7cf8efe830ab7feea92355aed288a10ee7347c24108";
})
]
(builtins.readFile ../dots/wlogout/style.css)
);
};
# xdg.configFile = {
# "wleave/layout".text = builtins.readFile ../dots/wlogout/layout;
@ -63,5 +67,5 @@ in {
# (builtins.readFile ../dots/wlogout/style.css));
# };
home.packages = [pkgs.wlogout];
home.packages = [ pkgs.wlogout ];
}

View file

@ -3,11 +3,13 @@
lib,
config,
...
}: let
}:
let
inherit (lib) getExe;
inherit (config.home) homeDirectory;
palette-hex = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.palette;
in {
in
{
ezOneShots = with pkgs; {
xrdb = "${getExe xorg.xrdb} -load ${homeDirectory}/.Xresources";
};

View file

@ -1,12 +1,9 @@
{
config,
lib,
pkgs,
...
}: let
palette-hex = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.palette;
palette-shex = pkgs.lib.nix-rice.palette.toRGBShortHex pkgs.rice.palette;
in {
}:
{
programs.zsh = {
enable = true;
autosuggestion.enable = true;