diff --git a/flake.lock b/flake.lock index c266c4b..ab59373 100644 --- a/flake.lock +++ b/flake.lock @@ -9,11 +9,11 @@ ] }, "locked": { - "lastModified": 1736090999, - "narHash": "sha256-B5CJuHqfJrzPa7tObK0H9669/EClSHpa/P7B9EuvElU=", + "lastModified": 1744557573, + "narHash": "sha256-XAyj0iDuI51BytJ1PwN53uLpzTDdznPDQFG4RwihlTQ=", "owner": "aylur", "repo": "ags", - "rev": "5527c3c07d92c11e04e7fd99d58429493dba7e3c", + "rev": "3ed9737bdbc8fc7a7c7ceef2165c9109f336bff6", "type": "github" }, "original": { @@ -31,11 +31,32 @@ ] }, "locked": { - "lastModified": 1735172721, - "narHash": "sha256-rtEAwGsHSppnkR3Qg3eRJ6Xh/F84IY9CrBBLzYabalY=", + "lastModified": 1742571008, + "narHash": "sha256-5WgfJAeBpxiKbTR/gJvxrGYfqQRge5aUDcGKmU1YZ1Q=", "owner": "aylur", "repo": "astal", - "rev": "6c84b64efc736e039a8a10774a4a1bf772c37aa2", + "rev": "dc0e5d37abe9424c53dcbd2506a4886ffee6296e", + "type": "github" + }, + "original": { + "owner": "aylur", + "repo": "astal", + "type": "github" + } + }, + "astal_2": { + "inputs": { + "nixpkgs": [ + "hyprpanel", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1748416910, + "narHash": "sha256-FEQcs58HL8Fe4i7XlqVEUwthjxwvRvgX15gTTfW17sU=", + "owner": "aylur", + "repo": "astal", + "rev": "c1bd89a47c81c66ab5fc6872db5a916c0433fb89", "type": "github" }, "original": { @@ -107,7 +128,7 @@ }, "flake-utils_2": { "inputs": { - "systems": "systems_2" + "systems": "systems_3" }, "locked": { "lastModified": 1710146030, @@ -130,11 +151,11 @@ ] }, "locked": { - "lastModified": 1746413188, - "narHash": "sha256-i6BoiQP0PasExESQHszC0reQHfO6D4aI2GzOwZMOI20=", + "lastModified": 1748830238, + "narHash": "sha256-EB+LzYHK0D5aqxZiYoPeoZoOzSAs8eqBDxm3R+6wMKU=", "owner": "nix-community", "repo": "home-manager", - "rev": "8a318641ac13d3bc0a53651feaee9560f9b2d89a", + "rev": "c7fdb7e90bff1a51b79c1eed458fb39e6649a82a", "type": "github" }, "original": { @@ -147,14 +168,15 @@ "hyprpanel": { "inputs": { "ags": "ags", + "astal": "astal_2", "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1745885816, - "narHash": "sha256-yuIb6/gGcII+2YgtTLcYdga0pcL63B18xQ/oitOhg7k=", + "lastModified": 1748856610, + "narHash": "sha256-uh7dQn+CgGtZXGoF35jEARpZssd6C2eFtSpMepBtLig=", "owner": "jas-singhfsu", "repo": "hyprpanel", - "rev": "0c82ce9704c8063be8d8f60443071c91943eb68c", + "rev": "8be178f5a90ec87665ee048e214d2da4571535c5", "type": "github" }, "original": { @@ -177,27 +199,27 @@ ] }, "locked": { - "lastModified": 1737371634, - "narHash": "sha256-fTVAWzT1UMm1lT+YxHuVPtH+DATrhYfea3B0MxG/cGw=", + "lastModified": 1748294338, + "narHash": "sha256-FVO01jdmUNArzBS7NmaktLdGA5qA3lUMJ4B7a05Iynw=", "owner": "NuschtOS", "repo": "ixx", - "rev": "a1176e2a10ce745ff8f63e4af124ece8fe0b1648", + "rev": "cc5f390f7caf265461d4aab37e98d2292ebbdb85", "type": "github" }, "original": { "owner": "NuschtOS", - "ref": "v0.0.7", + "ref": "v0.0.8", "repo": "ixx", "type": "github" } }, "nixpkgs": { "locked": { - "lastModified": 1736344531, - "narHash": "sha256-8YVQ9ZbSfuUk2bUf2KRj60NRraLPKPS0Q4QFTbc+c2c=", + "lastModified": 1748370509, + "narHash": "sha256-QlL8slIgc16W5UaI3w7xHQEP+Qmv/6vSNTpoZrrSlbk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "bffc22eb12172e6db3c5dde9e3e5628f8e3e7912", + "rev": "4faa5f5321320e49a78ae7848582f684d64783e9", "type": "github" }, "original": { @@ -209,11 +231,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1746397377, - "narHash": "sha256-5oLdRa3vWSRbuqPIFFmQBGGUqaYZBxX+GGtN9f/n4lU=", + "lastModified": 1748792178, + "narHash": "sha256-BHmgfHlCJVNisJShVaEmfDIr/Ip58i/4oFGlD1iK6lk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ed30f8aba41605e3ab46421e3dcb4510ec560ff8", + "rev": "5929de975bcf4c7c8d8b5ca65c8cd9ef9e44523e", "type": "github" }, "original": { @@ -225,11 +247,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1746397377, - "narHash": "sha256-5oLdRa3vWSRbuqPIFFmQBGGUqaYZBxX+GGtN9f/n4lU=", + "lastModified": 1748792178, + "narHash": "sha256-BHmgfHlCJVNisJShVaEmfDIr/Ip58i/4oFGlD1iK6lk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ed30f8aba41605e3ab46421e3dcb4510ec560ff8", + "rev": "5929de975bcf4c7c8d8b5ca65c8cd9ef9e44523e", "type": "github" }, "original": { @@ -261,14 +283,15 @@ "nixpkgs": [ "nixpkgs" ], - "nuschtosSearch": "nuschtosSearch" + "nuschtosSearch": "nuschtosSearch", + "systems": "systems_2" }, "locked": { - "lastModified": 1746536883, - "narHash": "sha256-EJax0aiJIVJlqF7QyAefZ9fi1HgGcm7U1rBkcm2Z3Ps=", + "lastModified": 1748884506, + "narHash": "sha256-P/ldKE0SCGKH6pEVJoW2MJJo2dZCZe10d/h1ree66c0=", "owner": "nix-community", "repo": "nixvim", - "rev": "c26f5c2e31c1da895bf9289783ff8e2fe3637ca0", + "rev": "d063d0dd5e0b82d8be4dd4bc00b887ac1f92e4b2", "type": "github" }, "original": { @@ -288,11 +311,11 @@ ] }, "locked": { - "lastModified": 1745046075, - "narHash": "sha256-8v4y6k16Ra/fiecb4DxhsoOGtzLKgKlS+9/XJ9z0T2I=", + "lastModified": 1748298102, + "narHash": "sha256-PP11GVwUt7F4ZZi5A5+99isuq39C59CKc5u5yVisU/U=", "owner": "NuschtOS", "repo": "search", - "rev": "066afe8643274470f4a294442aadd988356a478f", + "rev": "f8a1c221afb8b4c642ed11ac5ee6746b0fe1d32f", "type": "github" }, "original": { @@ -306,7 +329,7 @@ "fenix": "fenix", "flake-utils": "flake-utils_2", "nixpkgs": "nixpkgs_3", - "systems": "systems_3" + "systems": "systems_4" }, "locked": { "lastModified": 1741352034, @@ -380,6 +403,21 @@ } }, "systems_3": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "systems_4": { "locked": { "lastModified": 1689347949, "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", diff --git a/home/fabric/default.nix b/home/fabric/default.nix index ab14157..83740de 100644 --- a/home/fabric/default.nix +++ b/home/fabric/default.nix @@ -113,6 +113,7 @@ nerd-fonts.envy-code-r nerd-fonts.droid-sans-mono nerd-fonts.departure-mono + font-awesome wl-clipboard @@ -129,12 +130,10 @@ tmuxPlugins.sensible tmuxPlugins.vim-tmux-navigator tmuxPlugins.onedark-theme - nodePackages.prettier nodePackages.tailwindcss - prettierd - nodejs_23 qbittorrent go + go-blueprint gccgo14 hypridle dprint @@ -160,6 +159,14 @@ tree-sitter heroic gimp3 + p7zip + rar + nodePackages.localtunnel + typst + pnpm + nodejs_24 + openssl + psmisc ]; # Enable home-manager diff --git a/home/fabric/desktop/hyprland.nix b/home/fabric/desktop/hyprland.nix index a8ca7de..97b37ac 100644 --- a/home/fabric/desktop/hyprland.nix +++ b/home/fabric/desktop/hyprland.nix @@ -77,7 +77,7 @@ ]; monitor = [ - "DP-3, 3440x1440@144.00HZ, 0x0, 1" + "DP-5, 3440x1440@144.00HZ, 0x0, 1" ]; }; }; diff --git a/home/fabric/programs/nixvim.nix b/home/fabric/programs/nixvim.nix index 38dc391..6108109 100644 --- a/home/fabric/programs/nixvim.nix +++ b/home/fabric/programs/nixvim.nix @@ -41,6 +41,7 @@ }; }; plugins = { + hardtime.enable = true; avante = { enable = true; settings = { @@ -72,11 +73,12 @@ prev = "[["; }; }; - # provider = "ollama"; - # ollama = { - # endpoint = "http://127.0.0.1:11434"; - # model = "gemma3:12b"; - # }; + provider = "ollama"; + auto_suggestions_provider = "ollama"; + ollama = { + endpoint = "http://127.0.0.1:11434"; + model = "kirito1/qwen3-coder"; + }; windows = { sidebar_header = { align = "center"; @@ -173,6 +175,13 @@ ".*_templ%.go$" ]; hidden = true; + + mappings = { + n = { + # Normal mode mappings + q = "close"; # Map 'q' to close the telescope window + }; + }; }; }; }; @@ -268,31 +277,6 @@ formatters_by_ft = { nix = ["alejandra"]; markdown = ["dprint"]; - # Use prettierd first, fallback to prettier - javascript = { - __unkeyed-1 = "prettierd"; - __unkeyed-2 = "prettier"; - stop_after_first = true; - }; - typescript = { - __unkeyed-1 = "prettierd"; - __unkeyed-2 = "prettier"; - stop_after_first = true; - }; - javascriptreact = { - __unkeyed-1 = "prettierd"; - __unkeyed-2 = "prettier"; - stop_after_first = true; - }; - typescriptreact = { - __unkeyed-1 = "prettierd"; - __unkeyed-2 = "prettier"; - stop_after_first = true; - }; - css = ["prettier"]; - scss = ["prettier"]; - html = ["prettier"]; - json = ["prettier"]; # Run on all files "_" = ["trim_whitespace" "trim_newlines"]; }; @@ -301,24 +285,6 @@ lsp_fallback = true; }; formatters = { - prettier = { - command = "prettier"; - args = [ - "--plugin=prettier-plugin-tailwindcss" - "--print-width=80" - "--tab-width=2" - "--use-tabs=false" - "--semi=true" - "--single-quote=false" - "--trailing-comma=es5" - "--bracket-spacing=true" - ]; - }; - # Optional: Add prettierd for faster formatting - prettierd = { - command = "prettierd"; - args = ["$FILENAME"]; - }; }; # Additional useful settings from the docs log_level = "warn"; diff --git a/home/fabric/programs/zsh.nix b/home/fabric/programs/zsh.nix index 94b8704..1fc3d27 100644 --- a/home/fabric/programs/zsh.nix +++ b/home/fabric/programs/zsh.nix @@ -16,11 +16,12 @@ "vi-mode" ]; }; - initExtra = '' + initContent = '' export PATH="/home/fabric/.deno/bin:$PATH" export PATH="/home/fabric/.local/lib/bin:$PATH" export PATH=$PATH:(go env GOPATH)/bin + export PATH="/home/fabric/.cargo/bin:$PATH" GOPATH=$HOME/go PATH=$PATH:/usr/local/go/bin:$GOPATH/bin PATH="$HOME/.govm/shim:$PATH" @@ -30,6 +31,15 @@ alias n="nvim" alias gmt="go mod tidy" alias gmi="go mod init" + alias flake="nix flake" + function y() { + local tmp="$(mktemp -t "yazi-cwd.XXXXXX")" cwd + yazi "$@" --cwd-file="$tmp" + if cwd="$(command cat -- "$tmp")" && [ -n "$cwd" ] && [ "$cwd" != "$PWD" ]; then + builtin cd -- "$cwd" + fi + rm -f -- "$tmp" + } ''; prezto = { tmux = { diff --git a/hosts/common/global/default.nix b/hosts/common/global/default.nix index badd3d4..b69458b 100644 --- a/hosts/common/global/default.nix +++ b/hosts/common/global/default.nix @@ -16,21 +16,15 @@ # Allow unfree packages nixpkgs.config.allowUnfree = true; + boot.supportedFilesystems = ["ntfs"]; + # Basic system packages environment.systemPackages = with pkgs; [ vim git greetd.greetd greetd.tuigreet - libinput - libnotify - kitty zsh - # ollama - ollama-cuda - usbutils - obs-studio - obs-studio-plugins.input-overlay ]; # Enable the OpenSSH daemon @@ -47,12 +41,8 @@ }; }; - # Display manager configuration - services.displayManager.defaultSession = "hyprland"; - # Default programs programs = { - hyprland.enable = true; zsh.enable = true; }; networking.enableIPv6 = false; diff --git a/hosts/common/global/tailscale.nix b/hosts/common/global/tailscale.nix index 44ce578..6449ba9 100644 --- a/hosts/common/global/tailscale.nix +++ b/hosts/common/global/tailscale.nix @@ -1,5 +1,6 @@ {...}: { services.tailscale = { enable = true; + useRoutingFeatures = "client"; }; } diff --git a/hosts/tatara/default.nix b/hosts/tatara/default.nix index e69de29..d829c79 100644 --- a/hosts/tatara/default.nix +++ b/hosts/tatara/default.nix @@ -0,0 +1,35 @@ +# hosts/tatara/default.nix +{ + config, + lib, + pkgs, + ... +}: { + imports = [ + # Hardware configuration + ./hardware-configuration.nix + + # Common configurations + ../common/global + ../common/optional/docker.nix + ]; + + # Bootloader + boot.loader.systemd-boot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + + # Networking + networking = { + hostName = "tatara"; + networkmanager.enable = true; + useDHCP = lib.mkDefault true; + }; + + # User configuration + users.users.fabric = { + isNormalUser = true; + description = "fabric"; + extraGroups = ["networkmanager" "wheel" "docker"]; + shell = pkgs.zsh; + }; +} diff --git a/hosts/zion/default.nix b/hosts/zion/default.nix index 7745e8f..1f0bacd 100644 --- a/hosts/zion/default.nix +++ b/hosts/zion/default.nix @@ -41,4 +41,20 @@ acceleration = "cuda"; host = "0.0.0.0"; }; + + # Display manager configuration + services.displayManager.defaultSession = "hyprland"; + + programs.hyprland.enable = true; + + # Basic system packages + environment.systemPackages = with pkgs; [ + libinput + libnotify + kitty + ollama-cuda + usbutils + obs-studio + ntfs3g + ]; }