From 444bbf1ce112fbcf4ac73ca314384e5ec1af0e76 Mon Sep 17 00:00:00 2001 From: Simon Gardling Date: Fri, 27 Sep 2024 12:08:34 -0400 Subject: [PATCH] reorganize home-manager --- home-manager/gui.nix | 9 +- home-manager/no-gui.nix | 11 +- home-manager/progs/alacritty.nix | 210 ++++++------ home-manager/progs/fish.nix | 102 +++--- home-manager/progs/helix.nix | 566 ++++++++++++++++--------------- home-manager/progs/librewolf.nix | 77 ----- 6 files changed, 450 insertions(+), 525 deletions(-) delete mode 100644 home-manager/progs/librewolf.nix diff --git a/home-manager/gui.nix b/home-manager/gui.nix index f04115d..09cf3ea 100644 --- a/home-manager/gui.nix +++ b/home-manager/gui.nix @@ -7,8 +7,8 @@ { imports = [ ./no-gui.nix - # ./progs/librewolf.nix ./progs/gpt4all/gpt4all.nix + ./progs/alacritty.nix ]; nixpkgs.config.allowUnfreePredicate = @@ -110,13 +110,6 @@ BROWSER = "zen"; }; - #Terminal emulator - programs.alacritty = { - enable = true; - package = pkgs.alacritty; - settings = import ./progs/alacritty.nix { inherit pkgs; }; - }; - #for trezor stuff /* trezor-udev-rules #trezor udev rules diff --git a/home-manager/no-gui.nix b/home-manager/no-gui.nix index edacfa4..16006e4 100644 --- a/home-manager/no-gui.nix +++ b/home-manager/no-gui.nix @@ -7,6 +7,11 @@ ... }: { + imports = [ + ./progs/fish.nix + ./progs/helix.nix + ]; + home.stateVersion = "24.11"; home.packages = with pkgs; [ @@ -186,12 +191,6 @@ ${pkgs.gnupg}/bin/gpg --import ${config.age.secrets.gnupg.path} ''; - #fish shell! - programs.fish = import ./progs/fish.nix { inherit pkgs; }; - - #text editor - programs.helix = import ./progs/helix.nix { inherit pkgs; }; - # Let Home Manager install and manage itself. programs.home-manager.enable = true; } diff --git a/home-manager/progs/alacritty.nix b/home-manager/progs/alacritty.nix index 50cadaf..aada011 100644 --- a/home-manager/progs/alacritty.nix +++ b/home-manager/progs/alacritty.nix @@ -1,124 +1,130 @@ -{ pkgs }: +{ pkgs, ... }: { - #use the fish shell - shell.program = "${pkgs.fish}/bin/fish"; + programs.alacritty = { + enable = true; + package = pkgs.alacritty; + settings = { + #use the fish shell + shell.program = "${pkgs.fish}/bin/fish"; - #some programs can't handle alacritty - env.TERM = "xterm-256color"; + #some programs can't handle alacritty + env.TERM = "xterm-256color"; - window = { - #using a window manager, no decorations needed - decorations = "none"; + window = { + #using a window manager, no decorations needed + decorations = "none"; - #semi-transparent - opacity = 0.95; + #semi-transparent + opacity = 0.95; - #padding between the content of the terminal and the edge - padding = { - x = 10; - y = 10; - }; + #padding between the content of the terminal and the edge + padding = { + x = 10; + y = 10; + }; - dimensions = { - columns = 80; - lines = 40; - }; - }; - - scrolling = { - history = 1000; - multiplier = 3; - }; - - font = - let - baseFont = { - family = "JetBrains Mono Nerd Font"; - style = "Regular"; - }; - in - { - size = 12; - - normal = baseFont; - - bold = baseFont // { - style = "Bold"; + dimensions = { + columns = 80; + lines = 40; + }; }; - italic = baseFont // { - style = "Italic"; + scrolling = { + history = 1000; + multiplier = 3; }; - offset.y = 0; - glyph_offset.y = 0; - }; - - #color scheme - colors = - let - normal = { - black = "0x1b1e28"; - red = "0xd0679d"; - green = "0x5de4c7"; - yellow = "0xfffac2"; - blue = "#435c89"; - magenta = "0xfcc5e9"; - cyan = "0xadd7ff"; - white = "0xffffff"; - }; - - bright = { - black = "0xa6accd"; - red = normal.red; - green = normal.green; - yellow = normal.yellow; - blue = normal.cyan; - magenta = "0xfae4fc"; - cyan = "0x89ddff"; - white = normal.white; - }; - in - { - inherit normal bright; - primary = { - background = "0x131621"; - foreground = bright.black; - }; - - cursor = { - text = "CellBackground"; - cursor = "CellForeground"; - }; - - search = + font = let - foreground = normal.black; - background = normal.cyan; + baseFont = { + family = "JetBrains Mono Nerd Font"; + style = "Regular"; + }; in { - matches = { - inherit foreground background; + size = 12; + + normal = baseFont; + + bold = baseFont // { + style = "Bold"; }; - focused_match = { - inherit foreground background; + italic = baseFont // { + style = "Italic"; + }; + + offset.y = 0; + glyph_offset.y = 0; + }; + + #color scheme + colors = + let + normal = { + black = "0x1b1e28"; + red = "0xd0679d"; + green = "0x5de4c7"; + yellow = "0xfffac2"; + blue = "#435c89"; + magenta = "0xfcc5e9"; + cyan = "0xadd7ff"; + white = "0xffffff"; + }; + + bright = { + black = "0xa6accd"; + red = normal.red; + green = normal.green; + yellow = normal.yellow; + blue = normal.cyan; + magenta = "0xfae4fc"; + cyan = "0x89ddff"; + white = normal.white; + }; + in + { + inherit normal bright; + primary = { + background = "0x131621"; + foreground = bright.black; + }; + + cursor = { + text = "CellBackground"; + cursor = "CellForeground"; + }; + + search = + let + foreground = normal.black; + background = normal.cyan; + in + { + matches = { + inherit foreground background; + }; + + focused_match = { + inherit foreground background; + }; + }; + + selection = { + text = "CellForeground"; + background = "0x303340"; + }; + + vi_mode_cursor = { + text = "CellBackground"; + cursor = "CellForeground"; }; }; - selection = { - text = "CellForeground"; - background = "0x303340"; - }; - - vi_mode_cursor = { - text = "CellBackground"; - cursor = "CellForeground"; + cursor = { + style = "Underline"; + vi_mode_style = "Underline"; }; }; - - cursor = { - style = "Underline"; - vi_mode_style = "Underline"; }; } diff --git a/home-manager/progs/fish.nix b/home-manager/progs/fish.nix index f7a809a..e3edb97 100644 --- a/home-manager/progs/fish.nix +++ b/home-manager/progs/fish.nix @@ -1,67 +1,69 @@ -{ pkgs }: +{ pkgs, ... }: let eza = "${pkgs.eza}/bin/eza --color=always --group-directories-first"; cargo = "${pkgs.cargo}/bin/cargo"; coreutil = "${pkgs.coreutils}/bin"; in { - enable = true; + programs.fish = { + enable = true; - interactiveShellInit = '' - #disable greeting - set fish_greeting + interactiveShellInit = '' + #disable greeting + set fish_greeting - #fixes gnupg password entry - export GPG_TTY=(${coreutil}/tty) + #fixes gnupg password entry + export GPG_TTY=(${coreutil}/tty) - #pfetch on shell start (disable pkgs because of execution time) - PF_INFO="ascii title os host kernel uptime memory editor wm" ${pkgs.pfetch-rs}/bin/pfetch - ''; + #pfetch on shell start (disable pkgs because of execution time) + PF_INFO="ascii title os host kernel uptime memory editor wm" ${pkgs.pfetch-rs}/bin/pfetch + ''; - shellAliases = { - c = cargo; - cr = "${cargo} run"; - cb = "${cargo} build"; + shellAliases = { + c = cargo; + cr = "${cargo} run"; + cb = "${cargo} build"; - # I hate the red background - run0 = "run0 --background=\"\""; + # I hate the red background + run0 = "run0 --background=\"\""; - # from DistroTube's dot files: Changing "ls" to "eza" - ls = "${eza} -al"; - la = "${eza} -a"; - ll = "${eza} -l"; - lt = "${eza} -aT"; + # from DistroTube's dot files: Changing "ls" to "eza" + ls = "${eza} -al"; + la = "${eza} -a"; + ll = "${eza} -l"; + lt = "${eza} -aT"; - # gets the largest files in a git repo's history - "git-size" = '' - ${pkgs.git}/bin/git rev-list --objects --all | - ${pkgs.git}/bin/git cat-file --batch-check='%(objecttype) %(objectname) %(objectsize) %(rest)' | - ${pkgs.gnused}/bin/sed -n 's/^blob //p' | - ${coreutil}/sort --numeric-sort --key=2 | - ${coreutil}/cut -c 1-12,41- | - ${coreutil}/numfmt --field=2 --to=iec-i --suffix=B --padding=7 --round=nearest''; + # gets the largest files in a git repo's history + "git-size" = '' + ${pkgs.git}/bin/git rev-list --objects --all | + ${pkgs.git}/bin/git cat-file --batch-check='%(objecttype) %(objectname) %(objectsize) %(rest)' | + ${pkgs.gnused}/bin/sed -n 's/^blob //p' | + ${coreutil}/sort --numeric-sort --key=2 | + ${coreutil}/cut -c 1-12,41- | + ${coreutil}/numfmt --field=2 --to=iec-i --suffix=B --padding=7 --round=nearest''; - #aliases for (I think) macos commands - pbcopy = "${pkgs.wl-clipboard}/bin/wl-copy"; - pbpaste = "${pkgs.wl-clipboard}/bin/wl-paste"; + #aliases for (I think) macos commands + pbcopy = "${pkgs.wl-clipboard}/bin/wl-copy"; + pbpaste = "${pkgs.wl-clipboard}/bin/wl-paste"; - nix-cleanup = "doas nix-collect-garbage --delete-older-than 1d && doas nix-store --optimise && doas nix-store --gc"; + nix-cleanup = "doas nix-collect-garbage --delete-older-than 1d && doas nix-store --optimise && doas nix-store --gc"; + }; + + shellInit = '' + fish_add_path ~/.local/bin + fish_add_path ~/.cargo/bin + set hydro_color_pwd 62A + set hydro_color_error red + set hydro_color_duration yellow + set hydro_color_prompt green + set hydro_color_git blue + ''; + + plugins = [ + { + name = "hydro"; + src = pkgs.fishPlugins.hydro.src; + } + ]; }; - - shellInit = '' - fish_add_path ~/.local/bin - fish_add_path ~/.cargo/bin - set hydro_color_pwd 62A - set hydro_color_error red - set hydro_color_duration yellow - set hydro_color_prompt green - set hydro_color_git blue - ''; - - plugins = [ - { - name = "hydro"; - src = pkgs.fishPlugins.hydro.src; - } - ]; } diff --git a/home-manager/progs/helix.nix b/home-manager/progs/helix.nix index 76f4a5e..4b6f271 100644 --- a/home-manager/progs/helix.nix +++ b/home-manager/progs/helix.nix @@ -1,288 +1,290 @@ -{ pkgs }: +{ pkgs, ... }: { - enable = true; - package = pkgs.helix; - settings = { - theme = "my_theme"; - editor = { - cursor-shape = { - insert = "bar"; - normal = "block"; - select = "underline"; - }; + programs.helix = { + enable = true; + package = pkgs.helix; + settings = { + theme = "my_theme"; + editor = { + cursor-shape = { + insert = "bar"; + normal = "block"; + select = "underline"; + }; - file-picker = { - hidden = false; - }; + file-picker = { + hidden = false; + }; - #wrapping!! - soft-wrap.enable = true; + #wrapping!! + soft-wrap.enable = true; + }; + }; + + languages = { + language = [ + { + name = "rust"; + auto-format = true; + } + ]; + }; + + themes = { + #modified fleet_dark theme + my_theme = + let + white = "#ffffff"; + gray-120 = "#d1d1d1"; + gray-110 = "#c2c2c2"; + gray-100 = "#a0a0a0"; + gray-90 = "#898989"; + gray-80 = "#767676"; + gray-70 = "#5d5d5d"; + gray-60 = "#484848"; + gray-50 = "#383838"; + gray-40 = "#333333"; + gray-30 = "#2d2d2d"; + gray-20 = "#292929"; + gray-15 = "#1F1F1F"; + gray-10 = "#181818"; + black = "#000000"; + blue-110 = "#6daaf7"; + blue-100 = "#4d9bf8"; + blue-90 = "#3691f9"; + blue-80 = "#1a85f6"; + blue-70 = "#0273eb"; + blue-60 = "#0c6ddd"; + blue-50 = "#195eb5"; + blue-40 = "#194176"; + blue-30 = "#163764"; + blue-20 = "#132c4f"; + blue-10 = "#0b1b32"; + red-80 = "#ec7388"; + red-70 = "#ea4b67"; + red-60 = "#d93953"; + red-50 = "#ce364d"; + red-40 = "#c03248"; + red-30 = "#a72a3f"; + red-20 = "#761b2d"; + red-10 = "#390813"; + green-50 = "#4ca988"; + green-40 = "#3ea17f"; + green-30 = "#028764"; + green-20 = "#134939"; + green-10 = "#081f19"; + yellow-60 = "#f8ab17"; + yellow-50 = "#e1971b"; + yellow-40 = "#b5791f"; + yellow-30 = "#7c511a"; + yellow-20 = "#5a3a14"; + yellow-10 = "#281806"; + purple-20 = "#c07bf3"; + purple-10 = "#b35def"; + + blue = "#87C3FF"; + blue-light = "#ADD1DE"; + coral = "#CC7C8A"; + cyan = "#82D2CE"; + cyan-dark = "#779E9E"; + lime = "#A8CC7C"; + orange = "#E09B70"; + pink = "#E394DC"; + violet = "#AF9CFF"; + yellow = "#EBC88D"; + in + { + "attribute" = lime; + "type" = blue; + "type.return" = blue-light; + "type.parameter" = blue-light; + "constructor" = yellow; + "constant" = violet; + "constant.builtin.boolean" = cyan; + "constant.character" = yellow; + "constant.character.escape" = cyan; + "constant.numeric" = yellow; + "string" = pink; + "string.regexp" = cyan; + "string.special" = { + fg = yellow; + modifiers = [ "underlined" ]; + }; # .path / .url / .symbol + + "comment" = gray-90; # .line + # "comment.block" = {} # .documentation + "variable" = gray-120; # .builtin + "variable.builtin" = { + fg = coral; + }; + # "variable.other" = {} # .member + "variable.other.member" = violet; + "label" = yellow; + "keyword" = cyan; # .operator / .directive / .function + "function" = yellow; + "function.declaration" = "#EFEFEF"; + "function.macro" = lime; + "function.builtin" = lime; + "function.special" = lime; + #"function.declaration.method" = { fg = "lightest", modifiers = ["bold"] } #depends on #4892 + "tag" = blue; + "special" = lime; + "namespace" = blue; + + # used in theming + # "markup" = {} # .normal / .quote / .raw + # "markup.normal" = {} # .completion / .hover + "markup.bold" = { + modifiers = [ "bold" ]; + }; + "markup.italic" = { + modifiers = [ "italic" ]; + }; + "markup.strikethrough" = { + modifiers = [ "crossed_out" ]; + }; + "markup.heading" = { + fg = cyan; + modifiers = [ "bold" ]; + }; # .marker / .1 / .2 / .3 / .4 / .5 / .6 + "markup.list" = pink; # .unnumbered / .numbered + "markup.list.numbered" = cyan; + "markup.list.unnumbered" = cyan; + # "markup.link" = "green" + "markup.link.url" = { + fg = pink; + modifiers = [ + "italic" + "underlined" + ]; + }; + "markup.link.text" = cyan; + "markup.link.label" = purple-20; + "markup.quote" = pink; + "markup.raw" = pink; + "markup.raw.inline" = cyan; # .completion / .hover + "markup.raw.block" = "#EB83E2"; + + "diff.plus" = green-50; + "diff.minus" = red-50; + "diff.delta" = blue-80; + + # ui specific + # "ui.background" = { bg = gray-10; }; # .separator + "ui.background" = { }; + "ui.statusline" = { + fg = gray-120; + bg = gray-20; + }; # .inactive / .normal / .insert / .select + "ui.statusline.normal" = { + fg = gray-120; + bg = gray-20; + }; + "ui.statusline.inactive" = { + fg = gray-90; + }; + "ui.statusline.insert" = { + fg = gray-20; + bg = blue-90; + }; + "ui.statusline.select" = { + fg = gray-20; + bg = yellow-60; + }; + + "ui.cursor" = { + modifiers = [ "reversed" ]; + }; # .insert / .select / .match / .primary + "ui.cursor.match" = { + bg = blue-30; + }; # .insert / .select / .match / .primary + "ui.selection" = { + bg = gray-50; + }; # .primary + "ui.selection.primary" = { + bg = blue-40; + }; + + "ui.cursorline" = { + bg = gray-15; + }; + "ui.linenr" = gray-70; + "ui.linenr.selected" = gray-110; + + "ui.popup" = { + fg = gray-120; + bg = gray-20; + }; # .info + "ui.window" = { + fg = gray-50; + }; + "ui.help" = { + fg = gray-120; + bg = gray-20; + }; + "ui.menu" = { + fg = gray-120; + bg = gray-20; + }; # .selected + "ui.menu.selected" = { + fg = white; + bg = blue-40; + }; # .selected + # Calculated as #ffffff with 30% opacity + "ui.menu.scroll" = { + fg = "#dfdfdf"; + }; + + "ui.text" = gray-120; # .focus / .info + "ui.text.focus" = { + fg = white; + bg = blue-40; + }; + + "ui.virtual" = gray-90; # .whitespace + "ui.virtual.inlay-hint" = { + fg = gray-70; + }; + "ui.virtual.ruler" = { + bg = gray-20; + }; + + "hint" = gray-80; + "info" = "#A366C4"; + "warning" = "#FACb66"; + "error" = "#FF5269"; + + "diagnostic.hint" = { + underline = { + color = gray-80; + style = "line"; + }; + }; + "diagnostic.info" = { + underline = { + color = "#A366C4"; + style = "line"; + }; + }; + "diagnostic.warning" = { + underline = { + color = "#FACB66"; + style = "line"; + }; + }; + "diagnostic.error" = { + underline = { + color = "#FF5269"; + style = "line"; + }; + }; + "diagnostic.unnecessary" = { + modifiers = [ "dim" ]; + }; + "diagnostic.deprecated" = { + modifiers = [ "crossed_out" ]; + }; + }; }; }; - - languages = { - language = [ - { - name = "rust"; - auto-format = true; - } - ]; - }; - - themes = { - #modified fleet_dark theme - my_theme = - let - white = "#ffffff"; - gray-120 = "#d1d1d1"; - gray-110 = "#c2c2c2"; - gray-100 = "#a0a0a0"; - gray-90 = "#898989"; - gray-80 = "#767676"; - gray-70 = "#5d5d5d"; - gray-60 = "#484848"; - gray-50 = "#383838"; - gray-40 = "#333333"; - gray-30 = "#2d2d2d"; - gray-20 = "#292929"; - gray-15 = "#1F1F1F"; - gray-10 = "#181818"; - black = "#000000"; - blue-110 = "#6daaf7"; - blue-100 = "#4d9bf8"; - blue-90 = "#3691f9"; - blue-80 = "#1a85f6"; - blue-70 = "#0273eb"; - blue-60 = "#0c6ddd"; - blue-50 = "#195eb5"; - blue-40 = "#194176"; - blue-30 = "#163764"; - blue-20 = "#132c4f"; - blue-10 = "#0b1b32"; - red-80 = "#ec7388"; - red-70 = "#ea4b67"; - red-60 = "#d93953"; - red-50 = "#ce364d"; - red-40 = "#c03248"; - red-30 = "#a72a3f"; - red-20 = "#761b2d"; - red-10 = "#390813"; - green-50 = "#4ca988"; - green-40 = "#3ea17f"; - green-30 = "#028764"; - green-20 = "#134939"; - green-10 = "#081f19"; - yellow-60 = "#f8ab17"; - yellow-50 = "#e1971b"; - yellow-40 = "#b5791f"; - yellow-30 = "#7c511a"; - yellow-20 = "#5a3a14"; - yellow-10 = "#281806"; - purple-20 = "#c07bf3"; - purple-10 = "#b35def"; - - blue = "#87C3FF"; - blue-light = "#ADD1DE"; - coral = "#CC7C8A"; - cyan = "#82D2CE"; - cyan-dark = "#779E9E"; - lime = "#A8CC7C"; - orange = "#E09B70"; - pink = "#E394DC"; - violet = "#AF9CFF"; - yellow = "#EBC88D"; - in - { - "attribute" = lime; - "type" = blue; - "type.return" = blue-light; - "type.parameter" = blue-light; - "constructor" = yellow; - "constant" = violet; - "constant.builtin.boolean" = cyan; - "constant.character" = yellow; - "constant.character.escape" = cyan; - "constant.numeric" = yellow; - "string" = pink; - "string.regexp" = cyan; - "string.special" = { - fg = yellow; - modifiers = [ "underlined" ]; - }; # .path / .url / .symbol - - "comment" = gray-90; # .line - # "comment.block" = {} # .documentation - "variable" = gray-120; # .builtin - "variable.builtin" = { - fg = coral; - }; - # "variable.other" = {} # .member - "variable.other.member" = violet; - "label" = yellow; - "keyword" = cyan; # .operator / .directive / .function - "function" = yellow; - "function.declaration" = "#EFEFEF"; - "function.macro" = lime; - "function.builtin" = lime; - "function.special" = lime; - #"function.declaration.method" = { fg = "lightest", modifiers = ["bold"] } #depends on #4892 - "tag" = blue; - "special" = lime; - "namespace" = blue; - - # used in theming - # "markup" = {} # .normal / .quote / .raw - # "markup.normal" = {} # .completion / .hover - "markup.bold" = { - modifiers = [ "bold" ]; - }; - "markup.italic" = { - modifiers = [ "italic" ]; - }; - "markup.strikethrough" = { - modifiers = [ "crossed_out" ]; - }; - "markup.heading" = { - fg = cyan; - modifiers = [ "bold" ]; - }; # .marker / .1 / .2 / .3 / .4 / .5 / .6 - "markup.list" = pink; # .unnumbered / .numbered - "markup.list.numbered" = cyan; - "markup.list.unnumbered" = cyan; - # "markup.link" = "green" - "markup.link.url" = { - fg = pink; - modifiers = [ - "italic" - "underlined" - ]; - }; - "markup.link.text" = cyan; - "markup.link.label" = purple-20; - "markup.quote" = pink; - "markup.raw" = pink; - "markup.raw.inline" = cyan; # .completion / .hover - "markup.raw.block" = "#EB83E2"; - - "diff.plus" = green-50; - "diff.minus" = red-50; - "diff.delta" = blue-80; - - # ui specific - # "ui.background" = { bg = gray-10; }; # .separator - "ui.background" = { }; - "ui.statusline" = { - fg = gray-120; - bg = gray-20; - }; # .inactive / .normal / .insert / .select - "ui.statusline.normal" = { - fg = gray-120; - bg = gray-20; - }; - "ui.statusline.inactive" = { - fg = gray-90; - }; - "ui.statusline.insert" = { - fg = gray-20; - bg = blue-90; - }; - "ui.statusline.select" = { - fg = gray-20; - bg = yellow-60; - }; - - "ui.cursor" = { - modifiers = [ "reversed" ]; - }; # .insert / .select / .match / .primary - "ui.cursor.match" = { - bg = blue-30; - }; # .insert / .select / .match / .primary - "ui.selection" = { - bg = gray-50; - }; # .primary - "ui.selection.primary" = { - bg = blue-40; - }; - - "ui.cursorline" = { - bg = gray-15; - }; - "ui.linenr" = gray-70; - "ui.linenr.selected" = gray-110; - - "ui.popup" = { - fg = gray-120; - bg = gray-20; - }; # .info - "ui.window" = { - fg = gray-50; - }; - "ui.help" = { - fg = gray-120; - bg = gray-20; - }; - "ui.menu" = { - fg = gray-120; - bg = gray-20; - }; # .selected - "ui.menu.selected" = { - fg = white; - bg = blue-40; - }; # .selected - # Calculated as #ffffff with 30% opacity - "ui.menu.scroll" = { - fg = "#dfdfdf"; - }; - - "ui.text" = gray-120; # .focus / .info - "ui.text.focus" = { - fg = white; - bg = blue-40; - }; - - "ui.virtual" = gray-90; # .whitespace - "ui.virtual.inlay-hint" = { - fg = gray-70; - }; - "ui.virtual.ruler" = { - bg = gray-20; - }; - - "hint" = gray-80; - "info" = "#A366C4"; - "warning" = "#FACb66"; - "error" = "#FF5269"; - - "diagnostic.hint" = { - underline = { - color = gray-80; - style = "line"; - }; - }; - "diagnostic.info" = { - underline = { - color = "#A366C4"; - style = "line"; - }; - }; - "diagnostic.warning" = { - underline = { - color = "#FACB66"; - style = "line"; - }; - }; - "diagnostic.error" = { - underline = { - color = "#FF5269"; - style = "line"; - }; - }; - "diagnostic.unnecessary" = { - modifiers = [ "dim" ]; - }; - "diagnostic.deprecated" = { - modifiers = [ "crossed_out" ]; - }; - }; - }; } diff --git a/home-manager/progs/librewolf.nix b/home-manager/progs/librewolf.nix deleted file mode 100644 index c26fd13..0000000 --- a/home-manager/progs/librewolf.nix +++ /dev/null @@ -1,77 +0,0 @@ -{ pkgs, inputs, ... }: -{ - home.packages = with pkgs; [ librewolf ]; - - programs.librewolf = { - enable = true; - settings = { - "webgl.disabled" = false; - "privacy.resistFingerprinting" = false; - "privacy.clearOnShutdown.history" = false; - "privacy.clearOnShutdown.cookies" = false; - "network.cookie.lifetimePolicy" = 0; - "general.useragent.compatMode.firefox" = true; - "identity.fxaccounts.enabled" = true; - "services.sync.prefs.sync.privacy.clearOnShutdown.cookies" = false; - "services.sync.prefs.sync.privacy.clearOnShutdown_v2.cookiesAndStorage" = false; - - "general.useragent.override" = "Mozilla/5.0 (X11; Linux x86_64; rv:${pkgs.firefox.version}) Gecko/20100101 Firefox/${pkgs.firefox.version}"; - - "extensions.activeThemeID" = "firefox-compact-dark@mozilla.org"; - - # For themeing - "toolkit.legacyUserProfileCustomizations.stylesheets" = true; - "browser.tabs.drawInTitlebar" = true; - "svg.context-properties.content.enabled" = true; - - #fake location, FIT (just about) - "geo.provider.network.url" = - "data:application/json," - + builtins.toJSON { - location = { - lat = 28.0749; - lng = -80.6302; - }; - accuracy = 1.0; - }; - }; - }; - - home.file = - let - chromeTheme = ".librewolf/tckj7njq.default-release/chrome"; - - firefoxThemeFile = file: src: { - target = "${chromeTheme}/${file}"; - source = "${inputs.firefox-mod-theme}/${src}/${file}"; - recursive = true; - }; - - baseThemeFile = { - file = ""; - src = ""; - }; - - modThemeFiles = [ - { - file = "userChrome.css"; - } - { - file = "userContent.css"; - } - { - file = "ASSETS"; - } - ]; - in - builtins.listToAttrs ( - map (f: { - name = "firefox-theme-${f.file}"; - value = firefoxThemeFile f.file f.src; - }) (map (f: baseThemeFile // f) modThemeFiles) - ); - - home.sessionVariables = { - BROWSER = "librewolf"; - }; -}