diff --git a/configuration.nix b/configuration.nix
index dcbbd55..c862f08 100644
--- a/configuration.nix
+++ b/configuration.nix
@@ -1,4 +1,4 @@
-{ pkgs, ... }:
+{ inputs, pkgs, ... }:
{
# Importing necessary setup for Steam & Printing & Flutter.
@@ -83,6 +83,7 @@
"networkmanager"
"audio"
"video"
+ "render"
"adbusers"
];
hashedPassword = "$6$pdAJt1f0v7Zb13Ri$1WpKrErAp5JCb7eXs7EeeWYRMBLu5/WKDdMyGzJyYQDijG2NiywUXpAkl/8p1noxOOqYbb.MTw7JmTzhWGsT21";
@@ -96,8 +97,9 @@
accent = "pink";
font = "Fira Code";
fontSize = "9";
- # background = "${./wallpaper.png}";
+ background = "${inputs.images}/lockpaper.jpg";
loginBackground = true;
+ userIcon = true;
})
exiftool
diff --git a/flake.lock b/flake.lock
index 8b8cd62..ed57f9e 100644
--- a/flake.lock
+++ b/flake.lock
@@ -101,6 +101,18 @@
"type": "github"
}
},
+ "images": {
+ "flake": false,
+ "locked": {
+ "path": "home/themes/images",
+ "type": "path"
+ },
+ "original": {
+ "path": "home/themes/images",
+ "type": "path"
+ },
+ "parent": []
+ },
"neovim-nightly-overlay": {
"inputs": {
"flake-parts": "flake-parts",
@@ -266,6 +278,7 @@
"inputs": {
"catppuccin": "catppuccin",
"home-manager": "home-manager",
+ "images": "images",
"neovim-nightly-overlay": "neovim-nightly-overlay",
"nix-vscode-extensions": "nix-vscode-extensions",
"nixpkgs": "nixpkgs_3",
diff --git a/flake.nix b/flake.nix
index d5dede9..a3f0240 100644
--- a/flake.nix
+++ b/flake.nix
@@ -2,42 +2,49 @@
description = "My NixOS Flake";
inputs = {
- nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
+ catppuccin.url = "github:catppuccin/nix";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
- nur = {
- url = "github:nix-community/NUR";
+ images = {
+ url = "path:home/themes/images";
+ flake = false;
};
- nixvim = {
- url = "github:nix-community/nixvim";
- inputs.nixpkgs.follows = "nixpkgs";
- };
+ # impermanence.url = "github:nix-community/impermanence";
+
+ neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";
nix-vscode-extensions = {
url = "github:nix-community/nix-vscode-extensions";
inputs.nixpkgs.follows = "nixpkgs";
};
- neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";
+ nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
- catppuccin.url = "github:catppuccin/nix";
+ nixvim = {
+ url = "github:nix-community/nixvim";
+ inputs.nixpkgs.follows = "nixpkgs";
+ };
- # impermanence.url = "github:nix-community/impermanence";
+ nur = {
+ url = "github:nix-community/NUR";
+ };
};
outputs =
{
- nixpkgs,
- home-manager,
- nur,
- nixvim,
catppuccin,
+ home-manager,
+ images,
# impermanence,
+ nix-vscode-extensions,
+ nixpkgs,
+ nixvim,
+ nur,
...
}@inputs:
{
@@ -45,6 +52,7 @@
nixosConfigurations = {
eliasLaptop = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
+ specialArgs = { inherit inputs; };
modules = [
./machines/configuration-laptop.nix
./home/services/pipewire.nix
diff --git a/home/programs/alacritty.nix b/home/programs/alacritty.nix
deleted file mode 100644
index 53fa183..0000000
--- a/home/programs/alacritty.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ pkgs, ... }:
-
-# let
-# theme = builtins.fetchurl {
-# url =
-# "https://github.com/catppuccin/alacritty/raw/main/catppuccin-mocha.toml";
-# sha256 = "1idjbm5jim9b36235hgwgp9ab81fmbij42y7h85l4l7cqcbyz74l";
-# };
-# in {
-{
- home.packages = with pkgs; [
- fira-code
- alacritty-theme
- ];
-
- programs.alacritty = {
- enable = true;
- settings = {
- # env = {
- # "TERM" = "xterm-256color";
- # import = "${theme}";
- # };
- font = {
- size = 7;
- normal.family = "Fira Code";
- bold.family = "Fira Code";
- italic.family = "Fira Code";
- };
- };
- };
-}
diff --git a/home/programs/default.nix b/home/programs/default.nix
index 3f02395..7d4a570 100644
--- a/home/programs/default.nix
+++ b/home/programs/default.nix
@@ -1,18 +1,17 @@
{
imports = [
./3dprint.nix
- ./alacritty.nix
./anki.nix
./calibre.nix
./digikam.nix
- ./dolphin.nix
./dunst.nix
./eww
+ ./filebrowser.nix
./git.nix
./hyprlock.nix
- ./hyprpaper
./imv.nix
./inkscape.nix
+ ./kitty.nix
./libreoffice.nix
./messenger.nix
./nextcloud.nix
diff --git a/home/programs/eww/src/bar.yuck b/home/programs/eww/src/bar.yuck
index 254b0e4..57480a8 100644
--- a/home/programs/eww/src/bar.yuck
+++ b/home/programs/eww/src/bar.yuck
@@ -60,7 +60,6 @@
:class "${idle_inhibitor == 'start' ? 'idleOn' : 'idleOff' }"
:onclick "systemctl --user is-active hypridle.service && systemctl --user stop hypridle.service || systemctl --user start hypridle.service"
(label
- :class "${idle_inhibitor == 'start' ? 'speakerOn' : 'speakerOff'}"
:text "${idle_inhibitor == 'start' ? '' : '' }"))))
;; ── Audio ───────────────────────────────────────────────────────────
diff --git a/home/programs/eww/src/eww.scss b/home/programs/eww/src/eww.scss
index 2e958d5..abc9752 100644
--- a/home/programs/eww/src/eww.scss
+++ b/home/programs/eww/src/eww.scss
@@ -18,7 +18,7 @@
// /-- Widgets -->
// /-- Idle Inhibtor -->
.idleOn {color: $green;}
- .idleOff {color: $green;}
+ .idleOff {color: $red;}
// /-- Audio -->
.micOn {color: $green;}
.micOff {color: $red;}
diff --git a/home/programs/dolphin.nix b/home/programs/filebrowser.nix
similarity index 56%
rename from home/programs/dolphin.nix
rename to home/programs/filebrowser.nix
index 033887f..5637bbe 100644
--- a/home/programs/dolphin.nix
+++ b/home/programs/filebrowser.nix
@@ -8,6 +8,8 @@
kdePackages.baloo
nautilus
udisks
+ yazi
];
- xdg.configFile."menus/applications.menu".source = "${pkgs.kdePackages.plasma-workspace}/etc/xdg/menus/plasma-applications.menu";
+ xdg.configFile."menus/applications.menu".source =
+ "${pkgs.kdePackages.plasma-workspace}/etc/xdg/menus/plasma-applications.menu";
}
diff --git a/home/programs/hyprpaper/default.nix b/home/programs/hyprpaper/default.nix
deleted file mode 100644
index 1f93d61..0000000
--- a/home/programs/hyprpaper/default.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ pkgs, ... }:
-
-{
- home.packages = with pkgs; [
- swww
- ];
- services.swww.enable = true;
- xsession.initExtra = ''
- swww-daemon
- swww img "/etc/nixos/home/programs/swww/background_temp.jpeg" fill
- '';
-}
diff --git a/home/programs/kitty.nix b/home/programs/kitty.nix
new file mode 100644
index 0000000..ca47376
--- /dev/null
+++ b/home/programs/kitty.nix
@@ -0,0 +1,94 @@
+{ pkgs, ... }:
+
+{
+ home.packages = with pkgs; [
+ imagemagick
+ ];
+
+ home.sessionVariables = {
+ TERMINAL = "${pkgs.kitty}/bin/kitty";
+ };
+
+ programs.kitty = {
+ enable = true;
+ font = {
+ size = 3;
+ name = "Fira Code";
+ package = pkgs.fira-code;
+ };
+ settings = {
+ clear_all_shortcuts = true;
+ enabled_layouts = "splits:slit_axis=horizontal,stack";
+ enable_audio_bell = false;
+ cursor_shape = "underline";
+ confirm_os_window_close = 0;
+ allow_remote_control = true;
+ listen_on = "unix:/tmp/kitty";
+ shell_integration = true;
+ tab_bar_min_tabs = 1;
+ tab_bar_style = "powerline";
+ };
+ actionAliases = {
+ kitty_scrollback_nvim = "kitten ${pkgs.vimPlugins.kitty-scrollback-nvim}/python/kitty_scrollback_nvim.py --nvim-args --noplugin -n";
+ };
+ keybindings = {
+ "ctrl+shift+c" = "copy_to_clipboard";
+ "ctrl+shift+v" = "paste_from_clipboard";
+
+ "ctrl+shift+h" = "kitty_scrollback_nvim";
+ "ctrl+shift+g" = "kitty_scrollback_nvim --config ksb_builtin_last_cmd_output";
+
+ "ctrl+shift+u" = "input_unicode_character";
+
+ # WINDOWS
+ "ctrl+shift+p>j" = "neighboring_window down";
+ "ctrl+shift+p>k" = "neighboring_window up";
+ "ctrl+shift+p>h" = "neighboring_window left";
+ "ctrl+shift+p>l" = "neighboring_window right";
+
+ "ctrl+shift+r>j" = "kitten relative_resize.py down 3";
+ "ctrl+shift+r>k" = "kitten relative_resize.py up 3";
+ "ctrl+shift+r>h" = "kitten relative_resize.py left 3";
+ "ctrl+shift+r>l" = "kitten relative_resize.py right 3";
+
+ "ctrl+shift+p>shift+h" = "move_window left";
+ "ctrl+shift+p>shift+l" = "move_window right";
+ "ctrl+shift+p>shift+j" = "move_window down";
+ "ctrl+shift+p>shift+k" = "move_window up";
+
+ "ctrl+shift+p>s" = "launch --location=hsplit";
+ "ctrl+shift+p>v" = "launch --location=vsplit";
+ "ctrl+shift+p>p" = "launch --location=hsplit --cwd=current --bias=35";
+ "ctrl+shift+p>r" = "layout_action rotate";
+
+ "ctrl+shift+p>f" = "toggle_layout stack";
+ "ctrl+shift+p>q" = "close_window";
+
+ # TABS
+ "ctrl+shift+t>l" = "next_tab";
+ "ctrl+shift+t>h" = "previous_tab";
+ "ctrl+shift+t>n" = "new_tab";
+ "ctrl+shift+t>q" = "close_tab";
+ "ctrl+shift+t>r" = "set_tab_title";
+ "ctrl+shift+t>s" = "select_tab";
+
+ "ctrl+shift+t>shift+l" = "move_tab_forward";
+ "ctrl+shift+t>shift+h" = "move_tab_backward";
+ };
+ extraConfig = ''
+ mouse_map ctrl+shift+right press ungrabbed combine : mouse_select_command_output : kitty_scrollback_nvim --config ksb_builtin_last_visited_cmd_output
+
+ # Unset the mapping to pass the keys to neovim
+ map --when-focus-on var:IS_NVIM ctrl+shift+p>j
+ map --when-focus-on var:IS_NVIM ctrl+shift+p>k
+ map --when-focus-on var:IS_NVIM ctrl+shift+p>h
+ map --when-focus-on var:IS_NVIM ctrl+shift+p>l
+
+ map --when-focus-on var:IS_NVIM ctrl+shift+r>j
+ map --when-focus-on var:IS_NVIM ctrl+shift+r>k
+ map --when-focus-on var:IS_NVIM ctrl+shift+r>h
+ map --when-focus-on var:IS_NVIM ctrl+shift+r>l
+ '';
+ shellIntegration.enableZshIntegration = true;
+ };
+}
diff --git a/home/programs/nixvim/default.nix b/home/programs/nixvim/default.nix
index e423c98..b005886 100644
--- a/home/programs/nixvim/default.nix
+++ b/home/programs/nixvim/default.nix
@@ -39,49 +39,6 @@
syntax on
'';
-# colorscheme = "catppuccin";
-# colorschemes.catppuccin = {
-# #lazyLoad.enable = true;
-# enable = true;
-# flavour = "mocha";
-# settings = {
-# integrations = {
-# markdown = true;
-# leap = true;
-# dap = true;
-# dap_ui = true;
-# lsp_trouble = true;
-# blink_cmp = true;
-# gitsigns = true;
-# diffview = true;
-# treesitter = true;
-# barbar = true;
-# telescope = true;
-# native_lsp = {
-# enabled = true;
-# virtual_text = {
-# errors = [ "italic" ];
-# hints = [ "italic" ];
-# warnings = [ "italic" ];
-# information = [ "italic" ];
-# ok = [ "italic" ];
-# };
-# underlines = {
-# errors = [ "underline" ];
-# hints = [ "underline" ];
-# warnings = [ "underline" ];
-# information = [ "underline" ];
-# ok = [ "underline" ];
-# };
-# inlay_hints = {
-# background = true;
-# };
-# };
-# lsp_saga = true;
-# };
-# };
-# };
-#
globals = {
mapleader = " ";
maplocalleader = ",";
diff --git a/home/programs/nixvim/plugins/lualine.nix b/home/programs/nixvim/plugins/lualine.nix
index d506ffa..c65ba02 100644
--- a/home/programs/nixvim/plugins/lualine.nix
+++ b/home/programs/nixvim/plugins/lualine.nix
@@ -4,46 +4,45 @@
programs.nixvim.plugins = {
lualine = {
enable = true;
- settings = {
- theme = "catppuccin";
- # sections = {
- # lualine_c = [
- # {
- # __unkeyed-1 = {
- # __raw = ''
- # function()
- # require("trouble").statusline({
- # mode = "lsp_document_symbols",
- # groups = {},
- # title = false,
- # filter = { range = true },
- # format = "{kind_icon}{symbol.name:Normal}",
- # -- The following line is needed to fix the background color
- # -- Set it to the lualine section you want to use
- # hl_group = "lualine_c_normal",
- # }
- # ).get
- # end
- # '';
- # };
- # cond = {
- # __raw = ''
- # require("trouble").statusline({
- # mode = "lsp_document_symbols",
- # groups = {},
- # title = false,
- # filter = { range = true },
- # format = "{kind_icon}{symbol.name:Normal}",
- # -- The following line is needed to fix the background color
- # -- Set it to the lualine section you want to use
- # hl_group = "lualine_c_normal",
- # }).has
- # '';
- # };
- # }
- # ];
- # };
- };
+ # settings = {
+ # sections = {
+ # lualine_c = [
+ # {
+ # __unkeyed-1 = {
+ # __raw = ''
+ # function()
+ # require("trouble").statusline({
+ # mode = "lsp_document_symbols",
+ # groups = {},
+ # title = false,
+ # filter = { range = true },
+ # format = "{kind_icon}{symbol.name:Normal}",
+ # -- The following line is needed to fix the background color
+ # -- Set it to the lualine section you want to use
+ # hl_group = "lualine_c_normal",
+ # }
+ # ).get
+ # end
+ # '';
+ # };
+ # cond = {
+ # __raw = ''
+ # require("trouble").statusline({
+ # mode = "lsp_document_symbols",
+ # groups = {},
+ # title = false,
+ # filter = { range = true },
+ # format = "{kind_icon}{symbol.name:Normal}",
+ # -- The following line is needed to fix the background color
+ # -- Set it to the lualine section you want to use
+ # hl_group = "lualine_c_normal",
+ # }).has
+ # '';
+ # };
+ # }
+ # ];
+ # };
+ # };
};
};
}
diff --git a/home/programs/river/default.nix b/home/programs/river/default.nix
index e0af7f4..e4def5b 100644
--- a/home/programs/river/default.nix
+++ b/home/programs/river/default.nix
@@ -8,11 +8,11 @@
{
home.packages = with pkgs; [
wlr-randr
- slurp
grim
- wl-clipboard
rivercarro
ristate
+ slurp
+ wl-clipboard
];
xdg.configFile."helperscripts" = {
recursive = true;
@@ -44,7 +44,7 @@
settings = {
spawn = [
"/home/${config.home.username}/.config/helperscripts/startEww.sh"
- # "nextcloud"
+ "nextcloud"
];
spawn-tagmask = "${all_but_scratch_tag}";
keyboard-layout = "de";
@@ -68,7 +68,7 @@
};
map = {
normal = {
- "Super+Shift Return" = "spawn alacritty";
+ "Super+Shift Return" = "spawn kitty";
# Messages
"Control+Super W" = "spawn 'printf \"Hello from Wayland!\" | dunstify -'";
# System
diff --git a/home/programs/taskwarrior/default.nix b/home/programs/taskwarrior/default.nix
index b16f6ab..119bedd 100644
--- a/home/programs/taskwarrior/default.nix
+++ b/home/programs/taskwarrior/default.nix
@@ -11,9 +11,8 @@
programs.taskwarrior = {
enable = true;
- colorTheme = ./catppuccin.theme;
package = pkgs.taskwarrior3;
- dataLocation = "~/Nextcloud/tasks";
+ dataLocation = "~/tasks"; # TODO: change to Nextcloud again
config = {
uda.parentName = {
type = "string";
diff --git a/home/programs/vscode.nix b/home/programs/vscode.nix
index 9bb2a87..1f52350 100644
--- a/home/programs/vscode.nix
+++ b/home/programs/vscode.nix
@@ -3,10 +3,11 @@
{
programs.vscode = {
enable = true;
- profiles.default.extensions = with pkgs.vscode-extensions; [
- dracula-theme.theme-dracula
- vscodevim.vim
- yzhang.markdown-all-in-one
- ];
+ package = pkgs.vscodium;
+ profiles.default = {
+ enableUpdateCheck = false;
+ enableExtensionUpdateCheck = false;
+ extensions = with pkgs.vscode-extensions; [ vscodevim.vim ];
+ };
};
}
diff --git a/home/programs/zathura.nix b/home/programs/zathura.nix
index 100c786..c77e222 100644
--- a/home/programs/zathura.nix
+++ b/home/programs/zathura.nix
@@ -1,12 +1,5 @@
{ ... }:
-# let
-# theme = builtins.fetchurl {
-# url =
-# "https://raw.githubusercontent.com/catppuccin/zathura/main/src/catppuccin-mocha";
-# sha256 = "1zhx3bfz5s2wjrj87w0ryh15vgsqqfhg6dm48p63r5fmqwsak721";
-# };
-# in {
{
programs.zathura = {
enable = true;
diff --git a/home/themes/catppuccin.nix b/home/themes/catppuccin.nix
deleted file mode 100644
index 346c6a5..0000000
--- a/home/themes/catppuccin.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{
- ...
-}:
-
-{
- catppuccin = {
- enable = true;
- flavor = "mocha";
- accent = "pink";
-
- alacritty.enable = true;
- anki.enable = true;
- cursors.enable = true;
- dunst.enable = true;
- element-desktop.enable = true;
- firefox.enable = true;
- fzf.enable = true;
- hyprlock.enable = true;
- imv.enable = true;
- lazygit.enable = true;
- rofi.enable = true;
- spotify-player.enable = true;
- thunderbird.enable = true;
- vscode.enable = true;
- zathura.enable = true;
- zsh-syntax-highlighting.enable = true;
- };
-}
diff --git a/home/programs/taskwarrior/catppuccin.theme b/home/themes/catppuccin/catppuccin-taskwarrior.theme
similarity index 100%
rename from home/programs/taskwarrior/catppuccin.theme
rename to home/themes/catppuccin/catppuccin-taskwarrior.theme
diff --git a/home/themes/catppuccin/cursor.nix b/home/themes/catppuccin/cursor.nix
new file mode 100644
index 0000000..74bb66b
--- /dev/null
+++ b/home/themes/catppuccin/cursor.nix
@@ -0,0 +1,9 @@
+{ pkgs, ... }:
+
+{
+ home.pointerCursor = {
+ package = pkgs.catppuccin-cursors.mochaPink;
+ name = "Catppuccin-Mocha-Pink-Cursors";
+ gtk.enable = true;
+ };
+}
diff --git a/home/themes/catppuccin/default.nix b/home/themes/catppuccin/default.nix
new file mode 100644
index 0000000..bf5b1d5
--- /dev/null
+++ b/home/themes/catppuccin/default.nix
@@ -0,0 +1,38 @@
+{
+ inputs,
+ ...
+}:
+
+{
+ imports = [
+ ./cursor.nix
+ ./gtk.nix
+ ./hyprlock.nix
+ ./nvim.nix
+ ./taskwarrior.nix
+ ];
+
+ catppuccin = {
+ enable = false;
+ flavor = "mocha";
+ accent = "pink";
+
+ anki.enable = true;
+ dunst.enable = true;
+ element-desktop.enable = true;
+ firefox.enable = true;
+ fzf.enable = true;
+ imv.enable = true;
+ kitty.enable = true;
+ lazygit.enable = true;
+ rofi.enable = true;
+ spotify-player.enable = true;
+ thunderbird.enable = true;
+ vscode.profiles.default.enable = true;
+ zathura.enable = true;
+ zsh-syntax-highlighting.enable = true;
+ };
+
+ # ── Icon for Lock & Loginscreen ───────────────────────────────────────
+ xdg.configFile.".face.icon".source = inputs.images + /face.icon;
+}
diff --git a/home/themes/catppuccin/gtk.nix b/home/themes/catppuccin/gtk.nix
new file mode 100644
index 0000000..70e865c
--- /dev/null
+++ b/home/themes/catppuccin/gtk.nix
@@ -0,0 +1,27 @@
+{ pkgs, ... }:
+
+{
+ home.packages = with pkgs; [ dconf ];
+
+ gtk = {
+ enable = true;
+ theme = {
+ name = "Catppuccin-Mocha-Compact-Pink-Dark";
+ package = pkgs.catppuccin-gtk.override {
+ accents = [ "pink" ];
+ size = "compact";
+ tweaks = [ "rimless" ];
+ variant = "mocha";
+ };
+ };
+ font = {
+ package = pkgs.fira-code;
+ name = "Fira Code";
+ };
+ iconTheme = {
+ package = pkgs.oranchelo-icon-theme;
+ name = "Oranchelo";
+ };
+ };
+
+}
diff --git a/home/themes/catppuccin/hyprlock.nix b/home/themes/catppuccin/hyprlock.nix
new file mode 100644
index 0000000..aa18b36
--- /dev/null
+++ b/home/themes/catppuccin/hyprlock.nix
@@ -0,0 +1,102 @@
+{ inputs, ... }:
+
+let
+ variables = {
+ accent = "rgb(f5c2e7)";
+ accentPango = "##f5c2e7";
+ base = "rgb(1e1e2e)";
+ text = "rgb(cdd6f4)";
+ textPango = "##cdd6f4";
+ surface0 = "rgb(313244)";
+ red = "rgb(f38ba8)";
+ yellow = "rgb(f9e2af)";
+ font = "Fira Code";
+ };
+in
+{
+ # ── Hyprlock ──────────────────────────────────────────────────────────
+ programs.hyprlock.settings = {
+
+ general = {
+ hide_cursor = true;
+ ignore_empty_input = true;
+ };
+
+ background = {
+ monitor = "";
+ path = "${inputs.images}/lockpaper.png";
+ blur_passes = 0;
+ color = variables.base;
+ };
+
+ label = [
+ # ── Time ──────────────────────────────────────────────────────────────
+ {
+ monitor = "";
+ text = "$TIME";
+ color = variables.text;
+ font_size = 90;
+ font_family = variables.font;
+ position = "-30, 0";
+ halign = "right";
+ valign = "top";
+ }
+
+ # ── Date ──────────────────────────────────────────────────────────────
+ {
+ monitor = "";
+ text = "cmd[update:43200000] date +'%A, %d %B %Y'";
+ color = variables.text;
+ font_size = 25;
+ font_family = variables.font;
+ position = "-30, -150";
+ halign = "right";
+ valign = "top";
+ }
+
+ # ── Fingerprint ───────────────────────────────────────────────────────
+ {
+ monitor = "";
+ text = "$FPRINTPROMPT"; # TODO: No output yet check again
+ color = variables.text;
+ font_size = 14;
+ font_family = variables.font;
+ position = "0, -107";
+ halign = "center";
+ valign = "center";
+ }
+ ];
+
+ image = {
+ monitor = "";
+ path = "${inputs.images}/face.icon";
+ size = 100;
+ border_color = variables.accent;
+ position = "0, 75";
+ halign = "center";
+ valign = "center";
+ };
+
+ input-field = {
+ monitor = "";
+ size = "300, 60";
+ outline_thickness = 4;
+ dots_size = 0.2;
+ dots_spacing = 0.2;
+ dots_center = true;
+ outer_color = variables.accent;
+ inner_color = variables.surface0;
+ font_color = variables.text;
+ fade_on_empty = false;
+ placeholder_text = " Logged in as $USER";
+ hide_input = false;
+ check_color = variables.accent;
+ fail_color = variables.red;
+ fail_text = "$FAIL ($ATTEMPTS)";
+ capslock_color = variables.yellow;
+ position = "0, -47";
+ halign = "center";
+ valign = "center";
+ };
+ };
+}
diff --git a/home/themes/catppuccin/nvim.nix b/home/themes/catppuccin/nvim.nix
new file mode 100644
index 0000000..3c8db21
--- /dev/null
+++ b/home/themes/catppuccin/nvim.nix
@@ -0,0 +1,48 @@
+{ ... }:
+
+{
+ programs.nixvim = {
+ colorscheme = "catppuccin";
+ colorschemes.catppuccin = {
+ #lazyLoad.enable = true;
+ enable = true;
+ flavour = "mocha";
+ accents = "pink";
+ settings = {
+ integrations = {
+ markdown = true;
+ leap = true;
+ dap = true;
+ dap_ui = true;
+ lsp_trouble = true;
+ blink_cmp = true;
+ gitsigns = true;
+ diffview = true;
+ treesitter = true;
+ barbar = true;
+ telescope = true;
+ native_lsp = {
+ enabled = true;
+ virtual_text = {
+ errors = [ "italic" ];
+ hints = [ "italic" ];
+ warnings = [ "italic" ];
+ information = [ "italic" ];
+ ok = [ "italic" ];
+ };
+ underlines = {
+ errors = [ "underline" ];
+ hints = [ "underline" ];
+ warnings = [ "underline" ];
+ information = [ "underline" ];
+ ok = [ "underline" ];
+ };
+ inlay_hints.background = true;
+ };
+ lsp_saga = true;
+ };
+ };
+ };
+ plugins.lualine.settings.theme = "catppuccin";
+ };
+}
diff --git a/home/themes/catppuccin/taskwarrior.nix b/home/themes/catppuccin/taskwarrior.nix
new file mode 100644
index 0000000..28357c8
--- /dev/null
+++ b/home/themes/catppuccin/taskwarrior.nix
@@ -0,0 +1,5 @@
+{ ... }:
+
+{
+ programs.taskwarrior.colorTheme = ./catppuccin-taskwarrior.theme;
+}
diff --git a/home/themes/default.nix b/home/themes/default.nix
index fc1193a..867dbcd 100644
--- a/home/themes/default.nix
+++ b/home/themes/default.nix
@@ -1,5 +1,6 @@
{
imports = [
- ./catppuccin.nix
+ ./catppuccin
+ ./wallpaper.nix
];
}
diff --git a/home/themes/images/face.icon b/home/themes/images/face.icon
new file mode 100644
index 0000000..42f4518
Binary files /dev/null and b/home/themes/images/face.icon differ
diff --git a/home/themes/images/lockpaper.png b/home/themes/images/lockpaper.png
new file mode 100644
index 0000000..87d3bcd
Binary files /dev/null and b/home/themes/images/lockpaper.png differ
diff --git a/home/programs/hyprpaper/background_temp.jpeg b/home/themes/images/wallpaper.jpeg
similarity index 100%
rename from home/programs/hyprpaper/background_temp.jpeg
rename to home/themes/images/wallpaper.jpeg
diff --git a/home/themes/wallpaper.nix b/home/themes/wallpaper.nix
new file mode 100644
index 0000000..6ffbd83
--- /dev/null
+++ b/home/themes/wallpaper.nix
@@ -0,0 +1,9 @@
+{ inputs, ... }:
+
+{
+ services.wpaperd = {
+ enable = true;
+
+ settings.any.path = "${inputs.images}/wallpaper.jpeg"; # TODO: change wallpaper / make automatic pull from some website? -> animals and fallback to something if no iternet
+ };
+}