diff --git a/flake.lock b/flake.lock index f45f19d..97bea80 100644 --- a/flake.lock +++ b/flake.lock @@ -1086,11 +1086,11 @@ ] }, "locked": { - "lastModified": 1760810038, - "narHash": "sha256-ZmrKFgVn/Ues34j+TRk2W7m8X6/tXVqtV19zE9apI9s=", + "lastModified": 1762633087, + "narHash": "sha256-eZcPkglvKESSzrtqLQoroIY9KIFZH5rsvWlK0ibZ8dc=", "ref": "refs/heads/main", - "rev": "56ac08a980247206d96f0efe289e6212f009f6b3", - "revCount": 47, + "rev": "ff344f9d922c5fda41c87d92fa0a22219099c045", + "revCount": 49, "type": "git", "url": "file:///etc/nixos.secrets" }, diff --git a/hosts/ori/configuration.nix b/hosts/ori/configuration.nix index 2c058ed..9d4f760 100644 --- a/hosts/ori/configuration.nix +++ b/hosts/ori/configuration.nix @@ -9,7 +9,7 @@ # hardware cachy.enable = true; - cachy.variant = "server"; + cachy.variant = "lts"; virtualization = { docker.enable = true; @@ -53,19 +53,19 @@ programs.fuse.userAllowOther = true; networking.firewall.extraCommands = - # ip ban ai crawlers - let createDropRulesForIpAddress = address: - '' - iptables -A INPUT -s ${address} -j DROP - iptables -A OUTPUT -s ${address} -j DROP - iptables -A FORWARD -s ${address} -j DROP - iptables -A DOCKER -s ${address} -j DROP - iptables -A DOCKER-BRIDGE -s ${address} -j DROP - iptables -A DOCKER-FORWARD -s ${address} -j DROP - iptables -A DOCKER-USER -s ${address} -j DROP - iptables -A DOCKER-ISOLATION-STAGE-1 -s ${address} -j DROP - iptables -A DOCKER-ISOLATION-STAGE-2 -s ${address} -j DROP - ''; + # ip ban ai crawlers + let + createDropRulesForIpAddress = address: '' + iptables -A INPUT -s ${address} -j DROP + iptables -A OUTPUT -s ${address} -j DROP + iptables -A FORWARD -s ${address} -j DROP + iptables -A DOCKER -s ${address} -j DROP + iptables -A DOCKER-BRIDGE -s ${address} -j DROP + iptables -A DOCKER-FORWARD -s ${address} -j DROP + iptables -A DOCKER-USER -s ${address} -j DROP + iptables -A DOCKER-ISOLATION-STAGE-1 -s ${address} -j DROP + iptables -A DOCKER-ISOLATION-STAGE-2 -s ${address} -j DROP + ''; in '' ${createDropRulesForIpAddress "216.73.216.143"} @@ -215,8 +215,8 @@ ${createDropRulesForIpAddress "98.84.200.43"} ${createDropRulesForIpAddress "98.84.60.17"} ${createDropRulesForIpAddress "98.84.70.201"} - ''; - virtualisation.docker.extraOptions="--iptables=true"; + ''; + virtualisation.docker.extraOptions = "--iptables=true"; }; } diff --git a/hosts/ori/hardware-configuration.nix b/hosts/ori/hardware-configuration.nix index cce9b41..dc1e414 100644 --- a/hosts/ori/hardware-configuration.nix +++ b/hosts/ori/hardware-configuration.nix @@ -1,29 +1,46 @@ # Do not modify this file! It was generated by ‘nixos-generate-config’ # and may be overwritten by future invocations. Please make changes # to /etc/nixos/configuration.nix instead. -{ config, lib, modulesPath, ... }: +{ + config, + lib, + modulesPath, + ... +}: { - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; services.fstrim.enable = true; - boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "ums_realtek" "sd_mod" "sr_mod" ]; + boot.initrd.availableKernelModules = [ + "xhci_pci" + "ehci_pci" + "ahci" + "ums_realtek" + "sd_mod" + "sr_mod" + ]; boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-intel" ]; + boot.kernelModules = [ + "kvm-intel" + "ip_tables" + "i6table_nat" + "wireguard" + ]; boot.extraModulePackages = [ ]; - fileSystems."/" = - { device = "/dev/disk/by-uuid/ea03d496-2769-485d-b5cb-de0b58cb698c"; - fsType = "btrfs"; - options = [ "subvol=@" ]; - }; + fileSystems."/" = { + device = "/dev/disk/by-uuid/ea03d496-2769-485d-b5cb-de0b58cb698c"; + fsType = "btrfs"; + options = [ "subvol=@" ]; + }; - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/4F5E-11FB"; - fsType = "vfat"; - }; + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/4F5E-11FB"; + fsType = "vfat"; + }; swapDevices = [ ]; diff --git a/modules/user/git/git.nix b/modules/user/git/git.nix index 780a928..7f07703 100644 --- a/modules/user/git/git.nix +++ b/modules/user/git/git.nix @@ -1,8 +1,16 @@ -{ config, lib, pkgs, pkgs-stable, osConfig, ... }: +{ + config, + lib, + pkgs, + pkgs-stable, + osConfig, + ... +}: let cfg = config.userSettings.git; -in { +in +{ options = { userSettings.git = { enable = lib.mkEnableOption "Enable git"; @@ -10,15 +18,25 @@ in { }; config = lib.mkIf cfg.enable { - home.packages = [ pkgs.git pkgs-stable.openssh ]; + home.packages = [ + pkgs.git + pkgs.git-extras + pkgs.git-filter-repo + pkgs-stable.openssh + ]; programs.git.enable = true; programs.git.userName = config.userSettings.name; programs.git.userEmail = config.userSettings.email; + programs.git.aliases = { + change-commits = ''!f() { VAR=$1; OLD=$2; NEW=$3; shift 3; FILTER_BRANCH_SQUELCH_WARNING=1 git filter-branch --env-filter "if [[ \"$`echo $VAR`\" = '$OLD' ]]; then export $VAR='$NEW'; fi" $@; }; f''; + }; programs.git.extraConfig = { init.defaultBranch = "main"; - safe.directory = [ osConfig.systemSettings.dotfilesDir - osConfig.systemSettings.secretsFlakeDir - (config.home.homeDirectory + "/.cache/nix/tarball-cache") ]; + safe.directory = [ + osConfig.systemSettings.dotfilesDir + osConfig.systemSettings.secretsFlakeDir + (config.home.homeDirectory + "/.cache/nix/tarball-cache") + ]; }; programs.git.lfs.enable = true; services.ssh-agent.enable = true; diff --git a/modules/user/zed/default.nix b/modules/user/zed/default.nix index d185dd4..41b37ca 100644 --- a/modules/user/zed/default.nix +++ b/modules/user/zed/default.nix @@ -1,8 +1,14 @@ -{ config, lib, pkgs, ... }: +{ + config, + lib, + pkgs, + ... +}: let cfg = config.userSettings.zed; -in { +in +{ options = { userSettings.zed = { enable = lib.mkEnableOption "Enable zed editor"; @@ -58,7 +64,7 @@ in { disable_ai = true; agent = { button = false; - model_parameters = []; + model_parameters = [ ]; }; git_panel = { button = false; @@ -138,22 +144,62 @@ in { "space b n" = "panel::NextPanelTab"; "space b i" = "tab_switcher::ToggleAll"; "ctrl-i" = "tab_switcher::ToggleAll"; - "alt-p" = [ "tab_switcher::Toggle" { "select_last" = true; }]; - "alt-n" = "tab_switcher::Toggle"; "alt-z" = "terminal_panel::Toggle"; "alt-d" = "debug_panel::ToggleFocus"; }; } { - context = "Terminal"; - bindings = { - "ctrl-w" = "pane::CloseActiveItem"; - "alt-z" = "terminal_panel::Toggle"; - "alt-d" = "debug_panel::ToggleFocus"; - "ctrl-i" = "tab_switcher::ToggleAll"; - "alt-p" = [ "tab_switcher::Toggle" { "select_last" = true; }]; - "alt-n" = "tab_switcher::Toggle"; - }; + context = "OutlinePanel"; + bindings = { + "ctrl-h" = "workspace::ActivatePaneLeft"; + "ctrl-l" = "workspace::ActivatePaneRight"; + "ctrl-j" = "workspace::ActivatePaneDown"; + "ctrl-k" = "workspace::ActivatePaneUp"; + }; + } + { + context = "OutlinePanel && not_editing"; + bindings = { + "q" = "workspace::ToggleLeftDock"; + }; + } + { + context = "ProjectPanel"; + bindings = { + "ctrl-h" = "workspace::ActivatePaneLeft"; + "ctrl-l" = "workspace::ActivatePaneRight"; + "ctrl-j" = "workspace::ActivatePaneDown"; + "ctrl-k" = "workspace::ActivatePaneUp"; + }; + } + { + context = "ProjectPanel && not_editing"; + bindings = { + "tab" = "project_panel::OpenPermanent"; + "q" = "workspace::ToggleLeftDock"; + "r" = "project_panel::Rename"; + "D" = "project_panel::Delete"; + }; + } + { + context = "Terminal"; + bindings = { + "ctrl-space w d" = "pane::CloseAllItems"; + "ctrl-space b d" = "pane::CloseActiveItem"; + "ctrl-space b p" = "panel::PreviousPanelTab"; + "ctrl-space b n" = "panel::NextPanelTab"; + "ctrl-space b i" = "tab_switcher::ToggleAll"; + "ctrl-w" = "pane::CloseActiveItem"; + "alt-z" = "terminal_panel::Toggle"; + "alt-d" = "debug_panel::ToggleFocus"; + "ctrl-i" = "tab_switcher::ToggleAll"; + "alt-p" = [ + "tab_switcher::Toggle" + { "select_last" = true; } + ]; + "ctrl-p" = null; + "ctrl-n" = null; + }; } { "context" = "Editor && vim_mode == insert";