diff --git a/desktop/pkgs/sddm-catppuccin-macchiato/default.nix b/desktop/pkgs/sddm-catppuccin-macchiato/default.nix index f3dbd9e4..cf0d43ea 100644 --- a/desktop/pkgs/sddm-catppuccin-macchiato/default.nix +++ b/desktop/pkgs/sddm-catppuccin-macchiato/default.nix @@ -1,21 +1,23 @@ { - lib, stdenvNoCC, fetchFromGitHub, -}: { - sddm-catppuccin-macchiato = stdenvNoCC.mkDerivation rec { - pname = "sddm-catppuccin-macchiato-theme"; - version = "1.0"; - dontBuild = true; - installPhase = '' - mkdir -p $out/share/sddm/themes - cp -aR $src/src/catppuccin-macchiato $out/share/sddm/themes/catppuccin-macchiato - ''; - src = fetchFromGitHub { - owner = "catppuccin"; - repo = "sddm"; - rev = "bde6932e1ae0f8fdda76eff5c81ea8d3b7d653c0"; - sha256 = "ceaK/I5lhFz6c+UafQyQVJIzzPxjmsscBgj8130D4dE="; - }; +}: +stdenvNoCC.mkDerivation rec { + pname = "sddm-catppuccin-macchiato-theme"; + version = "1.0"; + dontBuild = true; + + src = fetchFromGitHub { + owner = "catppuccin"; + repo = "sddm"; + rev = "bde6932e1ae0f8fdda76eff5c81ea8d3b7d653c0"; + sha256 = "ceaK/I5lhFz6c+UafQyQVJIzzPxjmsscBgj8130D4dE="; }; + + installPhase = '' + runHook preInstall + mkdir -p $out/share/sddm/themes + cp -aR $src/src/catppuccin-macchiato $out/share/sddm/themes/catppuccin-macchiato + runHook postInstall + ''; } diff --git a/desktop/sddm.nix b/desktop/sddm.nix index 322f69ab..95293e2f 100644 --- a/desktop/sddm.nix +++ b/desktop/sddm.nix @@ -2,9 +2,7 @@ sddm-catppuccin-macchiato = pkgs.callPackage ./pkgs/sddm-catppuccin-macchiato {}; in { imports = [./xserver.nix]; - environment.systemPackages = [ - sddm-catppuccin-macchiato.sddm-catppuccin-macchiato - ]; + environment.systemPackages = [sddm-catppuccin-macchiato]; services.xserver.displayManager.sddm = { enable = true; theme = "catppuccin-macchiato"; diff --git a/home/Northstar/xenia.nix b/home/Northstar/xenia.nix index 9afb0d13..dea47959 100644 --- a/home/Northstar/xenia.nix +++ b/home/Northstar/xenia.nix @@ -1,7 +1,10 @@ -{pkgs, ...}: { +{pkgs, ...}: let + rot8 = pkgs.callPackage ../desktop/pkgs/rot8 {}; +in { imports = [ ../env ../tui + ../gui/chromium.nix ../gui/foot.nix ../desktop/sway.nix ../ssh/personal.nix @@ -10,11 +13,16 @@ home.username = "xenia"; home.homeDirectory = "/home/xenia"; home.stateVersion = "22.11"; - home.packages = with pkgs; [home-manager]; + home.packages = with pkgs; [home-manager rot8]; programs.bash.bashrcExtra = '' source $HOME/.nix-profile/etc/profile.d/nix.sh ''; - programs.firefox.enable = true; + + services.syncthing = { + enable = true; + tray = {enable = false;}; + }; + fonts.fontconfig.enable = true; wayland.windowManager.sway = { config = { @@ -32,9 +40,17 @@ bg = "~/nixos/wallpaper.jpg fill"; }; }; + gaps = { + inner = 5; + top = 5; + bottom = 5; + left = 20; + right = 20; + }; startup = [ {command = "dunst";} {command = "waybar";} + {command = "rot8";} ]; }; }; diff --git a/home/default.nix b/home/default.nix index e1be0058..ec4c97d8 100644 --- a/home/default.nix +++ b/home/default.nix @@ -1 +1,4 @@ -{...}: {imports = [./env ./gui ./tui];} +{...}: { + imports = [./env ./gui ./tui]; + fonts.fontconfig.enable = true; +} diff --git a/home/desktop/config/hypr/keybinds.conf b/home/desktop/config/hypr/keybinds.conf index 86d7d91a..0715b02d 100644 --- a/home/desktop/config/hypr/keybinds.conf +++ b/home/desktop/config/hypr/keybinds.conf @@ -1,5 +1,6 @@ # See https://wiki.hyprland.org/Configuring/Keywords/ for more -bind = SUPER, Return, exec, wezterm +# bind = SUPER, Return, exec, wezterm +bind = SUPER, Return, exec, kitty bind = SUPER, Q, killactive, bind = SUPER, E, exec, power-profiles bind = SUPER, P, exec, powermenu diff --git a/home/desktop/gtk.nix b/home/desktop/gtk.nix index 6b221ad5..a0d8b227 100644 --- a/home/desktop/gtk.nix +++ b/home/desktop/gtk.nix @@ -3,12 +3,12 @@ config, ... }: let - candy = pkgs.callPackage ./pkgs/candy-icon-theme {}; - sweet-folder = pkgs.callPackage ./pkgs/sweet-folder-theme {}; + candy-icon-theme = pkgs.callPackage ./pkgs/candy-icon-theme {}; + sweet-folder-theme = pkgs.callPackage ./pkgs/sweet-folder-theme {}; in { home.packages = [ - candy.candy-icon-theme - sweet-folder.sweet-folder-theme + candy-icon-theme + sweet-folder-theme pkgs.breeze-gtk pkgs.gnome.adwaita-icon-theme pkgs.hicolor-icon-theme @@ -20,7 +20,7 @@ in { name = "Catppuccin-Macchiato-Dark-Cursors"; }; iconTheme = { - package = sweet-folder.sweet-folder-theme; + package = sweet-folder-theme.sweet-folder-theme; name = "Sweet-Rainbow"; }; theme = { diff --git a/home/desktop/pkgs/candy-icon-theme/default.nix b/home/desktop/pkgs/candy-icon-theme/default.nix index 0432b4ea..43baeb81 100644 --- a/home/desktop/pkgs/candy-icon-theme/default.nix +++ b/home/desktop/pkgs/candy-icon-theme/default.nix @@ -1,35 +1,33 @@ { - lib, stdenvNoCC, fetchFromGitHub, gtk3, -}: { - candy-icon-theme = stdenvNoCC.mkDerivation rec { - pname = "candy-icon-theme"; - version = "6a35be5cb133c6be8314807f55da3d795e24fb86"; - dontBuild = true; +}: +stdenvNoCC.mkDerivation rec { + pname = "candy-icon-theme"; + version = "6a35be5cb133c6be8314807f55da3d795e24fb86"; + dontBuild = true; - src = fetchFromGitHub { - owner = "EliverLara"; - repo = "candy-icons"; - rev = version; - sha256 = "sha256-M58ts/xyVf+ZDidd4MEp/LlU3vk2imEwOnb0/sVJUYo="; - }; - - nativeBuildInputs = [gtk3]; - - dontDropIconThemeCache = true; - - installPhase = '' - runHook preInstall - mkdir -p $out/share/icons/Sweet-folders - mv * $out/share/icons/Sweet-folders - - for theme in $out/share/icons/*; do - gtk-update-icon-cache --force $theme - done - - runHook postInstall - ''; + src = fetchFromGitHub { + owner = "EliverLara"; + repo = "candy-icons"; + rev = version; + sha256 = "sha256-M58ts/xyVf+ZDidd4MEp/LlU3vk2imEwOnb0/sVJUYo="; }; + + nativeBuildInputs = [gtk3]; + + dontDropIconThemeCache = true; + + installPhase = '' + runHook preInstall + mkdir -p $out/share/icons/Sweet-folders + mv * $out/share/icons/Sweet-folders + + for theme in $out/share/icons/*; do + gtk-update-icon-cache --force $theme + done + + runHook postInstall + ''; } diff --git a/home/desktop/pkgs/delta-icon-theme/default.nix b/home/desktop/pkgs/delta-icon-theme/default.nix index 4f5c4639..52316f59 100644 --- a/home/desktop/pkgs/delta-icon-theme/default.nix +++ b/home/desktop/pkgs/delta-icon-theme/default.nix @@ -1,44 +1,33 @@ { - lib, stdenvNoCC, fetchFromGitHub, gtk3, -}: { - delta-icon-theme = stdenvNoCC.mkDerivation rec { - pname = "delta-icon-theme"; - version = "194df98e422c0a81912194808b76712bf5d78803"; - dontBuild = true; +}: +stdenvNoCC.mkDerivation rec { + pname = "delta-icon-theme"; + version = "194df98e422c0a81912194808b76712bf5d78803"; + dontBuild = true; - src = fetchFromGitHub { - owner = "Delta-Icons"; - repo = "linux"; - rev = version; - sha256 = "sha256-SSkI5Aj/TTHfDRYCWe7Ell6cWvPmBUeO/AC4xRrEUvU="; - }; - - nativeBuildInputs = [gtk3]; - - dontDropIconThemeCache = true; - - installPhase = '' - runHook preInstall - mkdir -p $out/share/icons - mv Delta $out/share/icons - - for theme in $out/share/icons/*; do - gtk-update-icon-cache --force $theme - done - - runHook postInstall - ''; - - # meta = with lib; { - # description = "Delta icon theme"; - # homepage = "https://github.com/Delta-Icons/Linux"; - # license = licenses.gpl3Only; - # # darwin gives hash mismatch in source, probably because of file names differing only in case - # platforms = platforms.linux; - # maintainers = with maintainers; []; - # }; + src = fetchFromGitHub { + owner = "Delta-Icons"; + repo = "linux"; + rev = version; + sha256 = "sha256-SSkI5Aj/TTHfDRYCWe7Ell6cWvPmBUeO/AC4xRrEUvU="; }; + + nativeBuildInputs = [gtk3]; + + dontDropIconThemeCache = true; + + installPhase = '' + runHook preInstall + mkdir -p $out/share/icons + mv Delta $out/share/icons + + for theme in $out/share/icons/*; do + gtk-update-icon-cache --force $theme + done + + runHook postInstall + ''; } diff --git a/home/desktop/pkgs/rot8/default.nix b/home/desktop/pkgs/rot8/default.nix new file mode 100644 index 00000000..29748db1 --- /dev/null +++ b/home/desktop/pkgs/rot8/default.nix @@ -0,0 +1,17 @@ +{ + fetchFromGitHub, + rustPlatform, +}: +rustPlatform.buildRustPackage rec { + pname = "rot8"; + version = "7ed926f6d94a999cd2cb702af9f3de0f566095b1"; + + src = fetchFromGitHub { + owner = "efernau"; + repo = pname; + rev = version; + hash = "sha256-i+VLVA/XKZiFPEeFHR3CpZKi8CWA/tiaZJerciqQHJ0="; + }; + + cargoHash = "sha256-BoBuc3YkVdAR+gZZf5WxxRj/LCsBNSW7FSSU2OnNPgM="; +} diff --git a/home/desktop/pkgs/sweet-folder-theme/default.nix b/home/desktop/pkgs/sweet-folder-theme/default.nix index 6c3920de..21ecc826 100644 --- a/home/desktop/pkgs/sweet-folder-theme/default.nix +++ b/home/desktop/pkgs/sweet-folder-theme/default.nix @@ -1,35 +1,33 @@ { - lib, stdenvNoCC, fetchFromGitHub, gtk3, -}: { - sweet-folder-theme = stdenvNoCC.mkDerivation rec { - pname = "sweet-folder-theme"; - version = "b2192ff1412472f036fdf9778c6b9dbcb6c044ec"; - dontBuild = true; +}: +stdenvNoCC.mkDerivation rec { + pname = "sweet-folder-theme"; + version = "b2192ff1412472f036fdf9778c6b9dbcb6c044ec"; + dontBuild = true; - src = fetchFromGitHub { - owner = "EliverLara"; - repo = "Sweet-folders"; - rev = version; - sha256 = "sha256-QexfqXH5a1IEhKBRjWSMdrEvThvLRzd4M32Xti1DCGE="; - }; - - nativeBuildInputs = [gtk3]; - - dontDropIconThemeCache = true; - - installPhase = '' - runHook preInstall - mkdir -p $out/share/icons - mv Sweet-Rainbow $out/share/icons - - for theme in $out/share/icons/*; do - gtk-update-icon-cache --force $theme - done - - runHook postInstall - ''; + src = fetchFromGitHub { + owner = "EliverLara"; + repo = "Sweet-folders"; + rev = version; + sha256 = "sha256-QexfqXH5a1IEhKBRjWSMdrEvThvLRzd4M32Xti1DCGE="; }; + + nativeBuildInputs = [gtk3]; + + dontDropIconThemeCache = true; + + installPhase = '' + runHook preInstall + mkdir -p $out/share/icons + mv Sweet-Rainbow $out/share/icons + + for theme in $out/share/icons/*; do + gtk-update-icon-cache --force $theme + done + + runHook postInstall + ''; } diff --git a/home/desktop/sway.nix b/home/desktop/sway.nix index d6bc30d8..b8d1cc7b 100644 --- a/home/desktop/sway.nix +++ b/home/desktop/sway.nix @@ -31,10 +31,6 @@ in { names = ["FiraCode Nerd Font" "FiraCode Nerd Font Mono"]; size = 12.0; }; - gaps = { - inner = 5; - outer = 20; - }; bars = []; keybindings = lib.mkOptionDefault { "${modifier}+Return" = "exec ${term}"; diff --git a/home/gui/alacritty.nix b/home/gui/alacritty.nix new file mode 100644 index 00000000..8d6f6698 --- /dev/null +++ b/home/gui/alacritty.nix @@ -0,0 +1,42 @@ +{...}: { + programs.alacritty = { + enable = true; + settings = { + font = { + normal.family = "FiraCode Nerd Font"; + size = 14; + }; + colors = { + # Default colors + primary = { + background = "0x1a1b26"; + foreground = "0xa9b1d6"; + }; + + # Normal colors + normal = { + black = "0x32344a"; + red = "0xf7768e"; + green = "0x9ece6a"; + yellow = "0xe0af68"; + blue = "0x7aa2f7"; + magenta = "0xad8ee6"; + cyan = "0x449dab"; + white = "0x787c99"; + }; + + # Bright colors + bright = { + black = "0x444b6a"; + red = "0xff7a93"; + green = "0xb9f27c"; + yellow = "0xff9e64"; + blue = "0x7da6ff"; + magenta = "0xbb9af7"; + cyan = "0x0db9d7"; + white = "0xacb0d0"; + }; + }; + }; + }; +} diff --git a/home/gui/kitty.nix b/home/gui/kitty.nix index b7fccee9..9fe0ac4c 100644 --- a/home/gui/kitty.nix +++ b/home/gui/kitty.nix @@ -7,22 +7,20 @@ size = 14; }; settings = { - initial_window_width = 640; - initial_window_height = 400; - background_opacity = "0.95"; + background_opacity = "0.80"; disable_ligatures = "cursor"; show_hyperlink_targets = true; copy_on_select = true; paste_actions = "confirm"; enable_audio_bell = false; - window_border_width = 2; + window_border_width = 5; window_margin_width = 5; tab_bar_edge = "top"; tab_bar_style = "powerline"; tab_powerline_style = "round"; - tab_bar_min_tabs = 1; + tab_bar_min_tabs = 2; update_check_interval = 0; }; - theme = "Catppuccin-Macchiato"; + theme = "Tokyo Night"; }; } diff --git a/home/tui/neovim.nix b/home/tui/neovim.nix index 1cfc33e7..589075f7 100644 --- a/home/tui/neovim.nix +++ b/home/tui/neovim.nix @@ -1,4 +1,15 @@ {pkgs, ...}: { + home.packages = with pkgs; [ + git + curl + gnutar + gnumake + gnused + gcc + fzf + ripgrep + tree-sitter + ]; programs.neovim = { enable = true; defaultEditor = true; @@ -9,17 +20,6 @@ withRuby = true; withPython3 = true; extraPackages = with pkgs; [ - # Used by installed plugins - git - curl - gnutar - gnumake - gnused - gcc - fzf - ripgrep - tree-sitter - # Language servers nodePackages.pyright python3Packages.ruff-lsp @@ -34,6 +34,7 @@ alejandra beautysh black + nodePackages.cspell nodePackages.fixjson fprettify isort diff --git a/nvim b/nvim index ca21787b..99ce5c68 160000 --- a/nvim +++ b/nvim @@ -1 +1 @@ -Subproject commit ca21787b0cf5470797c4ad9344f60b2f60284a6a +Subproject commit 99ce5c68d811a7debe888a84497628dad3cb0c47 diff --git a/services/syncthing/Legion.nix b/services/syncthing/Legion.nix index 420f876e..a35afd30 100644 --- a/services/syncthing/Legion.nix +++ b/services/syncthing/Legion.nix @@ -24,7 +24,7 @@ group = "users"; extraOptions.options.globalAnnounceEnabled = true; folders = { - "Archive".devices = ["ion" "monarch" "northstar" "vanguard"]; + "Archive".devices = ["ion" "monarch" "vanguard"]; "Books".devices = ["monarch" "northstar" "remarkable" "vanguard"]; "Camera".devices = ["ion"]; "Comics".devices = ["ion" "monarch" "northstar" "vanguard"]; diff --git a/services/syncthing/devices/Northstar.nix b/services/syncthing/devices/Northstar.nix index 5d854d72..e5bfa88d 100644 --- a/services/syncthing/devices/Northstar.nix +++ b/services/syncthing/devices/Northstar.nix @@ -1 +1 @@ -{...}: {services.syncthing.devices."northstar".id = "DMQZNMB-BM3SSE4-5XV2GHE-IDRNFTS-QNZSICS-6JWHUCV-O3NHMWY-2OBC2QD";} +{...}: {services.syncthing.devices."northstar".id = "W3QZTFS-BB42JYB-NQBZ5IM-H3WLAUQ-M57I2CP-FALWGEX-JI2ZZOC-QWAX2QQ";}