diff --git a/home/programs/alacritty.nix b/home/programs/alacritty.nix new file mode 100644 index 0000000..929a63b --- /dev/null +++ b/home/programs/alacritty.nix @@ -0,0 +1,18 @@ +{ pkgs, ... }: + +{ + home.packages = with pkgs; [ + fira-code + ]; + + programs.alacritty = { + enable = true; + + settings.font = { + size = 8; + 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 7d4a570..79a51b5 100644 --- a/home/programs/default.nix +++ b/home/programs/default.nix @@ -1,20 +1,18 @@ { imports = [ ./3dprint.nix + ./alacritty.nix ./anki.nix ./calibre.nix ./digikam.nix - ./dunst.nix ./eww ./filebrowser.nix ./git.nix ./hyprlock.nix ./imv.nix ./inkscape.nix - ./kitty.nix ./libreoffice.nix ./messenger.nix - ./nextcloud.nix ./nixvim ./picard.nix ./prismlauncher.nix @@ -30,5 +28,6 @@ ./zathura.nix ./zoom.nix ./zsh.nix + ./zk.nix ]; } diff --git a/home/programs/dunst.nix b/home/programs/dunst.nix deleted file mode 100644 index f13545c..0000000 --- a/home/programs/dunst.nix +++ /dev/null @@ -1,49 +0,0 @@ -{ ... }: - -{ - services.dunst = { - enable = true; - # settings = { - # global = { - # # Your exact styling - unchanged - # monitor = 1; - # origin = "top-right"; - # offset = "15x25"; - # width = 300; - # height = 100; - # gap_size = 5; - # notification_limit = 5; - # # font removed as requested - # frame_width = 1; - # separator_color = "frame"; - # corner_radius = 12; - # corners = "top-left,bottom"; - # progress_bar_corner_radius = 8; - # progress_bar_corners = "top-left,bottom-right"; - # timeout = 5; - # idle_threshold = 120; - # max_icon_size = 64; - # enable_recursive_icon_lookup = true; - # show_indicators = true; - # sticky_history = true; - # history_length = 20; - # mouse_left_click = "close_current"; - # mouse_right_click = "close_all"; - # mouse_middle_click = "context_all"; - # format = "%a\\n%s\\n%b"; - # }; - # - # urgency_low = { - # timeout = 3; - # }; - # - # urgency_normal = { - # timeout = 5; - # }; - # - # urgency_critical = { - # timeout = 0; - # }; - # }; - }; -} diff --git a/home/programs/kitty.nix b/home/programs/kitty.nix index ca47376..46e5352 100644 --- a/home/programs/kitty.nix +++ b/home/programs/kitty.nix @@ -11,11 +11,6 @@ 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"; diff --git a/home/programs/nextcloud.nix b/home/programs/nextcloud.nix deleted file mode 100644 index caacb4f..0000000 --- a/home/programs/nextcloud.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ pkgs, ... }: - -{ - home.packages = with pkgs; [ nextcloud-client ]; -} diff --git a/home/programs/river/default.nix b/home/programs/river/default.nix index e4def5b..7f33a6b 100644 --- a/home/programs/river/default.nix +++ b/home/programs/river/default.nix @@ -8,7 +8,6 @@ { home.packages = with pkgs; [ wlr-randr - grim rivercarro ristate slurp @@ -44,7 +43,6 @@ settings = { spawn = [ "/home/${config.home.username}/.config/helperscripts/startEww.sh" - "nextcloud" ]; spawn-tagmask = "${all_but_scratch_tag}"; keyboard-layout = "de"; @@ -68,25 +66,14 @@ }; map = { normal = { - "Super+Shift Return" = "spawn kitty"; + "Super+Shift Return" = "spawn alacritty"; # Messages "Control+Super W" = "spawn 'printf \"Hello from Wayland!\" | dunstify -'"; # System "Super P" = "spawn 'rofi -show drun'"; "Super+Shift C" = "close"; # Screenshots - "None Print" = - "spawn 'grim ~/Pictures/screenhot_$(date +%F_%H-%M-%S).png;/home/${config.home.username}/.config/helperscripts/screenshot-whole-file.sh'"; # Whole Screen to File - "Super Print" = - "spawn 'grim -g \"$(slurp)\" ~/Pictures/screenshot_$(date +%F_%H-%M-%S).png;/home/${config.home.username}/.config/helperscripts/screenshot-selection-file.sh'"; # Selection to File - "Shift Print" = - "spawn 'grim -g \"$(riverctl windows --focused | awk '{print $3,$4,$5,$6}')\" ~/Pictures/active_window_$(date +%F_%H-%M-%S).png;/home/${config.home.username}/.config/helperscripts/screenshot-active-window.sh'"; # Active Window to File - "Control Print" = - "spawn 'grim -g \"$(slurp)\" - | wl-copy --type image/png;/home/${config.home.username}/.config/helperscripts/screenshot-whole-clipboard.sh'"; # Whole Screen to Clipboard - "Control+Super Print" = - "spawn 'grim -g \"$(slurp)\" - | wl-copy --type image/png;/home/${config.home.username}/.config/helperscripts/screenshot-selection-clipboard.sh'"; # Selection to Clipboard - "Control+Shift Print" = - "spawn 'grim -g \"$(riverctl windows --focused | awk '{print $3,$4,$5,$6}')\" - | wl-copy --type image/png;/home/${config.home.username}/.config/helperscripts/screenshot-active-clipboard.sh'"; # Active Window to Clipboard + "None Print" = "spawn 'flameshot gui'"; # Window Control "Super J" = "focus-view next"; "Super K" = "focus-view previous"; diff --git a/home/programs/river/src/screenshot-active-clipboard.sh b/home/programs/river/src/screenshot-active-clipboard.sh deleted file mode 100755 index 30a1d7c..0000000 --- a/home/programs/river/src/screenshot-active-clipboard.sh +++ /dev/null @@ -1 +0,0 @@ -dunstify "Screenshot" "Active Window Screen to Clipboard" diff --git a/home/programs/river/src/screenshot-active-file.sh b/home/programs/river/src/screenshot-active-file.sh deleted file mode 100755 index d335539..0000000 --- a/home/programs/river/src/screenshot-active-file.sh +++ /dev/null @@ -1 +0,0 @@ -dunstify "Screenshot" "Active Window to File (/home/$USER/Pictures/screenshot-$(date -u +%Y-%m-%d-%H:%M:%S))" diff --git a/home/programs/river/src/screenshot-selection-clipboard.sh b/home/programs/river/src/screenshot-selection-clipboard.sh deleted file mode 100755 index 93d565e..0000000 --- a/home/programs/river/src/screenshot-selection-clipboard.sh +++ /dev/null @@ -1 +0,0 @@ -dunstify "Screenshot" "Selection to Clipboard" diff --git a/home/programs/river/src/screenshot-selection-file.sh b/home/programs/river/src/screenshot-selection-file.sh deleted file mode 100755 index b1671ae..0000000 --- a/home/programs/river/src/screenshot-selection-file.sh +++ /dev/null @@ -1 +0,0 @@ -dunstify "Screenshot" "Selection to File (/home/$USER/Pictures/screenshot-$(date -u +%Y-%m-%d-%H:%M:%S))" diff --git a/home/programs/river/src/screenshot-whole-clipboard.sh b/home/programs/river/src/screenshot-whole-clipboard.sh deleted file mode 100755 index c0aa236..0000000 --- a/home/programs/river/src/screenshot-whole-clipboard.sh +++ /dev/null @@ -1 +0,0 @@ -dunstify "Screenshot" "Whole Screen to Clipboard" diff --git a/home/programs/river/src/screenshot-whole-file.sh b/home/programs/river/src/screenshot-whole-file.sh deleted file mode 100755 index 9ac6e5c..0000000 --- a/home/programs/river/src/screenshot-whole-file.sh +++ /dev/null @@ -1 +0,0 @@ -dunstify "Screenshot" "Whole Screen to File (/home/$USER/Pictures/screenshot-$(date -u +%Y-%m-%d-%H:%M:%S))" diff --git a/home/programs/zk.nix b/home/programs/zk.nix new file mode 100644 index 0000000..2752d60 --- /dev/null +++ b/home/programs/zk.nix @@ -0,0 +1,43 @@ +{ ... }: + +{ + programs.zk = { + enable = true; + settings = { + note.template = "default.md"; + format.markdow = { + hashtags = true; + colon-tags = false; + multiword-tags = false; + }; + tool.fzf-preview = "bat -p --color always {-1}"; + notebook = { + dir = "~/zettelkasten"; # TODO: change location to Nextcloud + }; + alias = { + n = "zk new inbox/$@"; + i = "zk edit -x inbox,journals -i"; + ls = "zk list -x inbox,journals $@"; + ed = "zk edit -x inbox,journals $@"; + rm = ''zk list --interactive --quiet --format "{{abs-path}}" --delimiter0 $@ | xargs -0 rm -vf --''; + recent = "zk edit --sort created- --created-after 'last two weeks' --interactive"; + inbox = "zk edit -t inbox --interactive"; + }; + }; + }; + + home.file = { + "zettelkasten/.zk/templates/default.md" = { + text = '' + --- + title: {{ title }} + date: {{format-date now "long"}} + tags: [inbox] + --- + # {{ title }} + + {{ content }} + ''; + }; + }; +} diff --git a/home/services/default.nix b/home/services/default.nix index 7ce7e43..8833f36 100644 --- a/home/services/default.nix +++ b/home/services/default.nix @@ -2,9 +2,14 @@ { imports = [ - ./ssh-agent.nix + ./emanote.nix + ./flameshot.nix + ./fnott.nix ./gpg-agent.nix ./hypridle.nix + ./kanshi.nix + ./kdeconnect.nix ./nextcloud.nix + ./ssh-agent.nix ]; } diff --git a/home/services/emanote.nix b/home/services/emanote.nix new file mode 100644 index 0000000..96cb722 --- /dev/null +++ b/home/services/emanote.nix @@ -0,0 +1,23 @@ +{ config, ... }: + +let + emanote = import ( + builtins.fetchTarball { + url = "https://github.com/srid/emanote/archive/master.tar.gz"; + sha256 = "0kr8bbq1awg2c2ra1mwjxqa9m7is9b6cdksvh48g4w354h5pqbnv"; + } + ); +in +{ + imports = [ emanote.homeManagerModule ]; + services.emanote = { + enable = true; + # host = "127.0.0.1"; # default listen address is 127.0.0.1 + # port = 7000; # default http port is 7000 + notes = [ + "/home/elias/zettelkasten" + ]; + # TODO: currentSystem + package = emanote.packages."x86_64-linux".default; + }; +} diff --git a/home/services/flameshot.nix b/home/services/flameshot.nix new file mode 100644 index 0000000..84c3856 --- /dev/null +++ b/home/services/flameshot.nix @@ -0,0 +1,17 @@ +{ pkgs, ... }: + +{ + home.packages = with pkgs; [ grim ]; + services.flameshot = { + enable = true; + settings = { + General = { + disabledTrayIcon = true; + showDesktopNotification = false; + showHelp = false; + showStartupLaunchMessage = false; + useGrimAdapter = true; + }; + }; + }; +} diff --git a/home/services/fnott.nix b/home/services/fnott.nix new file mode 100644 index 0000000..3fc48f0 --- /dev/null +++ b/home/services/fnott.nix @@ -0,0 +1,5 @@ +{ ... }: + +{ + services.fnott.enable = true; +} diff --git a/home/services/kanshi.nix b/home/services/kanshi.nix new file mode 100644 index 0000000..efa8ac2 --- /dev/null +++ b/home/services/kanshi.nix @@ -0,0 +1,54 @@ +{ pkgs, ... }: +{ + home.packages = with pkgs; [ kanshi ]; + + services.kanshi = { + enable = true; + systemdTarget = "graphical-session.target"; + settings = [ + { + profile.name = "laptop undocked"; + profile.outputs = [ { criteria = "eDP-1"; } ]; + profile.exec = [ + "systemctl --user start hypridle.service" + ]; + } + { + profile.name = "laptop docked"; + profile.exec = [ + "systemctl --user start hypridle.service" + ]; + profile.outputs = [ + { + criteria = "eDP-1"; + mode = "1920x1080@60Hz"; + position = "1920,0"; + } + { + criteria = "HDMI-A-1"; + mode = "1920x1080@60Hz"; + position = "0,0"; + } + ]; + } + # { + # profile.name = "desktop"; + # profile.exec = [ + # "systemctl --user start hypridle.service" + # ]; + # profile.outputs = [ + # { + # criteria = "eDP-1"; + # mode = "1920x1080@60Hz"; + # position = "1920,0"; + # } + # { + # criteria = "HDMI-A-1"; + # mode = "1920x1080@60Hz"; + # position = "0,0"; + # } + # ]; + # } + ]; + }; +} diff --git a/home/services/kdeconnect.nix b/home/services/kdeconnect.nix new file mode 100644 index 0000000..426fa8e --- /dev/null +++ b/home/services/kdeconnect.nix @@ -0,0 +1,5 @@ +{ ... }: + +{ + services.kdeconnect.enable = true; +} diff --git a/home/themes/catppuccin/default.nix b/home/themes/catppuccin/default.nix index bf5b1d5..66dfd91 100644 --- a/home/themes/catppuccin/default.nix +++ b/home/themes/catppuccin/default.nix @@ -6,6 +6,7 @@ { imports = [ ./cursor.nix + ./fnott.nix ./gtk.nix ./hyprlock.nix ./nvim.nix @@ -17,18 +18,18 @@ flavor = "mocha"; accent = "pink"; + alacritty.enable = true; 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; + yazi.enable = true; zathura.enable = true; zsh-syntax-highlighting.enable = true; }; diff --git a/home/themes/catppuccin/fnott.nix b/home/themes/catppuccin/fnott.nix new file mode 100644 index 0000000..a4ffeb1 --- /dev/null +++ b/home/themes/catppuccin/fnott.nix @@ -0,0 +1,16 @@ +{ ... }: + +{ + services.fnott.settings = { + main = { + notification-margin = 5; + title-color = "a6adc8ff"; + summary-color = "cdd6f4ff"; + body-color = "cdd6f4ff"; + background = "1e1e2eff"; + border-color = "89b4faff"; + progress-bar-color = "6c7086ff"; + }; + critical.border-color = "fab387ff"; + }; +}