diff --git a/flake.lock b/flake.lock index 7f41e2f..bae8605 100644 --- a/flake.lock +++ b/flake.lock @@ -95,13 +95,34 @@ "type": "github" } }, + "quickshell": { + "inputs": { + "nixpkgs": [ + "nixpkgs-unstable" + ] + }, + "locked": { + "lastModified": 1774764457, + "narHash": "sha256-i0mv2GYp8yIZT++NAQL+zQ+QaKK4Po1a4jXI7VJLzTU=", + "ref": "refs/heads/master", + "rev": "9bf752ac33b2181356d33251c3b1b4dedde0bbc6", + "revCount": 779, + "type": "git", + "url": "https://git.outfoxxed.me/quickshell/quickshell" + }, + "original": { + "type": "git", + "url": "https://git.outfoxxed.me/quickshell/quickshell" + } + }, "root": { "inputs": { "firefox-addons": "firefox-addons", "home-manager": "home-manager", "home-manager-unstable": "home-manager-unstable", "nixpkgs": "nixpkgs", - "nixpkgs-unstable": "nixpkgs-unstable" + "nixpkgs-unstable": "nixpkgs-unstable", + "quickshell": "quickshell" } } }, diff --git a/flake.nix b/flake.nix index b07dcd1..5724930 100644 --- a/flake.nix +++ b/flake.nix @@ -21,6 +21,11 @@ inputs.nixpkgs.follows = "nixpkgs-unstable"; }; + quickshell = { + url = "git+https://git.outfoxxed.me/quickshell/quickshell"; + inputs.nixpkgs.follows = "nixpkgs-unstable"; + }; + }; outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, home-manager-unstable, ... }@inputs: { @@ -40,7 +45,7 @@ till = { imports = [ - ./home/minimal.nix + ./home/minimal ./users/till/home.nix ]; }; @@ -90,21 +95,21 @@ till = { imports = [ - ./home/desktop-full.nix + ./home/desktop-full ./users/till/home.nix ]; }; alt = { imports = [ - ./home/desktop-slim.nix + ./home/desktop-slim ./users/alt/home.nix ]; }; guest = { imports = [ - ./home/desktop-slim.nix + ./home/desktop-slim ./users/guest/home.nix ]; }; diff --git a/home/desktop-full.nix b/home/desktop-full.nix deleted file mode 100644 index 0ee5bda..0000000 --- a/home/desktop-full.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ ... }: - -{ - imports = [ - ./desktop-slim.nix - - ./modules/messaging.nix - ./modules/r.nix - ./modules/tex.nix - ./modules/mail.nix - ./modules/office-gui.nix - ./modules/office-cli.nix - ./modules/aichat.nix - ]; -} diff --git a/home/modules/aichat.nix b/home/desktop-full/aichat.nix similarity index 100% rename from home/modules/aichat.nix rename to home/desktop-full/aichat.nix diff --git a/home/modules/calendars.nix b/home/desktop-full/calendars.nix similarity index 100% rename from home/modules/calendars.nix rename to home/desktop-full/calendars.nix diff --git a/home/modules/office-cli.nix b/home/desktop-full/default.nix similarity index 78% rename from home/modules/office-cli.nix rename to home/desktop-full/default.nix index 90331aa..f7cbeac 100644 --- a/home/modules/office-cli.nix +++ b/home/desktop-full/default.nix @@ -2,9 +2,17 @@ { imports = [ - ./khard-dump.nix - ./tasks.nix + ../desktop-slim + + ./aichat.nix ./calendars.nix + ./khard-dump.nix + ./mail.nix + ./messaging.nix + ./office-gui.nix + ./r.nix + ./tasks.nix + ./tex.nix ]; home.packages = with pkgs; [ diff --git a/home/modules/khard-dump.nix b/home/desktop-full/khard-dump.nix similarity index 100% rename from home/modules/khard-dump.nix rename to home/desktop-full/khard-dump.nix diff --git a/home/modules/mail.nix b/home/desktop-full/mail.nix similarity index 98% rename from home/modules/mail.nix rename to home/desktop-full/mail.nix index ae349b3..50ba98c 100644 --- a/home/modules/mail.nix +++ b/home/desktop-full/mail.nix @@ -86,7 +86,8 @@ in }; neomutt = { extraConfig = '' - set my_primary_color=blue + color status blue default + color index blue default '~N' alternates ^tstraube@(em|rz)?.uni-frankfurt.de$ set smime_is_default '' + makeConfig name; @@ -106,7 +107,7 @@ in neomutt = { extraConfig = makeConfig name + '' color status green default - set my_primary_color=green + color index green default '~N' alternates @t9e.me$ @ktiu.net$ ^(tillkowski|till.straube)@gmail.com$ set reverse_name ''; @@ -128,7 +129,7 @@ in neomutt = { extraConfig = makeConfig name + '' color status red default - set my_primary_color=red + color index red default '~N' ''; }; passwordCommand = "pass ksh/systemli"; diff --git a/home/modules/messaging.nix b/home/desktop-full/messaging.nix similarity index 100% rename from home/modules/messaging.nix rename to home/desktop-full/messaging.nix diff --git a/home/desktop-full/office-cli.nix b/home/desktop-full/office-cli.nix new file mode 100644 index 0000000..a67ca90 --- /dev/null +++ b/home/desktop-full/office-cli.nix @@ -0,0 +1,4 @@ +{ pkgs, ... }: + +{ +} diff --git a/home/modules/office-gui.nix b/home/desktop-full/office-gui.nix similarity index 96% rename from home/modules/office-gui.nix rename to home/desktop-full/office-gui.nix index c40ec7c..1452405 100644 --- a/home/modules/office-gui.nix +++ b/home/desktop-full/office-gui.nix @@ -9,7 +9,6 @@ inkscape libreoffice lorem - nyxt pdfpc poppler-utils typst diff --git a/home/modules/r.nix b/home/desktop-full/r.nix similarity index 100% rename from home/modules/r.nix rename to home/desktop-full/r.nix diff --git a/home/modules/tasks.nix b/home/desktop-full/tasks.nix similarity index 95% rename from home/modules/tasks.nix rename to home/desktop-full/tasks.nix index 3f6cd0c..e5b6711 100644 --- a/home/modules/tasks.nix +++ b/home/desktop-full/tasks.nix @@ -9,7 +9,7 @@ enable = true; package = pkgs.taskwarrior3; dataLocation = "${config.xdg.dataHome}/taskwarrior/tasks"; - # colorTheme = "light-256"; + colorTheme = "no-color"; config = { report.list.columns = ["id" "depends.indicator" "priority" "project" "recur.indicator" "scheduled.countdown" "due" "until.age" "status.short" "description.count" "tags"]; report.list.labels= ["ID" "D" "Prio" "Proj" "R" "Scheduled" "Due" "Until" "S" "Description" "Tags"]; diff --git a/home/modules/tex.nix b/home/desktop-full/tex.nix similarity index 100% rename from home/modules/tex.nix rename to home/desktop-full/tex.nix diff --git a/home/desktop-slim.nix b/home/desktop-slim/default.nix similarity index 50% rename from home/desktop-slim.nix rename to home/desktop-slim/default.nix index 1382321..d1333f4 100644 --- a/home/desktop-slim.nix +++ b/home/desktop-slim/default.nix @@ -2,17 +2,17 @@ { imports = [ - ./minimal.nix + ../minimal - ./modules/devel.nix - ./modules/firefox.nix - ./modules/fonts.nix - ./modules/foot.nix - ./modules/gpg.nix - ./modules/media.nix - ./modules/niri.nix - ./modules/password-store.nix - ./modules/user-dirs.nix + ./devel.nix + ./firefox.nix + ./fonts.nix + ./gpg.nix + ./media.nix + ./niri.nix + ./foot.nix + ./password-store.nix + ./user-dirs.nix ]; home.packages = with pkgs; [ diff --git a/home/modules/devel.nix b/home/desktop-slim/devel.nix similarity index 100% rename from home/modules/devel.nix rename to home/desktop-slim/devel.nix diff --git a/home/modules/firefox.nix b/home/desktop-slim/firefox.nix similarity index 100% rename from home/modules/firefox.nix rename to home/desktop-slim/firefox.nix diff --git a/home/modules/fonts.nix b/home/desktop-slim/fonts.nix similarity index 100% rename from home/modules/fonts.nix rename to home/desktop-slim/fonts.nix diff --git a/home/desktop-slim/foot.nix b/home/desktop-slim/foot.nix new file mode 100644 index 0000000..9cdea88 --- /dev/null +++ b/home/desktop-slim/foot.nix @@ -0,0 +1,11 @@ +{ config, ... }: + +{ + programs.foot = { + enable = true; + }; + xdg.configFile."foot" = { + recursive = true; + source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/home/dotfiles/foot"; + }; +} diff --git a/home/modules/gpg.nix b/home/desktop-slim/gpg.nix similarity index 100% rename from home/modules/gpg.nix rename to home/desktop-slim/gpg.nix diff --git a/home/modules/media.nix b/home/desktop-slim/media.nix similarity index 100% rename from home/modules/media.nix rename to home/desktop-slim/media.nix diff --git a/home/desktop-slim/niri.nix b/home/desktop-slim/niri.nix new file mode 100644 index 0000000..4355279 --- /dev/null +++ b/home/desktop-slim/niri.nix @@ -0,0 +1,22 @@ +{ pkgs, config, ... }: + +{ + services.swayidle.enable = true; + services.polkit-gnome.enable = true; + + home.packages = with pkgs; [ + dsearch + wl-mirror + xwayland-satellite + ]; + + programs.foot.server.enable = true; + + # programs.ghostty.enable = true; + + # programs.firefox.preferences = { + # "widget.gtk.libadwaita-colors.enabled" = true; + # }; + + # xdg.configFile."polybar/config.ini".source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/home/dotfiles/polybar/config.ini"; +} diff --git a/home/modules/password-store.nix b/home/desktop-slim/password-store.nix similarity index 100% rename from home/modules/password-store.nix rename to home/desktop-slim/password-store.nix diff --git a/home/modules/user-dirs.nix b/home/desktop-slim/user-dirs.nix similarity index 100% rename from home/modules/user-dirs.nix rename to home/desktop-slim/user-dirs.nix diff --git a/home/dotfiles/foot/catppuccin-frappe.ini b/home/dotfiles/foot/catppuccin-frappe.ini new file mode 100644 index 0000000..6bb7093 --- /dev/null +++ b/home/dotfiles/foot/catppuccin-frappe.ini @@ -0,0 +1,34 @@ +[colors] +cursor=232634 f2d5cf +foreground=c6d0f5 +background=303446 + +regular0=51576d +regular1=e78284 +regular2=a6d189 +regular3=e5c890 +regular4=8caaee +regular5=f4b8e4 +regular6=81c8be +regular7=b5bfe2 + +bright0=626880 +bright1=e78284 +bright2=a6d189 +bright3=e5c890 +bright4=8caaee +bright5=f4b8e4 +bright6=81c8be +bright7=a5adce + +16=ef9f76 +17=f2d5cf + +selection-foreground=c6d0f5 +selection-background=4f5369 + +search-box-no-match=232634 e78284 +search-box-match=c6d0f5 414559 + +jump-labels=232634 ef9f76 +urls=8caaee diff --git a/home/dotfiles/foot/catppuccin-latte.ini b/home/dotfiles/foot/catppuccin-latte.ini new file mode 100644 index 0000000..f5e1051 --- /dev/null +++ b/home/dotfiles/foot/catppuccin-latte.ini @@ -0,0 +1,34 @@ +[colors-light] +cursor=eff1f5 dc8a78 +foreground=4c4f69 +background=eff1f5 + +regular0=5c5f77 +regular1=d20f39 +regular2=40a02b +regular3=df8e1d +regular4=1e66f5 +regular5=ea76cb +regular6=179299 +regular7=acb0be + +bright0=6c6f85 +bright1=d20f39 +bright2=40a02b +bright3=df8e1d +bright4=1e66f5 +bright5=ea76cb +bright6=179299 +bright7=bcc0cc + +16=fe640b +17=dc8a78 + +selection-foreground=4c4f69 +selection-background=ccced7 + +search-box-no-match=dce0e8 d20f39 +search-box-match=4c4f69 ccd0da + +jump-labels=dce0e8 fe640b +urls=1e66f5 diff --git a/home/dotfiles/foot/catppuccin-macchiato.ini b/home/dotfiles/foot/catppuccin-macchiato.ini new file mode 100644 index 0000000..0a4a718 --- /dev/null +++ b/home/dotfiles/foot/catppuccin-macchiato.ini @@ -0,0 +1,34 @@ +[colors] +cursor=181926 f4dbd6 +foreground=cad3f5 +background=24273a + +regular0=494d64 +regular1=ed8796 +regular2=a6da95 +regular3=eed49f +regular4=8aadf4 +regular5=f5bde6 +regular6=8bd5ca +regular7=b8c0e0 + +bright0=5b6078 +bright1=ed8796 +bright2=a6da95 +bright3=eed49f +bright4=8aadf4 +bright5=f5bde6 +bright6=8bd5ca +bright7=a5adcb + +16=f5a97f +17=f4dbd6 + +selection-foreground=cad3f5 +selection-background=454a5f + +search-box-no-match=181926 ed8796 +search-box-match=cad3f5 363a4f + +jump-labels=181926 f5a97f +urls=8aadf4 diff --git a/home/dotfiles/foot/catppuccin-mocha.ini b/home/dotfiles/foot/catppuccin-mocha.ini new file mode 100644 index 0000000..201f91c --- /dev/null +++ b/home/dotfiles/foot/catppuccin-mocha.ini @@ -0,0 +1,34 @@ +[colors-dark] +cursor=11111b f5e0dc +foreground=cdd6f4 +background=1e1e2e + +regular0=45475a +regular1=f38ba8 +regular2=a6e3a1 +regular3=f9e2af +regular4=89b4fa +regular5=f5c2e7 +regular6=94e2d5 +regular7=bac2de + +bright0=585b70 +bright1=f38ba8 +bright2=a6e3a1 +bright3=f9e2af +bright4=89b4fa +bright5=f5c2e7 +bright6=94e2d5 +bright7=a6adc8 + +16=fab387 +17=f5e0dc + +selection-foreground=cdd6f4 +selection-background=414356 + +search-box-no-match=11111b f38ba8 +search-box-match=cdd6f4 313244 + +jump-labels=11111b fab387 +urls=89b4fa diff --git a/home/dotfiles/foot/dank-colors.ini b/home/dotfiles/foot/dank-colors.ini new file mode 100644 index 0000000..6ab7f43 --- /dev/null +++ b/home/dotfiles/foot/dank-colors.ini @@ -0,0 +1,25 @@ +[colors] +foreground=181c20 +background=f7f9ff +selection-foreground=181c20 +selection-background=e3f2fd +cursor = f7f9ff 1976d2 + +regular0=101418 +regular1=c7003b +regular2=009d14 +regular3=fbee00 +regular4=1077dc +regular5=b7dbff +regular6=1976d2 +regular7=36383a +bright0=aaaeb2 +bright1=fb1e60 +bright2=07e724 +bright3=fff100 +bright4=077df1 +bright5=b7dbff +bright6=8ec7ff +bright7=f6faff + +dim-blend-towards=white diff --git a/home/dotfiles/foot/foot.ini b/home/dotfiles/foot/foot.ini index 3524125..70aad4a 100644 --- a/home/dotfiles/foot/foot.ini +++ b/home/dotfiles/foot/foot.ini @@ -1,24 +1,9 @@ -[colors-light] -alpha=1.0 -background=eeeeee -bright0=585858 -bright1=d70000 -bright2=5faf5f -bright3=ffaf00 -bright4=0087af -bright5=ff5faf -bright6=00afaf -bright7=bcbcbc -cursor=eeeeee 1c1c1c -foreground=1c1c1c -regular0=1c1c1c -regular1=af0000 -regular2=008700 -regular3=d75f00 -regular4=005faf -regular5=d70087 -regular6=005f87 -regular7=ffffff +[main] +font=JetBrains Mono:size=12 +pad=15x15 +include=~/.config/foot/catppuccin-mocha.ini +include=~/.config/foot/catppuccin-latte.ini +# include=~/.config/foot/dank-colors.ini [csd] size=0 @@ -30,10 +15,7 @@ style=beam [key-bindings] show-urls-copy=Control+Shift+y show-urls-launch=Control+Shift+g - -[main] -font=JetBrains Mono:size=12 -pad=15x15 +color-theme-toggle=Control+comma [mouse] hide-when-typing=yes diff --git a/home/dotfiles/neomutt/colors.neomuttrc b/home/dotfiles/neomutt/colors.neomuttrc index afb98b1..424a3e0 100644 --- a/home/dotfiles/neomutt/colors.neomuttrc +++ b/home/dotfiles/neomutt/colors.neomuttrc @@ -1,11 +1,5 @@ -# Colors - -color status $my_primary_color default -color index $my_primary_color default '~N' - -# color indicator default foreground -color index_flags brightmagenta default '.*' -color index_date cyan default +# color index_flags brightmagenta default '.*' +# color index_date cyan default color header brightblack default ".*" color header brightgreen default "^(Subject)" color header yellow default "^(From|To|CC|BCC)" diff --git a/home/dotfiles/polybar/config.ini b/home/dotfiles/polybar/config.ini deleted file mode 100644 index 0c89cda..0000000 --- a/home/dotfiles/polybar/config.ini +++ /dev/null @@ -1,186 +0,0 @@ -;========================================================== -; -; -; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗ -; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗ -; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝ -; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗ -; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║ -; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ -; -; -; To learn more about how to configure Polybar -; go to https://github.com/polybar/polybar -; -; The README contains a lot of information -; -;========================================================== - -[colors] -background = #282A2E -background-alt = #373B41 -foreground = #C5C8C6 -primary = #F0C674 -secondary = #8ABEB7 -alert = #A54242 -disabled = #707880 - -[bar/example] -width = 100% -height = 35pt -radius = 0 - -offset-x = 0 - -; dpi = 96 - -background = ${colors.background} -foreground = ${colors.foreground} - -line-size = 3pt - -border-size = 4pt -border-color = #00000000 - -padding-left = 0 -padding-right = 1 - -module-margin = 1 - -separator = | -separator-foreground = ${colors.disabled} - -font-0 = monospace;2 - -modules-left = xworkspaces xwindow -modules-right = filesystem pulseaudio xkeyboard memory cpu wlan eth date - -cursor-click = pointer -cursor-scroll = ns-resize - -enable-ipc = true - -; wm-restack = generic -; wm-restack = bspwm -; wm-restack = i3 - -override-redirect = false - -; This module is not active by default (to enable it, add it to one of the -; modules-* list above). -; Please note that only a single tray can exist at any time. If you launch -; multiple bars with this module, only a single one will show it, the others -; will produce a warning. Which bar gets the module is timing dependent and can -; be quite random. -; For more information, see the documentation page for this module: -; https://polybar.readthedocs.io/en/stable/user/modules/tray.html -[module/systray] -type = internal/tray - -format-margin = 8pt -tray-spacing = 16pt - -[module/xworkspaces] -type = internal/xworkspaces - -label-active = %name% -label-active-background = ${colors.background-alt} -label-active-underline= ${colors.primary} -label-active-padding = 1 - -label-occupied = %name% -label-occupied-padding = 1 - -label-urgent = %name% -label-urgent-background = ${colors.alert} -label-urgent-padding = 1 - -label-empty = %name% -label-empty-foreground = ${colors.disabled} -label-empty-padding = 1 - -[module/xwindow] -type = internal/xwindow -label = %title:0:60:...% - -[module/filesystem] -type = internal/fs -interval = 25 - -mount-0 = / - -label-mounted = %{F#F0C674}%mountpoint%%{F-} %percentage_used%% - -label-unmounted = %mountpoint% not mounted -label-unmounted-foreground = ${colors.disabled} - -[module/pulseaudio] -type = internal/pulseaudio - -format-volume-prefix = "VOL " -format-volume-prefix-foreground = ${colors.primary} -format-volume = - -label-volume = %percentage%% - -label-muted = muted -label-muted-foreground = ${colors.disabled} - -[module/xkeyboard] -type = internal/xkeyboard -blacklist-0 = num lock - -label-layout = %layout% -label-layout-foreground = ${colors.primary} - -label-indicator-padding = 2 -label-indicator-margin = 1 -label-indicator-foreground = ${colors.background} -label-indicator-background = ${colors.secondary} - -[module/memory] -type = internal/memory -interval = 2 -format-prefix = "RAM " -format-prefix-foreground = ${colors.primary} -label = %percentage_used:2%% - -[module/cpu] -type = internal/cpu -interval = 2 -format-prefix = "CPU " -format-prefix-foreground = ${colors.primary} -label = %percentage:2%% - -[network-base] -type = internal/network -interval = 5 -format-connected = -format-disconnected = -label-disconnected = %{F#F0C674}%ifname%%{F#707880} disconnected - -[module/wlan] -inherit = network-base -interface-type = wireless -label-connected = %{F#F0C674}%ifname%%{F-} %essid% %local_ip% - -[module/eth] -inherit = network-base -interface-type = wired -label-connected = %{F#F0C674}%ifname%%{F-} %local_ip% - -[module/date] -type = internal/date -interval = 1 - -date = %H:%M -date-alt = %Y-%m-%d %H:%M:%S - -label = %date% -label-foreground = ${colors.primary} - -[settings] -screenchange-reload = true -pseudo-transparency = true - -; vim:ft=dosini diff --git a/home/dotfiles/waybar/config.jsonc b/home/dotfiles/waybar/config.jsonc deleted file mode 100644 index a330204..0000000 --- a/home/dotfiles/waybar/config.jsonc +++ /dev/null @@ -1,219 +0,0 @@ -// -*- mode: jsonc -*- -{ - // "layer": "top", // Waybar at top layer - // "position": "bottom", // Waybar position (top|bottom|left|right) - "height": 20, // Waybar height (to be removed for auto height) - // "width": 1280, // Waybar width - "spacing": 2, // Gaps between modules (4px) - // Choose the order of the modules - "modules-left": [ - "sway/workspaces", - "sway/mode", - "sway/scratchpad", - "custom/media" - ], - "modules-center": [ - "sway/window" - ], - "modules-right": [ - "mpd", - "idle_inhibitor", - "pulseaudio", - "network", - "power-profiles-daemon", - "cpu", - "memory", - "temperature", - "backlight", - "keyboard-state", - "sway/language", - "battery", - "battery#bat2", - "clock", - "tray", - "custom/power" - ], - // Modules configuration - // "sway/workspaces": { - // "disable-scroll": true, - // "all-outputs": true, - // "warp-on-scroll": false, - // "format": "{name}: {icon}", - // "format-icons": { - // "1": "", - // "2": "", - // "3": "", - // "4": "", - // "5": "", - // "urgent": "", - // "focused": "", - // "default": "" - // } - // }, - "keyboard-state": { - "numlock": true, - "capslock": true, - "format": "{name} {icon}", - "format-icons": { - "locked": "", - "unlocked": "" - } - }, - "sway/mode": { - "format": "{}" - }, - "sway/scratchpad": { - "format": "{icon} {count}", - "show-empty": false, - "format-icons": ["", ""], - "tooltip": true, - "tooltip-format": "{app}: {title}" - }, - "mpd": { - "format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ", - "format-disconnected": "Disconnected ", - "format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ", - "unknown-tag": "N/A", - "interval": 5, - "consume-icons": { - "on": " " - }, - "random-icons": { - "off": " ", - "on": " " - }, - "repeat-icons": { - "on": " " - }, - "single-icons": { - "on": "1 " - }, - "state-icons": { - "paused": "", - "playing": "" - }, - "tooltip-format": "MPD (connected)", - "tooltip-format-disconnected": "MPD (disconnected)" - }, - "idle_inhibitor": { - "format": "{icon}", - "format-icons": { - "activated": "", - "deactivated": "" - } - }, - "tray": { - // "icon-size": 21, - "spacing": 10, - // "icons": { - // "blueman": "bluetooth", - // "TelegramDesktop": "$HOME/.local/share/icons/hicolor/16x16/apps/telegram.png" - // } - }, - "clock": { - // "timezone": "America/New_York", - "tooltip-format": "{:%Y %B}\n{calendar}", - "format-alt": "{:%Y-%m-%d}" - }, - "cpu": { - "format": "{usage}% ", - "tooltip": false - }, - "memory": { - "format": "{}% " - }, - "temperature": { - // "thermal-zone": 2, - // "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input", - "critical-threshold": 80, - // "format-critical": "{temperatureC}°C {icon}", - "format": "{temperatureC}°C {icon}", - "format-icons": ["󰉬", "", "󰉪"] - }, - "backlight": { - // "device": "acpi_video1", - "format": "{percent}% {icon}", - "format-icons": ["", "", "", "", "", "", "", "", ""] - }, - "battery": { - "states": { - // "good": 95, - "warning": 30, - "critical": 15 - }, - "format": "{capacity}% {icon}", - "format-full": "{capacity}% {icon}", - "format-charging": "{capacity}% 󰃨", - "format-plugged": "{capacity}% ", - "format-alt": "{time} {icon}", - // "format-good": "", // An empty format will hide the module - // "format-full": "", - "format-icons": ["", "", "", "", ""] - }, - "battery#bat2": { - "bat": "BAT2" - }, - "power-profiles-daemon": { - "format": "{icon}", - "tooltip-format": "Power profile: {profile}\nDriver: {driver}", - "tooltip": true, - "format-icons": { - "default": "", - "performance": "", - "balanced": "", - "power-saver": "" - } - }, - "network": { - // "interface": "wlp2*", // (Optional) To force the use of this interface - "format-wifi": "{essid} ({signalStrength}%) ", - "format-ethernet": "{ipaddr}/{cidr} 󰊗", - "tooltip-format": "{ifname} via {gwaddr} 󰊗", - "format-linked": "{ifname} (No IP) 󰊗", - "format-disconnected": "Disconnected ⚠", - "format-alt": "{ifname}: {ipaddr}/{cidr}" - }, - "pulseaudio": { - // "scroll-step": 1, // %, can be a float - "format": "{volume}% {icon} {format_source}", - "format-bluetooth": "{volume}% {icon} {format_source}", - "format-bluetooth-muted": "󰅶 {icon} {format_source}", - "format-muted": "󰅶 {format_source}", - "format-source": "{volume}% ", - "format-source-muted": "", - "format-icons": { - "headphone": "", - "hands-free": "󰂑", - "headset": "󰂑", - "phone": "", - "portable": "", - "car": "", - "default": ["", "", ""] - }, - "on-click": "pavucontrol" - }, - "custom/media": { - "format": "{icon} {text}", - "return-type": "json", - "max-length": 40, - "format-icons": { - "spotify": "", - "default": "🎜" - }, - "escape": true, - "exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder - // "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name - }, - "custom/power": { - "format" : "⏻ ", - "tooltip": false, - "menu": "on-click", - "menu-file": "$HOME/.config/waybar/power_menu.xml", // Menu file in resources folder - "menu-actions": { - "shutdown": "shutdown", - "reboot": "reboot", - "suspend": "systemctl suspend", - "hibernate": "systemctl hibernate" - } - } -} diff --git a/home/minimal.nix b/home/minimal/default.nix similarity index 58% rename from home/minimal.nix rename to home/minimal/default.nix index 0f9547a..97340c3 100644 --- a/home/minimal.nix +++ b/home/minimal/default.nix @@ -6,11 +6,11 @@ home.homeDirectory = "/home/${config.home.username}"; imports = [ - ./modules/fish.nix - ./modules/vifm.nix - ./modules/nvim - ./modules/tmux.nix - ./modules/git.nix + ./fish.nix + ./vifm.nix + ./nvim + ./tmux.nix + ./git.nix ]; home.packages = with pkgs; [ @@ -30,13 +30,13 @@ ]; home.shellAliases = { - cdg = "cd \$(git rev-parse --show-toplevel)"; - dmy = "date +'%-d.-%-m.%Y'"; - du = "dust"; - ls = "eza"; - tree = "eza --tree"; - top = "btm --battery"; - ymd = "date +'%Y-%m-%d'"; + cdg = "cd \$(git rev-parse --show-toplevel)"; + dmy = "date +'%-d.-%-m.%Y'"; + du = "dust"; + ls = "eza"; + tree = "eza --tree"; + top = "btm --battery"; + ymd = "date +'%Y-%m-%d'"; }; programs.nix-index = { @@ -46,7 +46,6 @@ programs.bottom = { enable = true; - # settings.styles.theme = "default-light"; }; home.stateVersion = "22.11"; diff --git a/home/modules/fish.nix b/home/minimal/fish.nix similarity index 100% rename from home/modules/fish.nix rename to home/minimal/fish.nix diff --git a/home/modules/git.nix b/home/minimal/git.nix similarity index 100% rename from home/modules/git.nix rename to home/minimal/git.nix diff --git a/home/modules/nvim/config.vim b/home/minimal/nvim/config.vim similarity index 93% rename from home/modules/nvim/config.vim rename to home/minimal/nvim/config.vim index 94efc9a..57ae46f 100644 --- a/home/modules/nvim/config.vim +++ b/home/minimal/nvim/config.vim @@ -31,6 +31,9 @@ let g:netrw_fastbrowse = 0 nnoremap Y y$ +nnoremap cd :lcd %:h +nnoremap ew :e =expand("%:p:h") . "/" + nnoremap gF :edit nnoremap gx :! xdg-open diff --git a/home/modules/nvim/default.nix b/home/minimal/nvim/default.nix similarity index 100% rename from home/modules/nvim/default.nix rename to home/minimal/nvim/default.nix diff --git a/home/modules/nvim/dotfiles/after/ftplugin/markdown.vim b/home/minimal/nvim/dotfiles/after/ftplugin/markdown.vim similarity index 100% rename from home/modules/nvim/dotfiles/after/ftplugin/markdown.vim rename to home/minimal/nvim/dotfiles/after/ftplugin/markdown.vim diff --git a/home/modules/nvim/dotfiles/autocommands.vim b/home/minimal/nvim/dotfiles/autocommands.vim similarity index 100% rename from home/modules/nvim/dotfiles/autocommands.vim rename to home/minimal/nvim/dotfiles/autocommands.vim diff --git a/home/modules/nvim/dotfiles/ftplugin/markdown.vim b/home/minimal/nvim/dotfiles/ftplugin/markdown.vim similarity index 100% rename from home/modules/nvim/dotfiles/ftplugin/markdown.vim rename to home/minimal/nvim/dotfiles/ftplugin/markdown.vim diff --git a/home/modules/nvim/dotfiles/ftplugin/nix.vim b/home/minimal/nvim/dotfiles/ftplugin/nix.vim similarity index 100% rename from home/modules/nvim/dotfiles/ftplugin/nix.vim rename to home/minimal/nvim/dotfiles/ftplugin/nix.vim diff --git a/home/modules/nvim/dotfiles/ftplugin/r.vim b/home/minimal/nvim/dotfiles/ftplugin/r.vim similarity index 100% rename from home/modules/nvim/dotfiles/ftplugin/r.vim rename to home/minimal/nvim/dotfiles/ftplugin/r.vim diff --git a/home/modules/nvim/dotfiles/ftplugin/rmd.vim b/home/minimal/nvim/dotfiles/ftplugin/rmd.vim similarity index 100% rename from home/modules/nvim/dotfiles/ftplugin/rmd.vim rename to home/minimal/nvim/dotfiles/ftplugin/rmd.vim diff --git a/home/modules/nvim/dotfiles/ftplugin/tex.vim b/home/minimal/nvim/dotfiles/ftplugin/tex.vim similarity index 100% rename from home/modules/nvim/dotfiles/ftplugin/tex.vim rename to home/minimal/nvim/dotfiles/ftplugin/tex.vim diff --git a/home/modules/nvim/dotfiles/ftplugin/typescript.vim b/home/minimal/nvim/dotfiles/ftplugin/typescript.vim similarity index 100% rename from home/modules/nvim/dotfiles/ftplugin/typescript.vim rename to home/minimal/nvim/dotfiles/ftplugin/typescript.vim diff --git a/home/modules/nvim/dotfiles/syntax/rmd.vim b/home/minimal/nvim/dotfiles/syntax/rmd.vim similarity index 100% rename from home/modules/nvim/dotfiles/syntax/rmd.vim rename to home/minimal/nvim/dotfiles/syntax/rmd.vim diff --git a/home/modules/nvim/lsp.lua b/home/minimal/nvim/lsp.lua similarity index 100% rename from home/modules/nvim/lsp.lua rename to home/minimal/nvim/lsp.lua diff --git a/home/modules/nvim/nvim-cmp.lua b/home/minimal/nvim/nvim-cmp.lua similarity index 100% rename from home/modules/nvim/nvim-cmp.lua rename to home/minimal/nvim/nvim-cmp.lua diff --git a/home/modules/tmux.nix b/home/minimal/tmux.nix similarity index 100% rename from home/modules/tmux.nix rename to home/minimal/tmux.nix diff --git a/home/minimal/vifm.nix b/home/minimal/vifm.nix new file mode 100644 index 0000000..900cf0e --- /dev/null +++ b/home/minimal/vifm.nix @@ -0,0 +1,12 @@ +{ config, pkgs, ... }: + +{ + programs.vifm = { + enable = true; + extraConfig = " + set vicmd=nvim + filetype * xdg-open + colorscheme Default + "; + }; +} diff --git a/home/modules/foot.nix b/home/modules/foot.nix deleted file mode 100644 index 4e54a1f..0000000 --- a/home/modules/foot.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ config, pkgs, lib, ... }: - -{ - programs.foot = { - enable = true; - }; - xdg.configFile."foot/foot.ini".source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/home/dotfiles/foot/foot.ini"; -} diff --git a/home/modules/niri.nix b/home/modules/niri.nix deleted file mode 100644 index 9cc652e..0000000 --- a/home/modules/niri.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ pkgs, config, ... }: - -{ - services.swayidle.enable = true; # idle management daemon - services.polkit-gnome.enable = true; # polkit - - home.packages = with pkgs; [ - wl-mirror - xwayland-satellite - ]; - - programs.ghostty.enable = true; - - # xdg.configFile."polybar/config.ini".source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/home/dotfiles/polybar/config.ini"; -} diff --git a/home/modules/vifm.nix b/home/modules/vifm.nix deleted file mode 100644 index d68ebbd..0000000 --- a/home/modules/vifm.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ config, pkgs, ... }: - -{ - programs.vifm = { - enable = true; - extraConfig = " - colorscheme light - set vicmd=nvim - filetype * xdg-open - "; - }; - xdg.configFile."vifm/colors/light.vifm".text = '' - highlight clear - highlight Win cterm=none ctermfg=black ctermbg=default - highlight Directory cterm=none ctermfg=cyan ctermbg=default - highlight Link cterm=none ctermfg=yellow ctermbg=default - highlight BrokenLink cterm=none ctermfg=white ctermbg=red - highlight Socket cterm=none ctermfg=red ctermbg=default - highlight Device cterm=none ctermfg=red ctermbg=default - highlight Fifo cterm=none ctermfg=black ctermbg=cyan - highlight Executable cterm=none ctermfg=green ctermbg=default - highlight Selected cterm=bold ctermfg=magenta ctermbg=default - highlight CurrLine cterm=bold ctermfg=white ctermbg=magenta - highlight TopLine cterm=bold ctermfg=magenta ctermbg=default - highlight TopLineSel cterm=bold ctermfg=magenta ctermbg=white - highlight StatusLine cterm=bold ctermfg=magenta ctermbg=white - highlight CmdLine cterm=bold ctermfg=magenta ctermbg=default - highlight Border cterm=none ctermfg=default ctermbg=default - ''; -} diff --git a/home/modules/gnome.nix b/home/unused/gnome.nix similarity index 100% rename from home/modules/gnome.nix rename to home/unused/gnome.nix diff --git a/home/modules/hyprland.nix b/home/unused/hyprland.nix similarity index 100% rename from home/modules/hyprland.nix rename to home/unused/hyprland.nix diff --git a/home/modules/plasma.nix b/home/unused/plasma.nix similarity index 100% rename from home/modules/plasma.nix rename to home/unused/plasma.nix diff --git a/hosts/nova/default.nix b/hosts/nova/default.nix index 8afaee2..a28c920 100644 --- a/hosts/nova/default.nix +++ b/hosts/nova/default.nix @@ -9,9 +9,8 @@ ../../users/guest/system.nix ../../system ../../system/desktop + ../../system/desktop/laptop.nix ../../system/desktop/ergodox-udev.nix - # ../../system/desktop/gnome.nix - ../../system/desktop/cosmic.nix ../../system/desktop/niri.nix ../../system/desktop/steam.nix ../../system/desktop/yubikey-pam.nix diff --git a/system/desktop/default.nix b/system/desktop/default.nix index b88c446..2e6ca6c 100644 --- a/system/desktop/default.nix +++ b/system/desktop/default.nix @@ -34,6 +34,8 @@ virtiofsd ]; + environment.pathsToLink = [ "/share/foot" ]; + fonts.packages = with pkgs; [ jetbrains-mono ]; diff --git a/system/desktop/laptop.nix b/system/desktop/laptop.nix new file mode 100644 index 0000000..0b88d9b --- /dev/null +++ b/system/desktop/laptop.nix @@ -0,0 +1,22 @@ +{ ... }: + +{ + services.thermald.enable = true; + + services.auto-cpufreq.enable = true; + services.auto-cpufreq.settings = { + battery = { + governor = "powersave"; + energy_performance_preference = "power"; + turbo = "never"; + enable_thresholds = true; + start_threshold = 20; + stop_threshold = 80; + }; + charger = { + governor = "performance"; + energy_performance_preference = "performance"; + turbo = "auto"; + }; + }; +} diff --git a/system/desktop/niri.nix b/system/desktop/niri.nix index f2e6623..7f62cd4 100644 --- a/system/desktop/niri.nix +++ b/system/desktop/niri.nix @@ -1,12 +1,34 @@ -{ lib, ... }: +{ lib, pkgs, inputs, ... }: { programs.niri.enable = true; - programs.dms-shell.enable = true; - services.gnome.gnome-keyring.enable = lib.mkForce false; - programs.nm-applet.enable = false; - # programs.firefox.preferences = { - # "widget.gtk.libadwaita-colors.enabled" = false; - # }; + programs.dms-shell = { + enable = true; + systemd.enable = true; + quickshell.package = inputs.quickshell.packages.${pkgs.stdenv.hostPlatform.system}.quickshell; + }; + + services.displayManager.dms-greeter = { + enable = true; + compositor.name = "niri"; + configHome = "/home/till"; + }; + + services.gnome.gnome-keyring.enable = lib.mkForce false; + programs.nm-applet.enable = lib.mkForce false; + + environment.systemPackages = with pkgs; [ + nirius + ]; + + systemd.user.services."niriusd" = { + enable = true; + wantedBy = [ "niri.service" ]; + after = [ "niri.service" ]; + description = "Nirius daemon"; + serviceConfig = { + ExecStart = "${pkgs.nirius}/bin/niriusd"; + }; + }; }