Compare commits

...

20 Commits

Author SHA1 Message Date
dichgrem
9f94d6c794 style:env 2025-12-18 21:36:32 +08:00
dichgrem
0ce3551780 update:flake
remove:rebuild.enableNg
update:StateVersion_26.05

Version 434 -> 435:
  bind: 9.20.15 → 9.20.16
  brave: 1.85.111 → 1.85.116, -193.0 KiB
  breeze-icons: 6.20.0 → 6.21.0, +55.5 KiB
  cinnamon-desktop: 6.4.2 → 6.6.0, -10.2 KiB
  cinnamon-translations: 6.4.2 → 6.6.0, +330.4 KiB
  extra-cmake-modules: 6.20.0 → 6.21.0
  firefox: +43.7 KiB
  firefox-unwrapped: +164.1 KiB
  gopls: 0.20.0 → 0.21.0, +2270.5 KiB
  hyprutils: 0.10.4 → 0.11.0
  karchive: 6.20.0 → 6.21.0
  kauth: 6.20.0 → 6.21.0
  kbookmarks: 6.20.0 → 6.21.0
  kcmutils: 6.20.0 → 6.21.0
  kcodecs: 6.20.0 → 6.21.0
  kcolorscheme: 6.20.0 → 6.21.0
  kcompletion: 6.20.0 → 6.21.0
  kconfig: 6.20.0 → 6.21.0
  kconfigwidgets: 6.20.0 → 6.21.0
  kcoreaddons: 6.20.0 → 6.21.0, +20.9 KiB
  kcrash: 6.20.0 → 6.21.0
  kdbusaddons: 6.20.0 → 6.21.0
  kdeclarative: 6.20.0 → 6.21.0
  kdoctools: 6.20.0 → 6.21.0
  kglobalaccel: 6.20.0 → 6.21.0
  kguiaddons: 6.20.0 → 6.21.0
  ki18n: 6.20.0 → 6.21.0, +143.2 KiB
  kiconthemes: 6.20.0 → 6.21.0
  kimageformats: 6.20.0 → 6.21.0
  kio: 6.20.0 → 6.21.0, +112.8 KiB
  kirigami: 6.20.0 → 6.21.0, -181.2 KiB
  kitemviews: 6.20.0 → 6.21.0
  kjobwidgets: 6.20.0 → 6.21.0
  knotifications: 6.20.0 → 6.21.0
  kpackage: 6.20.0 → 6.21.0
  kparts: 6.20.0 → 6.21.0
  kservice: 6.20.0 → 6.21.0
  ksvg: 6.20.0 → 6.21.0
  ktextwidgets: 6.20.0 → 6.21.0
  kwallet: 6.20.0 → 6.21.0
  kwidgetsaddons: 6.20.0 → 6.21.0
  kwindowsystem: 6.20.0 → 6.21.0
  kxmlgui: 6.20.0 → 6.21.0, +16.5 KiB
  nemo: 6.4.5 → 6.6.1, +36.3 KiB
  nixos-system-dos: 26.05.20251211.2fbfb1d → 26.05.20251215.1306659
  python3.13-python-xapp: 3.0.0 → 3.0.1
  qqc2-desktop-style: 6.20.0 → 6.21.0, -72.9 KiB
  ruff: 0.14.8 → 0.14.9, +83.0 KiB
  sing-box: 1.12.12 → 1.12.13
  solid: 6.20.0 → 6.21.0
  sonnet: 6.20.0 → 6.21.0, +48.0 KiB
  source: +251.4 KiB
  vimplugin-mini.nvim: 2025-12-07 → 2025-12-11
  vimplugin-neo-tree.nvim: 2025-12-07 → 2025-12-08
  vimplugin-neoconf.nvim: 2025-12-07 → 2025-12-12
  vimplugin-nvim-lint: 2025-12-06 → 2025-12-11
  vimplugin-nvim-lspconfig: 2025-12-07 → 2025-12-12
  x86_energy_perf_policy: 6.12.61 → 6.12.62
  xapp-symbolic-icons: ∅ → 1.0.6, +1033.0 KiB
  zed-editor: 0.216.0 → 0.216.1, +11.9 KiB
2025-12-18 12:12:04 +08:00
dichgrem
0bd5d771c0 chore:nvim_setting
feat:use biome fmt
test:add copilot
chore:let terminal just one
fix:keymaps for close buffer
fix:disable markdown view && fix conceallevel
2025-12-16 23:56:56 +08:00
dichgrem
85ee50e214 chore:remove_chaotic
feat:Switch_to_zen_kernel
2025-12-14 10:33:32 +08:00
dichgrem
d0c16e345a fix:switch.sh&&mysql
update:flake

Version 406 -> 410:
  bat: 0.26.0 → 0.26.1, +17.6 KiB
  brave: 1.84.141 → 1.85.111, +2964.5 KiB
  hyprlang: 0.6.6 → 0.6.7
  ipxe: 1.21.1-unstable-2025-11-26 → 1.21.1-unstable-2025-12-03
  kazumi: 1.9.0 → 1.9.1, +218.1 KiB
  libbytesize: 2.11 → 2.12
  libvlc: 3.0.21 → 3.0.22, +1912.7 KiB
  mesa: 25.3.0 → 25.3.1, +52.0 KiB
  nixos-system-dos: 26.05.20251202.418468a → 26.05.20251205.f61125a
  scx_full: 1.0.18 → 1.0.19, +27223.4 KiB
  source: +548.8 KiB
  xwayland-satellite: 0.7 → 0.8, +891.4 KiB
  zed-editor: 0.214.7 → 0.215.3, +16693.9 KiB
  fastfetch: 2.55.1 → 2.56.0, +8.6 KiB
  firefox: -61.6 KiB
  firefox-unwrapped: -149.0 KiB
  gst-plugins-rs: 0.14.2 → 0.14.4, -23465.5 KiB
  initrd-linux: +8.7 KiB
  libgit2: 1.9.1 → 1.9.2
  linux: 6.18.0-modules → ∅, -2899.5 KiB
  nix: 2.31.2 → 2.31.2+1
  nix-cmd: 2.31.2 → 2.31.2+1
  nix-expr: 2.31.2 → 2.31.2+1
  nix-fetchers: 2.31.2 → 2.31.2+1
  nix-flake: 2.31.2 → 2.31.2+1
  nix-main: 2.31.2 → 2.31.2+1
  nix-store: 2.31.2 → 2.31.2+1
  nix-util: 2.31.2 → 2.31.2+1
  nixos-icons: 0-unstable-2024-04-10 → 0-unstable-2025-06-28
  nixos-system-dos: 26.05.20251205.f61125a → 26.05.20251208.addf7cf
  nss: 3.118.1 → 3.119
  python3: +216.7 KiB
  python3.12-python-lsp-server: 1.13.2 → 1.14.0
  python3.13-dbus-python: ∅ → 1.4.0, +685.3 KiB
  readest: 0.9.93 → 0.9.94, +1060.0 KiB
  ruff: 0.14.7 → 0.14.8, +87.0 KiB
  samba: 4.22.5 → 4.22.6, +15.4 KiB
  source: +201.2 KiB
  unit-script-initrd-nixos-activation: ε → ∅
  webkitgtk: 2.50.2+abi=4.1 → 2.50.3+abi=4.1
  x86_energy_perf_policy: 6.12.60 → 6.12.61
2025-12-10 22:28:05 +08:00
dichgrem
608238846f update:flake
style:waybar

Version 401 -> 402:
  OVMF: 202508.01 → 202511
  dbeaver-bin: 25.2.5 → 25.3.0, -295.6 KiB
  initrd-linux: 6.17.9 → 6.18.0
  linux: 6.17.9 → 6.18.0, -6579.1 KiB
  lowdown: 2.0.2 → 2.0.4, +13.1 KiB
  nixos-init: 0.1.0 → ∅, -454.1 KiB
  nixos-system-dos: 26.05.20251130.2d293cb → 26.05.20251202.418468a
  ruff: 0.14.6 → 0.14.7, +371.3 KiB
  source: +202.2 KiB
  unit-initrd-find-nixos-closure.service: ε → ∅
  unit-script-initrd-find-nixos-closure: ε → ∅
  unit-script-initrd-nixos-activation: ε → ∅
  v4l2loopback: 0.15.1-6.17.9 → ∅, -313.6 KiB
  vimplugin-luajit2.1-fzf-lua: 0.0.2311-1-unstable-0.0.2311-1 → 0.0.2314-1-unstable-0.0.2314-1
  x86_energy_perf_policy: 6.12.59 → 6.12.60
2025-12-04 17:18:22 +08:00
dichgrem
0c20b462be chore:remove_gfs 2025-12-04 15:04:32 +08:00
dichgrem
e3ff465632 fix:portal_services 2025-12-02 11:36:19 +08:00
dichgrem
ce1d4b644b fix:switch.sh&&swww
remove:hyprpolkit
2025-12-01 21:58:24 +08:00
dichgrem
07349f3fd7 chore:bluetooth_powerOnBoot 2025-12-01 16:43:53 +08:00
dichgrem
21201ec897 refactor:disable_watchdog 2025-12-01 16:29:24 +08:00
dichgrem
50185f2b0a style:justfile 2025-12-01 16:28:21 +08:00
dichgrem
ea529f56a9 fix:niri_screencast
Version 372 -> 373:
  firefox: 145.0.1 → 145.0.2, +28.3 KiB
  firefox-unwrapped: 145.0.1 → 145.0.2, +69.9 KiB
  gpsd: 3.26.1 → 3.27, +250.2 KiB
  gui-for-singbox: 1.13.0 → 1.15.1, +40.5 KiB
  hyprutils: 0.10.2 → 0.10.3, +101.0 KiB
  initrd-linux: +103.9 KiB
  librime: 1.14.0 → 1.15.0, +31.3 KiB
  libtraceevent: 1.8.5 → 1.8.6, +15.2 KiB
  libwacom: 2.16.1 → 2.17.0, +61.2 KiB
  linux: 6.17.9-modules → ∅, -2881.9 KiB
  linux-firmware: 20251111 → 20251125, +13275.6 KiB
  nixos-rebuild-ng: 25.11 → 26.05
  nixos-system-dos: 25.11.20251124.5ae3b07 → 26.05.20251127.2fad6ea
  onlyoffice-desktopeditors: 9.0.0, 9.0.0-fhsenv → 9.1.0, 9.1.0-fhsenv, +27117.5 KiB
  ruff: 0.14.5 → 0.14.6, +404.5 KiB
  source: +22.7 KiB
  vimplugin-luajit2.1-fzf-lua: 0.0.2308-1-unstable-0.0.2308-1 → 0.0.2311-1-unstable-0.0.2311-1
  x86_energy_perf_policy: 6.12.58 → 6.12.59
  xdg-desktop-portal-gnome.service: ε → ∅
  zed-editor: 0.213.3 → 0.214.5, +2388.5 KiB

Version 374 -> 375:
  glycin-loaders: 2.0.5 → 2.0.7
  gnome-online-accounts: 3.56.1 → 3.56.2
  hyprutils: 0.10.3 → 0.10.4
  ipxe: 1.21.1-unstable-2025-11-19 → 1.21.1-unstable-2025-11-26
  jdt-language-server: 1.52.0 → 1.54.0, +170.5 KiB
  libdisplay-info: 0.2.0 → ∅, -379.6 KiB
  libwacom: 2.17.0 → 2.16.1, -61.2 KiB
  mesa: +132.7 KiB
  nexttrace: 1.4.2 → 1.5.0, +14223.6 KiB
  nfs-utils: 2.7.1 → 2.8.4, +73.0 KiB
  niri: 25.08 → 25.11, +974.2 KiB
  nixos-system-dos: 26.05.20251127.2fad6ea → 26.05.20251130.2d293cb
  nodejs: 20.19.5 → 20.19.6, +49.8 KiB
  pnpm: 10.23.0 → 10.24.0, +22.8 KiB
  source: -191.0 KiB
  vimplugin-conform.nvim: 2025-11-17 → 2025-11-25
  vimplugin-markview.nvim: 2025-11-16 → 2025-11-27
  vimplugin-mini.nvim: 2025-11-20 → 2025-11-28
  vimplugin-neoconf.nvim: 2025-11-21 → 2025-11-29
  vimplugin-nvim-lspconfig: 2025-11-20 → 2025-11-27
  vte: 0.82.1 → 0.82.2
  xdg-desktop-portal-gnome.service: ε → ∅
  zed-editor: 0.214.5 → 0.214.7, -83.9 KiB

build:update_flake
2025-12-01 14:57:15 +08:00
dichgrem
18f0d3840b build:update_flake
Version 368 -> 371:
  X-Reload-Triggers: ∅ → ε
  alacritty: +208.7 KiB
  at-spi2-core: 2.58.0 → 2.58.1
  atuin: +191.5 KiB
  bat: +46.0 KiB
  binwalk: +35.8 KiB
  blink-fuzzy-lib: +70.7 KiB
  bluez: 5.83 → 5.84, +224.4 KiB
  brave: 1.84.139 → 1.84.141, +212.5 KiB
  cargo: 1.90.0 → 1.91.1, -902.7 KiB
  clang: +12.9 KiB
  clippy: 1.90.0 → 1.91.1, +485.2 KiB
  cloud-hypervisor: +43.6 KiB
  cmocka: 1.1.8 → ∅, -149.3 KiB
  cryptsetup: -114.9 KiB
  curl: 8.16.0 → 8.17.0
  dart: 3.10.0 → 3.10.1, +11.1 KiB
  dav1d: 1.5.1 → 1.5.2
  dbeaver-bin: 25.2.4 → 25.2.5, +27.2 KiB
  dconf: 0.40.0 → 0.49.0, +52.7 KiB
  ddcutil: 2.2.1 → 2.2.3, +24.6 KiB
  deno: +1603.9 KiB
  eza: +8.0 KiB
  fastfetch: 2.55.0 → 2.55.1
  fd: +34.3 KiB
  firefox: ∅ → 145.0.1, +1782.3 KiB
  firefox-unwrapped: ∅ → 145.0.1, +334305.8 KiB
  floorp-bin: 12.5.0 → ∅, -1253.9 KiB
  floorp-bin-unwrapped: 12.5.0 → ∅, -306065.4 KiB
  floorp-policies.json: ε → ∅
  fluidsynth: 2.5.0 → 2.5.1, -60.0 KiB
  flutter: 3.38.1 → 3.38.3, +23.6 KiB
  flutter-tools: 3.38.1 → 3.38.3
  flutter-wrapped: 3.38.1, 3.38.1-sdk → 3.38.3, 3.38.3-sdk
  fzf: -433.1 KiB
  gdk-pixbuf: 2.44.3 → 2.44.4
  gh: -6067.8 KiB
  git-credential-keepassxc: +28.8 KiB
  glycin-loaders: -10.5 KiB
  go: 1.25.3 → 1.25.4, -7773.0 KiB
  gofumpt: -421.1 KiB
  golines: -1197.0 KiB
  gopls: -4605.0 KiB
  greetd: -9.5 KiB
  gsettings-desktop-schemas: 49.0 → 49.1
  gst-plugins-rs: +31.5 KiB
  gstreamer: +9.7 KiB
  gtk4: 4.20.2 → 4.20.3, +184.1 KiB
  gui-for-singbox: -1254.3 KiB
  hwdata: 0.400 → 0.401, +37.9 KiB
  hyprgraphics: 0.3.0 → 0.4.0
  hyprlang: 0.6.5 → 0.6.6
  icu4c: ∅ → 77.1, +39185.6 KiB
  initrd: ε → ∅
  initrd-linux: 6.17.8 → 6.17.9, +160.3 KiB
  ipxe: 1.21.1-unstable-2025-11-13 → 1.21.1-unstable-2025-11-19
  iso-codes: 4.18.0 → 4.19.0, +1680.3 KiB
  just: +25.1 KiB
  kazumi: 1.8.8 → 1.9.0, +7952.5 KiB
  kcmutils: +15.2 KiB
  keepassxc: 2.7.10 → 2.7.11, +790.6 KiB
  kimageformats: -11.9 KiB
  kirigami: +41.8 KiB
  kirigami-addons: +540.4 KiB
  libadwaita: 1.8.0 → 1.8.1, +17.4 KiB
  libcap: 2.76 → 2.77, -392.1 KiB
  libcbor: -94.3 KiB
  libdeflate: 1.24 → 1.25
  libdovi: -267.9 KiB
  libdrm: 2.4.127 → 2.4.128
  libfido2: -58.7 KiB
  libplasma: 6.5.2 → 6.5.3, +201.8 KiB
  libpwquality: -45.3 KiB
  libressl: 4.2.0 → 4.2.1
  librsvg: 2.61.2 → 2.61.3, -28.5 KiB
  libseccomp: -97.5 KiB
  libtpms: -44.0 KiB
  liburcu: 0.15.3 → 0.15.5
  libxcrypt: 4.4.38 → 4.5.2, +33.2 KiB
  linux: 6.17.8 → 6.17.9, 6.17.9-modules, +2885.8 KiB
  livekit-libwebrtc: 125-unstable-2025-03-24 → 125-unstable-2025-07-25, +31.3 KiB
  localsend: -13.9 KiB
  lvm2: -135.0 KiB
  materialgram: -39.7 KiB
  mbedtls: 3.6.4 → 3.6.5, +24.6 KiB
  mesa: +29.2 KiB
  nexttrace: -1399.8 KiB
  ngtcp2: 1.15.1 → 1.17.0, +34.5 KiB
  niri: +23.1 KiB
  nixos-system-dos: 25.11.20251117.89c2b23 → 25.11.20251124.5ae3b07
  nixpkgs-fmt: +26.5 KiB
  nspr: 4.37 → 4.38.2
  nss: ∅ → 3.118.1, +4210.4 KiB
  ntpd-rs: +72.9 KiB
  onefetch: +97.6 KiB
  onnxruntime: ∅ → 1.22.2, +47328.0 KiB
  openjdk: -20.4 KiB
  openjdk-headless: +15.2 KiB
  openvswitch: 3.6.0 → 3.6.1
  payload-dumper-go: -484.0 KiB
  pciutils: +19.0 KiB
  pcsclite: -277.2 KiB
  plasma-activities: 6.5.2 → 6.5.3, +22.9 KiB
  pnpm: 10.22.0 → 10.23.0, -126.9 KiB
  protobuf: 33.0 → 32.1, -164.7 KiB
  python3.12-python-lsp-server: 1.13.1 → 1.13.2
  python3.13-brotli: 1.1.0 → 1.2.0, -891.7 KiB
  python3.13-protobuf: 6.33.0 → 6.33.1
  python3.13-pygobject: 3.54.3 → 3.54.5, +14.0 KiB
  qqc2-desktop-style: +9.8 KiB
  qrencode: -65.9 KiB
  qt5compat: 6.10.0 → 6.10.1
  qtbase: 6.10.0, 6.10.0-only-plugins → 6.10.1, 6.10.1-only-plugins, +28.6 KiB
  qtdeclarative: 6.10.0 → 6.10.1, -446.4 KiB
  qtimageformats: 6.10.0 → 6.10.1
  qtmultimedia: 6.10.0 → 6.10.1, +195.7 KiB
  qtquick3d: 6.10.0 → 6.10.1, +114.7 KiB
  qtshadertools: 6.10.0 → 6.10.1
  qtspeech: 6.10.0 → 6.10.1
  qtsvg: 6.10.0 → 6.10.1
  qttools: 6.10.0 → 6.10.1, -35.2 KiB
  qttranslations: 6.10.0 → 6.10.1
  qtwayland: 6.10.0, 6.10.0-only-plugins → 6.10.1, 6.10.1-only-plugins, +15.7 KiB
  readest: 0.9.91 → 0.9.93, +328.0 KiB
  resvg: -150.1 KiB
  ripgrep: +10.6 KiB
  rt5677-firmware: ε → 4.16-10
  rtl8192su: 0-unstable-2016-10-05 → ∅, -310.7 KiB
  rtl8192su-firmware: ∅ → 0-unstable-2016-10-05, +310.7 KiB
  rtl8761b-firmware: ε → ∅, -17.0 KiB
  rtl8761b-firmware-rtk1395: ∅ → ε, +17.0 KiB
  ruby: +8.7 KiB
  ruff: 0.14.4 → 0.14.5, +920.8 KiB
  rust-analyzer-unwrapped: +919.3 KiB
  rust-lib: +345.9 KiB
  rustc: 1.90.0 → 1.91.1, +23550.4 KiB
  rustc-wrapper: 1.90.0 → 1.91.1
  rustfmt: 1.90.0 → 1.91.1, +145.8 KiB
  sarasa-gothic: 1.0.34 → 1.0.35, +2335.4 KiB
  scx_full: -759.8 KiB
  sd-switch: +15.4 KiB
  shfmt: -317.1 KiB
  sord: 0.16.18 → 0.16.20
  source: +264.6 KiB
  spectre_oxi: -11.8 KiB
  sratom: 0.6.18 → 0.6.20
  starship: +203.8 KiB
  strawberry: -12.0 KiB
  stylua: +154.6 KiB
  swayosd: -15.7 KiB
  swww: +174.1 KiB
  syncthing: -2564.0 KiB
  systemd: 258.1 → 258.2, +27.1 KiB
  systemd-minimal: 258.1 → 258.2
  systemd-minimal-libs: 258.1 → 258.2
  taplo: +115.3 KiB
  termshark: -1751.9 KiB
  thin-provisioning-tools: +24.1 KiB
  tpm2-tss: -430.6 KiB
  tree-sitter: +99.3 KiB
  tsukimi: -40.2 KiB
  tuigreet: +9.8 KiB
  unit-script-initrd-nixos-activation: ∅ → ε
  unit-systemd-tmpfiles-setup-sysroot.service: ε → ∅
  utf8proc: 2.11.0 → 2.11.1
  v4l2loopback: 0.15.1-6.17.8 → 0.15.1-6.17.9
  vimplugin-LazyVim: 2025-11-06 → 2025-11-11
  vimplugin-conform.nvim: 2025-11-05 → 2025-11-17
  vimplugin-luajit2.1-fzf-lua: 0.0.2296-1-unstable-0.0.2296-1 → 0.0.2308-1-unstable-0.0.2308-1
  vimplugin-luajit2.1-grug-far.nvim: 1.6.52-1-unstable-1.6.52-1 → 1.6.53-1-unstable-1.6.53-1
  vimplugin-markview.nvim: 2025-11-06 → 2025-11-16, -15.6 KiB
  vimplugin-mini.nvim: 2025-11-07 → 2025-11-20
  vimplugin-neo-tree.nvim: 2025-11-04 → 2025-11-19
  vimplugin-neoconf.nvim: 2025-11-07 → 2025-11-21
  vimplugin-nvim-lint: 2025-11-06 → 2025-11-21
  vimplugin-nvim-lspconfig: 2025-11-03 → 2025-11-20, +139.7 KiB
  vimplugin-nvim-treesitter-context: 2025-10-21 → 2025-11-10, +8.5 KiB
  vimplugin-snacks.nvim: 2025-11-07 → 2025-11-18
  vimplugin-todo-comments.nvim: 2025-10-28 → 2025-11-10
  webkitgtk: 2.50.1+abi=4.1 → 2.50.2+abi=4.1, +74.6 KiB
  wl-clipboard-rs: -31.7 KiB
  wl-gammarelay-rs: +21.5 KiB
  xkeyboard-config: 2.45 → 2.46, +48.1 KiB
  xwayland-satellite: +68.1 KiB
  yamlfmt: -431.8 KiB
  yazi: +219.2 KiB
  zed-editor: 0.212.6 → 0.213.3, -456.0 KiB
  zellij: +789.3 KiB
  zfs-user: 2.3.4 → 2.3.5
  zoxide: +12.5 KiB
2025-11-28 20:08:02 +08:00
dichgrem
b25e922bc3 build:update_flake
Version 362 -> 363:
  deno: ∅ → 2.5.6, +138840.2 KiB
  fzf: 0.66.1 → 0.67.0, +9.1 KiB
  hm_gdugdu.yaml: ∅ → ε
  kazumi: 1.8.7 → 1.8.8, +139.2 KiB
  libblockdev: 3.3.0 → 3.4.0
  mesa: -21448.4 KiB
  nixos-system-dos: 25.11.20251116.50a96ed → 25.11.20251117.89c2b23
  python3.13-python-xapp: 2.4.2 → 3.0.0, +84.9 KiB
  python3.13-yt-dlp-ejs: ∅ → 0.3.1, +173.2 KiB
  scx_full: 1.0.17 → 1.0.18, +707.0 KiB
  source: -334.4 KiB
  starship: 1.24.0 → 1.24.1, +17.5 KiB
  yt-dlp: 2025.10.22 → 2025.11.12, +329.9 KiB

add:yazi
remove:vscode
add:nvim_mdview
feat:Power-control
2025-11-22 15:38:18 +08:00
dichgrem
003ab2fff7 chore:env_add_android
chore:add_gh&&fix_git-full
2025-11-21 19:01:44 +08:00
dichgrem
51d40326c4 test(OK):sql_study
style:env
2025-11-19 09:47:13 +08:00
dichgrem
e2a382d90e build:update_flake
Version 352 -> 353:
  SwayNotificationCenter: 0.12.2 → 0.12.3, +36.5 KiB
  adw-gtk3: 6.3 → 6.4
  adwaita-icon-theme: 48.0 → 49.0, +17.0 KiB
  alacritty: -31.2 KiB
  at-spi2-core: 2.56.2 → 2.58.0, +17.9 KiB
  atuin: 18.8.0 → 18.10.0, -126.9 KiB
  bat: +11.3 KiB
  binwalk: -9.4 KiB
  blink-fuzzy-lib: 1.7.0 → 1.8.0, +1315.6 KiB
  botan: 3.9.0 → 3.10.0, +40.7 KiB
  brave: 1.84.135 → 1.84.139
  breeze-icons: 6.19.0 → 6.20.0, +40.0 KiB
  btrfs-progs: 6.17 → 6.17.1, +8.8 KiB
  c-ares: +589.5 KiB
  cargo: 1.89.0 → 1.90.0, +2996.8 KiB
  cef-binary: 138.0.17 → 6533, +468079.8 KiB
  chafa: 1.16.2 → 1.18.0
  cloud-hypervisor: 48.0 → 49.0, +8.2 KiB
  dash: 0.5.12 → 0.5.13.1, +10.3 KiB
  dconf-editor: 45.0.1 → 49.0, +373.4 KiB
  drbd: 9.32.0 → 9.33.0, +151.3 KiB
  elfutils: 0.193 → 0.194, -78.5 KiB
  extra-cmake-modules: 6.19.0 → 6.20.0, +14.6 KiB
  fastfetch: 2.54.0 → 2.55.0, +16.1 KiB
  fc: -16.5 KiB
  ffmpeg: 6.1.2, 7.1.1 → 6.1.3, 7.1.2, 8.0, +33871.2 KiB
  ffmpeg-headless: 7.1.1 → 8.0, +5278.0 KiB
  file: -8541.1 KiB
  firmware: +8.2 KiB
  floorp-bin: 12.4.0 → 12.5.0
  floorp-bin-unwrapped: 12.4.0 → 12.5.0, +3110.3 KiB
  fluidsynth: 2.4.8 → 2.5.0, +236.4 KiB
  fmt: 11.2.0 → 12.0.0, +13.2 KiB
  fzf: +433.1 KiB
  gdk-pixbuf: 2.42.12 → 2.44.3, +19.8 KiB
  gfxstream: -42.5 KiB
  git-with-svn: 2.51.0 → 2.51.2, +73.4 KiB
  glib: 2.84.4 → 2.86.1, +135.2 KiB
  glibmm: -80.2 KiB
  glycin-loaders: 1.2.3 → 2.0.5, +3124.7 KiB
  gnome-desktop: 44.3 → 44.4
  gnome-online-accounts: 3.54.5 → 3.56.1
  gnome-settings-daemon: 48.1-gsettings → 49.1-gsettings
  gnome-shell-extension-user-themes: 64 → 69
  gnumake: -1569.8 KiB
  go: 1.25.2 → 1.25.3, +7776.4 KiB
  gobject-introspection: 1.84.0 → 1.86.0, +12.6 KiB
  gobject-introspection-wrapped: 1.84.0 → 1.86.0
  greetd: -9.0 KiB
  gsettings-desktop-schemas: 48.0 → 49.0, +308.6 KiB
  gst-plugins-bad: -38.4 KiB
  gst-plugins-rs: -310.6 KiB
  gstreamer: -18.9 KiB
  gtk+3: 3.24.49 → 3.24.51, -625.5 KiB
  gtk4: 4.18.6 → 4.20.2, +398.1 KiB
  gui-for-singbox: +1258.3 KiB
  gvfs: 1.57.2 → 1.58.0
  hyprgraphics: 0.2.0 → 0.3.0
  hyprlang: 0.6.4 → 0.6.5
  hyprutils: 0.10.0 → 0.10.2, +41.9 KiB
  inih: 61 → 62
  initrd: ∅ → ε
  initrd-linux: 6.17.7 → 6.17.8
  ipxe: 1.21.1-unstable-2025-11-05 → 1.21.1-unstable-2025-11-13
  just: 1.43.0 → 1.43.1, +35.5 KiB
  karchive: 6.19.0 → 6.20.0
  kauth: 6.19.0 → 6.20.0
  kbookmarks: 6.19.0 → 6.20.0
  kcmutils: 6.19.0 → 6.20.0, +11.6 KiB
  kcodecs: 6.19.0 → 6.20.0
  kcolorscheme: 6.19.0 → 6.20.0
  kcompletion: 6.19.0 → 6.20.0
  kconfig: 6.19.0 → 6.20.0
  kconfigwidgets: 6.19.0 → 6.20.0
  kcoreaddons: 6.19.0 → 6.20.0
  kcrash: 6.19.0 → 6.20.0
  kdbusaddons: 6.19.0 → 6.20.0
  kdeclarative: 6.19.0 → 6.20.0
  kdoctools: 6.19.0 → 6.20.0
  kexec-tools: 2.0.31 → 2.0.32
  kglobalaccel: 6.19.0 → 6.20.0
  kguiaddons: 6.19.0 → 6.20.0
  ki18n: 6.19.0 → 6.20.0
  kiconthemes: 6.19.0 → 6.20.0
  kimageformats: 6.19.0 → 6.20.0
  kio: 6.19.1 → 6.20.0, +17.3 KiB
  kirigami: 6.19.0 → 6.20.0, +27.7 KiB
  kitemviews: 6.19.0 → 6.20.0
  kjobwidgets: 6.19.0 → 6.20.0
  knotifications: 6.19.0 → 6.20.0
  kpackage: 6.19.0 → 6.20.0
  kparts: 6.19.0 → 6.20.0
  kservice: 6.19.0 → 6.20.0
  ksvg: 6.19.0 → 6.20.0
  ktextwidgets: 6.19.0 → 6.20.0
  kwallet: 6.19.0 → 6.20.0
  kwidgetsaddons: 6.19.0 → 6.20.0
  kwindowsystem: 6.19.0 → 6.20.0
  kxmlgui: 6.19.0 → 6.20.0
  libadwaita: 1.7.6 → 1.8.0, +85.0 KiB
  libarchive: 3.8.1 → 3.8.2
  libcamera: -302.3 KiB
  libcap: +188.2 KiB
  libdecor: 0.2.3 → 0.2.4
  libdisplay-info: +470.6 KiB
  libdrm: 2.4.126 → 2.4.127
  libedit: 20250104-3.1 → 20251016-3.1
  liberation-fonts: -18.9 KiB
  libinput: 1.29.1 → 1.29.2
  libpq: 18.0 → 18.1
  libqmi: +12.0 KiB
  librsvg: 2.61.1 → 2.61.2, -63.6 KiB
  libshumate: 1.4.0 → 1.5.1
  libsysprof-capture: 48.0 → 49.0
  libtraceevent: 1.8.4 → 1.8.5
  libunistring: 1.4 → 1.4.1
  libvmaf: -11.1 KiB
  libxml2: 2.15.0 → 2.15.1
  linux: 6.17.7, 6.17.7-modules → 6.17.8, -2832.3 KiB
  linux-firmware: 20251021 → 20251111, +9984.6 KiB
  loupe: 48.1 → 49.1, -382.6 KiB
  mesa: 25.2.6 → 25.3.0, +43240.2 KiB
  networkmanager: 1.52.1 → 1.54.1, +140.4 KiB
  nexttrace: +1399.8 KiB
  nix: -41.8 KiB
  nix-cmd: -22.7 KiB
  nix-expr: -57.6 KiB
  nix-fetchers: -46.9 KiB
  nix-flake: -27.1 KiB
  nix-main: -8.2 KiB
  nix-output-monitor: 2.1.6 → 2.1.8, +214.7 KiB
  nix-store: -90.8 KiB
  nix-util: -38.2 KiB
  nixos-system-dos: 25.11.20251108.b6a8526 → 25.11.20251116.50a96ed
  nixpkgs-fmt: -8.6 KiB
  nodejs: 22.20.0 → 22.21.1, +204.9 KiB
  ntpd-rs: -20.9 KiB
  obs-studio: -9207.5 KiB
  onefetch: -191.1 KiB
  onetbb: 2022.2.0 → 2022.3.0, +13.9 KiB
  openapv: ∅ → 0.2.0.4, +1377.5 KiB
  openjdk: 21.0.9+8 → 21.0.9+10, +30.9 KiB
  openjpeg: 2.5.2 → 2.5.4, +18.4 KiB
  openssh: 10.1p1 → 10.2p1, -93.4 KiB
  p11-kit: 0.25.9 → 0.25.10
  pango: 1.56.4 → 1.57.0, +15.7 KiB
  patchelf: 0.15.2 → ∅, -241.6 KiB
  payload-dumper-go: +484.0 KiB
  pipewire: -8.5 KiB
  pnpm: 10.20.0 → 10.22.0, -46.6 KiB
  protobuf: 32.1 → 33.0, +164.7 KiB
  publicsuffix-list: 0-unstable-2025-08-28 → 0-unstable-2025-10-08
  python3: 3.13.8 → 3.13.9, -220.1 KiB
  python3.13-cryptography: 46.0.1 → 46.0.2
  python3.13-idna: 3.10 → 3.11, +12.6 KiB
  python3.13-platformdirs: 4.3.8 → 4.5.0
  python3.13-protobuf: 6.32.1 → 6.33.0
  python3.13-psutil: 7.1.0 → 7.1.2, -39.4 KiB
  python3.13-pygobject: 3.50.0 → 3.54.3, -32.2 KiB
  qemu: +16.0 KiB
  qqc2-desktop-style: 6.19.0 → 6.20.0
  qtbase: 5.15.17 → 5.15.18, -187.3 KiB
  qtdeclarative: 5.15.17 → 5.15.18, +131.0 KiB
  qtquickcontrols: 5.15.17 → 5.15.18
  qtsvg: 5.15.17 → 5.15.18
  qttools: 5.15.17 → 5.15.18
  qttranslations: 5.15.17 → 5.15.18
  qtwayland: 5.15.17 → 5.15.18
  qtx11extras: 5.15.17 → 5.15.18
  readest: +16.0 KiB
  ripgrep: +23.5 KiB
  ruby: 3.3.9 → 3.3.10, -13.5 KiB
  ruff: 0.14.3 → 0.14.4, +190.9 KiB
  rustc: 1.89.0 → 1.90.0, +12796.9 KiB
  rustc-wrapper: 1.89.0 → 1.90.0
  rustfmt: 1.89.0 → 1.90.0, +66.5 KiB
  rutabaga_gfx: -33.7 KiB
  s2n-tls: 1.5.26 → 1.5.27
  sarasa-gothic: 1.0.33 → 1.0.34, -4374.7 KiB
  scx_full: +81.9 KiB
  sdl2-compat: 2.32.56 → 2.32.58, +8.1 KiB
  sdl3: 3.2.24 → 3.2.26
  shfmt: +317.1 KiB
  sleuthkit: +15.8 KiB
  solid: 6.19.0 → 6.20.0, -19.6 KiB
  sonnet: 6.19.0 → 6.20.0
  source: +589.0 KiB
  spandsp: +21339.6 KiB
  starship: +56.5 KiB
  swayosd: -94.2 KiB
  syncthing: +2564.0 KiB
  systemd: 258 → 258.1, +43.8 KiB
  systemd-minimal: 258 → 258.1, -1260.3 KiB
  systemd-minimal-libs: 258 → 258.1, +8.7 KiB
  taplo: -40.3 KiB
  termshark: +1755.9 KiB
  thin-provisioning-tools: +46.1 KiB
  tinysparql: 3.9.2 → 3.10.1, +13.6 KiB
  tsukimi: -13.3 KiB
  unbound: 1.24.0 → 1.24.1
  unit-linger-users.service: ∅ → ε
  unit-script-linger-users: ∅ → ε
  unit-systemd-tmpfiles-setup-sysroot.service: ∅ → ε
  untitled-gnome-shell: +18.7 KiB
  v4l-utils: 1.30.1 → 1.32.0, -128.3 KiB
  v4l2loopback: 0.15.1-6.17.7 → 0.15.1-6.17.8
  vimplugin-blink.cmp: 1.7.0 → 1.8.0, +9.8 KiB
  vimplugin-luajit2.1-luasnip: 2.4.0-1-unstable-2.4.0-1 → 2.4.1-1-unstable-2.4.1-1, +35.2 KiB
  vte: 0.80.3 → 0.82.1, +1056.1 KiB
  waybar: -65.2 KiB
  webrtc-audio-processing: -241.8 KiB
  wl-clipboard-rs: +68.9 KiB
  xapp: 3.0.1 → 3.2.0, -812.6 KiB
  xdg-desktop-portal-gnome: 48.0 → 49.0
  xen: 4.20.1 → 4.20.2, -19.1 KiB
  xwayland-satellite: -15.1 KiB
  yamlfmt: +431.8 KiB
  zed-editor: 0.211.6 → 0.212.6, -2413.6 KiB
  zellij: +71.6 KiB
  zenity: 4.1.90 → 4.2.1, +60.1 KiB

build:add_rust
chore:lsp&&fmt
2025-11-18 17:30:41 +08:00
dichgrem
e02cfc5dcd build:neotree
fix:highlight
fix:nvim_fmt
fix:stop_autofmt
fix:update_notice
fix:niri_scroll
2025-11-15 21:55:28 +08:00
dichgrem
02da5c19e2 build:update_flake
fix:zellij
add:bat&&wget
add:make/cmake
remove:sudo-rs
2025-11-13 20:26:50 +08:00
40 changed files with 1278 additions and 856 deletions

View File

@@ -5,79 +5,80 @@ hostname := `hostname`
username := `whoami`
anywhere input:
@anywhere input:
# Perform nixos-anywhere install
nix run github:nix-community/nixos-anywhere -- --generate-hardware-config nixos-generate-config ./hosts/{{input}}/hardware.nix --flake .#{{input}} --target-host root@{{input}}
anywhere-lb input:
@anywhere-lb input:
# Perform nixos-anywhere install (local builder)
nix run github:nix-community/nixos-anywhere -- --generate-hardware-config nixos-generate-config ./hosts/{{input}}/hardware.nix --flake .#{{input}} --target-host root@{{input}} --build-on local
anywhere-vm input:
@anywhere-vm input:
# Test nixos-anywhere install in vm
nix run github:nix-community/nixos-anywhere -- --flake .#{{input}} --vm-test
build input:
@build input:
# Build
sudo nixos-rebuild build --flake .#{{input}} --show-trace -L -v
build-vm input:
@build-vm input:
# Build a vm
sudo nixos-rebuild build-vm --flake .#{{input}} --show-trace -L -v
clean:
@switch input:
# Let system rebuild and switch
sudo nixos-rebuild switch --flake .#{{input}} --show-trace -L -v
@clean:
# Remove useless nix-channel files
sudo rm -rf /nix/var/nix/profiles/per-user/root/channels /root/.nix-defexpr/channels
format:
# Use alejandra and deadnix to format code
deadnix -e
alejandra .
gc:
@gc:
# Do garbage-clean (remove unused packages, etc)
sudo nix profile wipe-history --older-than 7d --profile /nix/var/nix/profiles/system
sudo nix-collect-garbage --delete-old
ghc:
@ghc:
# Generate hardware.nix
nixos-generate-config --show-hardware-config > ./hosts/{{hostname}}/hardware.nix
install:
@install:
# Install this flake
bash install.sh
list:
@cat:
# List system packages
nix-store -qR /run/current-system | cat
profile:
# Show system profile
sudo nix profile history --profile /nix/var/nix/profiles/system
@list:
sudo nix-env -p /nix/var/nix/profiles/system --list-generations
switch input:
# Let system rebuild and switch
sudo nixos-rebuild switch --flake .#{{input}} --show-trace -L -v
@diff:
sudo nix profile diff-closures --profile /nix/var/nix/profiles/system
update:
@delete generation:
sudo nix-env -p /nix/var/nix/profiles/system --delete-generations {{generation}}
@update:
# Update flake.lock
nix flake update --extra-experimental-features flakes --extra-experimental-features nix-command --show-trace
upgrade:
@upgrade:
# Let system totally upgrade
## Set hostname and username in flake.nix
sed -i "/^\s*hostname[[:space:]]*=[[:space:]]*\"/s/\"\(.*\)\"/\"{{hostname}}\"/" ./flake.nix
@@ -87,7 +88,7 @@ upgrade:
sudo nixos-rebuild switch --flake .#{{hostname}} --show-trace
upgrade-debug:
@upgrade-debug:
# Let system totally upgrade (deBug Mode)
## Set hostname and username in flake.nix
sed -i "/^\s*hostname[[:space:]]*=[[:space:]]*\"/s/\"\(.*\)\"/\"{{hostname}}\"/" ./flake.nix

View File

@@ -22,7 +22,7 @@ bind = Ctrl_ALT, B, exec, pkill waybar;sleep 1;waybar # Status Bar
## Shortcuts
### Browser
bind = SUPER, B, exec, floorp
bind = SUPER, B, exec, firefox
### Lock-window
bind = SUPER, L, exec, hyprlock
### File Explorer

View File

@@ -1,6 +1,6 @@
input {
disable-power-key-handling
focus-follows-mouse
focus-follows-mouse max-scroll-amount="0%"
warp-mouse-to-focus
mouse {
@@ -24,7 +24,7 @@ binds {
// Shortcuts
Super+Shift+Slash { show-hotkey-overlay; }
Super+E { spawn "nemo"; }
Super+B { spawn "floorp";}
Super+B { spawn "firefox";}
Super+L { spawn "hyprlock";}
Super+M { spawn-sh "$HOME/.config/niri/switch_monitors.sh"; }
Ctrl+Super+Q { spawn "wlogout"; }
@@ -181,9 +181,8 @@ binds {
environment {
CURRENT_COMPOSITOR "niri"
DISPLAY ":0"
XDG_CURRENT_DESKTOP "niri"
XDG_SESSION_DESKTOP "niri"
XDG_CURRENT_DESKTOP "Niri"
XDG_SESSION_DESKTOP "Niri"
}
@@ -201,7 +200,7 @@ spawn-at-startup "blueman-applet"
spawn-at-startup "sh" "-c" "dbus-update-activation-environment --systemd --all && systemctl --user stop niri-session.target && systemctl --user start niri-session.target"
spawn-at-startup "swayosd-server"
spawn-at-startup "swww-daemon"
spawn-at-startup "sh" "-c" "sleep 1 && swww img $HOME/Git/DCGOS/dotfiles/.local/share/wallpapers/yohoho.jpg"
spawn-at-startup "swww" "img" "$HOME/Git/DCGOS/dotfiles/.local/share/wallpapers/yohoho.jpg"
spawn-at-startup "swww" "restore"
spawn-at-startup "waybar"
spawn-at-startup "lxqt-policykit-agent"
@@ -293,4 +292,4 @@ layout {
top 0
bottom 0
}
}
}

View File

@@ -48,3 +48,7 @@ echo "$NEXT_MODE" > "$STATE_FILE"
# 刷新 Niri 布局(防止残影)
sleep 0.5
niri msg reload-layout >/dev/null 2>&1 || true
pkill swayosd-server
(swayosd-server &>/dev/null &)
pkill wl-gammarelay-rs
(wl-gammarelay-rs &>/dev/null &)

View File

@@ -10,7 +10,7 @@
"custom/startmenu",
"backlight",
"wireplumber",
"battery",
"custom/wl-gammarelay-brightness",
"hyprland/workspaces",
"niri/workspaces",
"sway/workspaces"
@@ -21,9 +21,9 @@
"modules-right": [
"custom/screenshot",
"tray",
"custom/wl-gammarelay-brightness",
// "custom/wl-gammarelay-temperature",
"clock",
"battery",
"custom/swaync",
],
@@ -182,4 +182,3 @@
"escape": true,
},
}

View File

@@ -131,3 +131,27 @@ tooltip label {
padding-right: 8px;
padding-left: 10px;
}
#custom-startmenu {
color: @overlay2;
}
#wireplumber {
color: @green;
}
#custom-wl-gammarelay-brightness {
color: @sapphire;
}
#custom-wl-gammarelay-temperature {
color: @teal;
}
#custom-swaync {
color: @overlay2;
}
#wlr-taskbar {
color: @subtext0;
}

466
dotfiles/.config/zellij/config.kdl vendored Normal file
View File

@@ -0,0 +1,466 @@
//
// THIS FILE WAS AUTOGENERATED BY ZELLIJ, THE PREVIOUS FILE AT THIS LOCATION WAS COPIED TO: /home/dich/.config/zellij/config.kdl.bak.1
//
keybinds clear-defaults=true {
locked {
bind "Ctrl g" { SwitchToMode "normal"; }
}
pane {
bind "left" { MoveFocus "left"; }
bind "down" { MoveFocus "down"; }
bind "up" { MoveFocus "up"; }
bind "right" { MoveFocus "right"; }
bind "c" { SwitchToMode "renamepane"; PaneNameInput 0; }
bind "d" { NewPane "down"; SwitchToMode "normal"; }
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
bind "f" { ToggleFocusFullscreen; SwitchToMode "normal"; }
bind "h" { MoveFocus "left"; }
bind "i" { TogglePanePinned; SwitchToMode "normal"; }
bind "j" { MoveFocus "down"; }
bind "k" { MoveFocus "up"; }
bind "l" { MoveFocus "right"; }
bind "n" { NewPane; SwitchToMode "normal"; }
bind "p" { SwitchFocus; }
bind "Ctrl p" { SwitchToMode "normal"; }
bind "r" { NewPane "right"; SwitchToMode "normal"; }
bind "w" { ToggleFloatingPanes; SwitchToMode "normal"; }
bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
}
tab {
bind "left" { GoToPreviousTab; }
bind "down" { GoToNextTab; }
bind "up" { GoToPreviousTab; }
bind "right" { GoToNextTab; }
bind "1" { GoToTab 1; SwitchToMode "normal"; }
bind "2" { GoToTab 2; SwitchToMode "normal"; }
bind "3" { GoToTab 3; SwitchToMode "normal"; }
bind "4" { GoToTab 4; SwitchToMode "normal"; }
bind "5" { GoToTab 5; SwitchToMode "normal"; }
bind "6" { GoToTab 6; SwitchToMode "normal"; }
bind "7" { GoToTab 7; SwitchToMode "normal"; }
bind "8" { GoToTab 8; SwitchToMode "normal"; }
bind "9" { GoToTab 9; SwitchToMode "normal"; }
bind "[" { BreakPaneLeft; SwitchToMode "normal"; }
bind "]" { BreakPaneRight; SwitchToMode "normal"; }
bind "b" { BreakPane; SwitchToMode "normal"; }
bind "h" { GoToPreviousTab; }
bind "j" { GoToNextTab; }
bind "k" { GoToPreviousTab; }
bind "l" { GoToNextTab; }
bind "n" { NewTab; SwitchToMode "normal"; }
bind "r" { SwitchToMode "renametab"; TabNameInput 0; }
bind "s" { ToggleActiveSyncTab; SwitchToMode "normal"; }
bind "Ctrl t" { SwitchToMode "normal"; }
bind "x" { CloseTab; SwitchToMode "normal"; }
bind "tab" { ToggleTab; }
}
resize {
bind "left" { Resize "Increase left"; }
bind "down" { Resize "Increase down"; }
bind "up" { Resize "Increase up"; }
bind "right" { Resize "Increase right"; }
bind "+" { Resize "Increase"; }
bind "-" { Resize "Decrease"; }
bind "=" { Resize "Increase"; }
bind "H" { Resize "Decrease left"; }
bind "J" { Resize "Decrease down"; }
bind "K" { Resize "Decrease up"; }
bind "L" { Resize "Decrease right"; }
bind "h" { Resize "Increase left"; }
bind "j" { Resize "Increase down"; }
bind "k" { Resize "Increase up"; }
bind "l" { Resize "Increase right"; }
bind "Ctrl n" { SwitchToMode "normal"; }
}
move {
bind "left" { MovePane "left"; }
bind "down" { MovePane "down"; }
bind "up" { MovePane "up"; }
bind "right" { MovePane "right"; }
bind "h" { MovePane "left"; }
bind "Ctrl h" { SwitchToMode "normal"; }
bind "j" { MovePane "down"; }
bind "k" { MovePane "up"; }
bind "l" { MovePane "right"; }
bind "n" { MovePane; }
bind "p" { MovePaneBackwards; }
bind "tab" { MovePane; }
}
scroll {
bind "Alt left" { MoveFocusOrTab "left"; SwitchToMode "normal"; }
bind "Alt down" { MoveFocus "down"; SwitchToMode "normal"; }
bind "Alt up" { MoveFocus "up"; SwitchToMode "normal"; }
bind "Alt right" { MoveFocusOrTab "right"; SwitchToMode "normal"; }
bind "e" { EditScrollback; SwitchToMode "normal"; }
bind "Alt h" { MoveFocusOrTab "left"; SwitchToMode "normal"; }
bind "Alt j" { MoveFocus "down"; SwitchToMode "normal"; }
bind "Alt k" { MoveFocus "up"; SwitchToMode "normal"; }
bind "Alt l" { MoveFocusOrTab "right"; SwitchToMode "normal"; }
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
}
search {
bind "c" { SearchToggleOption "CaseSensitivity"; }
bind "n" { Search "down"; }
bind "o" { SearchToggleOption "WholeWord"; }
bind "p" { Search "up"; }
bind "w" { SearchToggleOption "Wrap"; }
}
session {
bind "a" {
LaunchOrFocusPlugin "zellij:about" {
floating true
move_to_focused_tab true
}
SwitchToMode "normal"
}
bind "c" {
LaunchOrFocusPlugin "configuration" {
floating true
move_to_focused_tab true
}
SwitchToMode "normal"
}
bind "Ctrl o" { SwitchToMode "normal"; }
bind "p" {
LaunchOrFocusPlugin "plugin-manager" {
floating true
move_to_focused_tab true
}
SwitchToMode "normal"
}
bind "w" {
LaunchOrFocusPlugin "session-manager" {
floating true
move_to_focused_tab true
}
SwitchToMode "normal"
}
}
shared_except "locked" {
bind "Alt +" { Resize "Increase"; }
bind "Alt -" { Resize "Decrease"; }
bind "Alt =" { Resize "Increase"; }
bind "Alt [" { PreviousSwapLayout; }
bind "Alt ]" { NextSwapLayout; }
bind "Alt f" { ToggleFloatingPanes; }
bind "Ctrl g" { SwitchToMode "locked"; }
bind "Alt i" { MoveTab "left"; }
bind "Alt n" { NewPane; }
bind "Alt o" { MoveTab "right"; }
bind "Ctrl q" { Quit; }
}
shared_except "locked" "move" {
bind "Ctrl h" { SwitchToMode "move"; }
}
shared_except "locked" "session" {
bind "Ctrl o" { SwitchToMode "session"; }
}
shared_except "locked" "scroll" {
bind "Alt left" { MoveFocusOrTab "left"; }
bind "Alt down" { MoveFocus "down"; }
bind "Alt up" { MoveFocus "up"; }
bind "Alt right" { MoveFocusOrTab "right"; }
bind "Alt h" { MoveFocusOrTab "left"; }
bind "Alt j" { MoveFocus "down"; }
bind "Alt k" { MoveFocus "up"; }
bind "Alt l" { MoveFocusOrTab "right"; }
}
shared_except "locked" "scroll" "search" "tmux" {
bind "Ctrl b" { SwitchToMode "tmux"; }
}
shared_except "locked" "scroll" "search" {
bind "Ctrl s" { SwitchToMode "scroll"; }
}
shared_except "locked" "tab" {
bind "Ctrl t" { SwitchToMode "tab"; }
}
shared_except "locked" "pane" {
bind "Ctrl p" { SwitchToMode "pane"; }
}
shared_except "locked" "resize" {
bind "Ctrl n" { SwitchToMode "resize"; }
}
shared_except "normal" "locked" "entersearch" {
bind "enter" { SwitchToMode "normal"; }
}
shared_except "normal" "locked" "entersearch" "renametab" "renamepane" {
bind "esc" { SwitchToMode "normal"; }
}
shared_among "pane" "tmux" {
bind "x" { CloseFocus; SwitchToMode "normal"; }
}
shared_among "scroll" "search" {
bind "PageDown" { PageScrollDown; }
bind "PageUp" { PageScrollUp; }
bind "left" { PageScrollUp; }
bind "down" { ScrollDown; }
bind "up" { ScrollUp; }
bind "right" { PageScrollDown; }
bind "Ctrl b" { PageScrollUp; }
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
bind "d" { HalfPageScrollDown; }
bind "Ctrl f" { PageScrollDown; }
bind "h" { PageScrollUp; }
bind "j" { ScrollDown; }
bind "k" { ScrollUp; }
bind "l" { PageScrollDown; }
bind "Ctrl s" { SwitchToMode "normal"; }
bind "u" { HalfPageScrollUp; }
}
entersearch {
bind "Ctrl c" { SwitchToMode "scroll"; }
bind "esc" { SwitchToMode "scroll"; }
bind "enter" { SwitchToMode "search"; }
}
renametab {
bind "esc" { UndoRenameTab; SwitchToMode "tab"; }
}
shared_among "renametab" "renamepane" {
bind "Ctrl c" { SwitchToMode "normal"; }
}
renamepane {
bind "esc" { UndoRenamePane; SwitchToMode "pane"; }
}
shared_among "session" "tmux" {
bind "d" { Detach; }
}
tmux {
bind "left" { MoveFocus "left"; SwitchToMode "normal"; }
bind "down" { MoveFocus "down"; SwitchToMode "normal"; }
bind "up" { MoveFocus "up"; SwitchToMode "normal"; }
bind "right" { MoveFocus "right"; SwitchToMode "normal"; }
bind "space" { NextSwapLayout; }
bind "\"" { NewPane "down"; SwitchToMode "normal"; }
bind "%" { NewPane "right"; SwitchToMode "normal"; }
bind "," { SwitchToMode "renametab"; }
bind "[" { SwitchToMode "scroll"; }
bind "Ctrl b" { Write 2; SwitchToMode "normal"; }
bind "c" { NewTab; SwitchToMode "normal"; }
bind "h" { MoveFocus "left"; SwitchToMode "normal"; }
bind "j" { MoveFocus "down"; SwitchToMode "normal"; }
bind "k" { MoveFocus "up"; SwitchToMode "normal"; }
bind "l" { MoveFocus "right"; SwitchToMode "normal"; }
bind "n" { GoToNextTab; SwitchToMode "normal"; }
bind "o" { FocusNextPane; }
bind "p" { GoToPreviousTab; SwitchToMode "normal"; }
bind "z" { ToggleFocusFullscreen; SwitchToMode "normal"; }
}
}
// Plugin aliases - can be used to change the implementation of Zellij
// changing these requires a restart to take effect
plugins {
about location="zellij:about"
compact-bar location="zellij:compact-bar"
configuration location="zellij:configuration"
filepicker location="zellij:strider" {
cwd "/"
}
plugin-manager location="zellij:plugin-manager"
session-manager location="zellij:session-manager"
status-bar location="zellij:status-bar"
strider location="zellij:strider"
tab-bar location="zellij:tab-bar"
welcome-screen location="zellij:session-manager" {
welcome_screen true
}
}
// Plugins to load in the background when a new session starts
// eg. "file:/path/to/my-plugin.wasm"
// eg. "https://example.com/my-plugin.wasm"
load_plugins {
}
// Use a simplified UI without special fonts (arrow glyphs)
// Options:
// - true
// - false (Default)
//
// simplified_ui true
// Choose the theme that is specified in the themes section.
// Default: default
//
theme "dracula"
// Choose the base input mode of zellij.
// Default: normal
//
default_mode "normal"
// Choose the path to the default shell that zellij will use for opening new panes
// Default: $SHELL
//
// default_shell "fish"
// Choose the path to override cwd that zellij will use for opening new panes
//
// default_cwd "/tmp"
// The name of the default layout to load on startup
// Default: "default"
//
// default_layout "compact"
// The folder in which Zellij will look for layouts
// (Requires restart)
//
// layout_dir "/tmp"
// The folder in which Zellij will look for themes
// (Requires restart)
//
// theme_dir "/tmp"
// Toggle enabling the mouse mode.
// On certain configurations, or terminals this could
// potentially interfere with copying text.
// Options:
// - true (default)
// - false
//
// mouse_mode false
// Toggle having pane frames around the panes
// Options:
// - true (default, enabled)
// - false
//
// pane_frames false
// When attaching to an existing session with other users,
// should the session be mirrored (true)
// or should each user have their own cursor (false)
// (Requires restart)
// Default: false
//
// mirror_session true
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
// eg. when terminal window with an active zellij session is closed
// (Requires restart)
// Options:
// - detach (Default)
// - quit
//
// on_force_close "quit"
// Configure the scroll back buffer size
// This is the number of lines zellij stores for each pane in the scroll back
// buffer. Excess number of lines are discarded in a FIFO fashion.
// (Requires restart)
// Valid values: positive integers
// Default value: 10000
//
// scroll_buffer_size 10000
// Provide a command to execute when copying text. The text will be piped to
// the stdin of the program to perform the copy. This can be used with
// terminal emulators which do not support the OSC 52 ANSI control sequence
// that will be used by default if this option is not set.
// Examples:
//
// copy_command "xclip -selection clipboard" // x11
// copy_command "wl-copy" // wayland
// copy_command "pbcopy" // osx
//
// copy_command "pbcopy"
// Choose the destination for copied text
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
// Does not apply when using copy_command.
// Options:
// - system (default)
// - primary
//
// copy_clipboard "primary"
// Enable automatic copying (and clearing) of selection when releasing mouse
// Default: true
//
// copy_on_select true
// Path to the default editor to use to edit pane scrollbuffer
// Default: $EDITOR or $VISUAL
// scrollback_editor "/usr/bin/vim"
// A fixed name to always give the Zellij session.
// Consider also setting `attach_to_session true,`
// otherwise this will error if such a session exists.
// Default: <RANDOM>
//
// session_name "My singleton session"
// When `session_name` is provided, attaches to that session
// if it is already running or creates it otherwise.
// Default: false
//
// attach_to_session true
// Toggle between having Zellij lay out panes according to a predefined set of layouts whenever possible
// Options:
// - true (default)
// - false
//
// auto_layout false
// Whether sessions should be serialized to the cache folder (including their tabs/panes, cwds and running commands) so that they can later be resurrected
// Options:
// - true (default)
// - false
//
// session_serialization false
// Whether pane viewports are serialized along with the session, default is false
// Options:
// - true
// - false (default)
//
// serialize_pane_viewport false
// Scrollback lines to serialize along with the pane viewport when serializing sessions, 0
// defaults to the scrollback size. If this number is higher than the scrollback size, it will
// also default to the scrollback size. This does nothing if `serialize_pane_viewport` is not true.
//
// scrollback_lines_to_serialize 10000
// Enable or disable the rendering of styled and colored underlines (undercurl).
// May need to be disabled for certain unsupported terminals
// (Requires restart)
// Default: true
//
// styled_underlines false
// How often in seconds sessions are serialized
//
// serialization_interval 10000
// Enable or disable writing of session metadata to disk (if disabled, other sessions might not know
// metadata info on this session)
// (Requires restart)
// Default: false
//
// disable_session_metadata false
// Enable or disable support for the enhanced Kitty Keyboard Protocol (the host terminal must also support it)
// (Requires restart)
// Default: true (if the host terminal supports it)
//
// support_kitty_keyboard_protocol false
// Whether to stack panes when resizing beyond a certain size
// Default: true
//
// stacked_resize false
// Whether to show tips on startup
// Default: true
//
show_startup_tips false
// Whether to show release notes on first version run
// Default: true
//
// show_release_notes false

467
flake.lock generated
View File

@@ -21,28 +21,28 @@
"base16-fish": {
"flake": false,
"locked": {
"lastModified": 1754405784,
"narHash": "sha256-l9xHIy+85FN+bEo6yquq2IjD1rSg9fjfjpyGP1W8YXo=",
"lastModified": 1765809053,
"narHash": "sha256-XCUQLoLfBJ8saWms2HCIj4NEN+xNsWBlU1NrEPcQG4s=",
"owner": "tomyun",
"repo": "base16-fish",
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
"type": "github"
},
"original": {
"owner": "tomyun",
"repo": "base16-fish",
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
"type": "github"
}
},
"base16-helix": {
"flake": false,
"locked": {
"lastModified": 1752979451,
"narHash": "sha256-0CQM+FkYy0fOO/sMGhOoNL80ftsAzYCg9VhIrodqusM=",
"lastModified": 1760703920,
"narHash": "sha256-m82fGUYns4uHd+ZTdoLX2vlHikzwzdu2s2rYM2bNwzw=",
"owner": "tinted-theming",
"repo": "base16-helix",
"rev": "27cf1e66e50abc622fb76a3019012dc07c678fac",
"rev": "d646af9b7d14bff08824538164af99d0c521b185",
"type": "github"
},
"original": {
@@ -68,48 +68,6 @@
"type": "github"
}
},
"chaotic": {
"inputs": {
"flake-schemas": "flake-schemas",
"home-manager": "home-manager",
"jovian": "jovian",
"nixpkgs": "nixpkgs",
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1762205917,
"narHash": "sha256-8vFEZ4oHYOAzC9/zN3Eb/zxbfPPBGAqsQNRKG1WiqZY=",
"owner": "chaotic-cx",
"repo": "nyx",
"rev": "16950d0a7a54c242201aee3ba6b7164cee6fbd88",
"type": "github"
},
"original": {
"owner": "chaotic-cx",
"ref": "nyxpkgs-unstable",
"repo": "nyx",
"type": "github"
}
},
"daeuniverse": {
"inputs": {
"flake-parts": "flake-parts",
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1762203410,
"narHash": "sha256-+WqPI5Il43oI2/TMUrZUzzReLW/dnWM6GNqrekDXgos=",
"owner": "daeuniverse",
"repo": "flake.nix",
"rev": "effa0f113add0f982a657f5bce92bac503b542b6",
"type": "github"
},
"original": {
"owner": "daeuniverse",
"repo": "flake.nix",
"type": "github"
}
},
"disko": {
"inputs": {
"nixpkgs": [
@@ -117,11 +75,11 @@
]
},
"locked": {
"lastModified": 1762276996,
"narHash": "sha256-TtcPgPmp2f0FAnc+DMEw4ardEgv1SGNR3/WFGH0N19M=",
"lastModified": 1765794845,
"narHash": "sha256-YD5QWlGnusNbZCqR3pxG8tRxx9yUXayLZfAJRWspq2s=",
"owner": "nix-community",
"repo": "disko",
"rev": "af087d076d3860760b3323f6b583f4d828c1ac17",
"rev": "7194cfe5b7a3660726b0fe7296070eaef601cae9",
"type": "github"
},
"original": {
@@ -133,11 +91,11 @@
"firefox-gnome-theme": {
"flake": false,
"locked": {
"lastModified": 1758112371,
"narHash": "sha256-lizRM2pj6PHrR25yimjyFn04OS4wcdbc38DCdBVa2rk=",
"lastModified": 1764724327,
"narHash": "sha256-OkFLrD3pFR952TrjQi1+Vdj604KLcMnkpa7lkW7XskI=",
"owner": "rafaelmardojai",
"repo": "firefox-gnome-theme",
"rev": "0909cfe4a2af8d358ad13b20246a350e14c2473d",
"rev": "66b7c635763d8e6eb86bd766de5a1e1fbfcc1047",
"type": "github"
},
"original": {
@@ -147,45 +105,6 @@
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1738453229,
"narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1760948891,
"narHash": "sha256-TmWcdiUUaWk8J4lpjzu4gCGxWY6/Ok7mOK4fIFfBuU4=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "864599284fc7c0ba6357ed89ed5e2cd5040f0c04",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_3": {
"inputs": {
"nixpkgs-lib": [
"stylix",
@@ -193,11 +112,11 @@
]
},
"locked": {
"lastModified": 1756770412,
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
"lastModified": 1763759067,
"narHash": "sha256-LlLt2Jo/gMNYAwOgdRQBrsRoOz7BPRkzvNaI/fzXi2Q=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "4524271976b625a4a605beefd893f270620fd751",
"rev": "2cccadc7357c0ba201788ae99c4dfa90728ef5e0",
"type": "github"
},
"original": {
@@ -206,38 +125,6 @@
"type": "github"
}
},
"flake-schemas": {
"locked": {
"lastModified": 1721999734,
"narHash": "sha256-G5CxYeJVm4lcEtaO87LKzOsVnWeTcHGKbKxNamNWgOw=",
"rev": "0a5c42297d870156d9c57d8f99e476b738dcd982",
"revCount": 75,
"type": "tarball",
"url": "https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.1.5/0190ef2f-61e0-794b-ba14-e82f225e55e6/source.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://flakehub.com/f/DeterminateSystems/flake-schemas/%3D0.1.5.tar.gz"
}
},
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"fromYaml": {
"flake": false,
"locked": {
@@ -257,33 +144,34 @@
"gnome-shell": {
"flake": false,
"locked": {
"lastModified": 1748186689,
"narHash": "sha256-UaD7Y9f8iuLBMGHXeJlRu6U1Ggw5B9JnkFs3enZlap0=",
"host": "gitlab.gnome.org",
"lastModified": 1764524476,
"narHash": "sha256-bTmNn3Q4tMQ0J/P0O5BfTQwqEnCiQIzOGef9/aqAZvk=",
"owner": "GNOME",
"repo": "gnome-shell",
"rev": "8c88f917db0f1f0d80fa55206c863d3746fa18d0",
"type": "github"
"rev": "c0e1ad9f0f703fd0519033b8f46c3267aab51a22",
"type": "gitlab"
},
"original": {
"host": "gitlab.gnome.org",
"owner": "GNOME",
"ref": "48.2",
"ref": "gnome-49",
"repo": "gnome-shell",
"type": "github"
"type": "gitlab"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
"chaotic",
"nixpkgs"
]
},
"locked": {
"lastModified": 1762146130,
"narHash": "sha256-/XOEA0a61fZ45i/BpaSsyLNNbw/yKwjMbkB/IWSGLzU=",
"lastModified": 1765980955,
"narHash": "sha256-rB45jv4uwC90vM9UZ70plfvY/2Kdygs+zlQ07dGQFk4=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "b5ed4afc2277339bdf0e9edf59befff7350cf075",
"rev": "89c9508bbe9b40d36b3dc206c2483ef176f15173",
"type": "github"
},
"original": {
@@ -292,150 +180,13 @@
"type": "github"
}
},
"home-manager_2": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1762367206,
"narHash": "sha256-c/164YOPkV09BH8KIUdvVvJs3VF2LNIbE2piKGgXPxk=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "af119feb17cb242398e0fb97f92b867d25882522",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"ixx": {
"inputs": {
"flake-utils": [
"nixvim",
"nuschtosSearch",
"flake-utils"
],
"nixpkgs": [
"nixvim",
"nuschtosSearch",
"nixpkgs"
]
},
"locked": {
"lastModified": 1754860581,
"narHash": "sha256-EM0IE63OHxXCOpDHXaTyHIOk2cNvMCGPqLt/IdtVxgk=",
"owner": "NuschtOS",
"repo": "ixx",
"rev": "babfe85a876162c4acc9ab6fb4483df88fa1f281",
"type": "github"
},
"original": {
"owner": "NuschtOS",
"ref": "v0.1.1",
"repo": "ixx",
"type": "github"
}
},
"jovian": {
"inputs": {
"nix-github-actions": "nix-github-actions",
"nixpkgs": [
"chaotic",
"nixpkgs"
]
},
"locked": {
"lastModified": 1761748321,
"narHash": "sha256-hD5mVzmUeyVppjArdy2uVdQe/CQUR9i3WgZB05onE7A=",
"owner": "Jovian-Experiments",
"repo": "Jovian-NixOS",
"rev": "533db5857c9e00ca352558a928417116ee08a824",
"type": "github"
},
"original": {
"owner": "Jovian-Experiments",
"repo": "Jovian-NixOS",
"type": "github"
}
},
"nix-github-actions": {
"inputs": {
"nixpkgs": [
"chaotic",
"jovian",
"nixpkgs"
]
},
"locked": {
"lastModified": 1729697500,
"narHash": "sha256-VFTWrbzDlZyFHHb1AlKRiD/qqCJIripXKiCSFS8fAOY=",
"owner": "zhaofengli",
"repo": "nix-github-actions",
"rev": "e418aeb728b6aa5ca8c5c71974e7159c2df1d8cf",
"type": "github"
},
"original": {
"owner": "zhaofengli",
"ref": "matrix-name",
"repo": "nix-github-actions",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1762111121,
"narHash": "sha256-4vhDuZ7OZaZmKKrnDpxLZZpGIJvAeMtK6FKLJYUtAdw=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "b3d51a0365f6695e7dd5cdf3e180604530ed33b4",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1738452942,
"narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=",
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1739866667,
"narHash": "sha256-EO1ygNKZlsAC9avfcwHkKGMsmipUk1Uc0TbrEZpkn64=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "73cf49b8ad837ade2de76f87eb53fc85ed5d4680",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1762111121,
"narHash": "sha256-4vhDuZ7OZaZmKKrnDpxLZZpGIJvAeMtK6FKLJYUtAdw=",
"lastModified": 1765779637,
"narHash": "sha256-KJ2wa/BLSrTqDjbfyNx70ov/HdgNBCBBSQP3BIzKnv4=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "b3d51a0365f6695e7dd5cdf3e180604530ed33b4",
"rev": "1306659b587dc277866c7b69eb97e5f07864d8c4",
"type": "github"
},
"original": {
@@ -445,45 +196,6 @@
"type": "github"
}
},
"nixpkgs_4": {
"locked": {
"lastModified": 1758690382,
"narHash": "sha256-NY3kSorgqE5LMm1LqNwGne3ZLMF2/ILgLpFr1fS4X3o=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e643668fd71b949c53f8626614b21ff71a07379d",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixvim": {
"inputs": {
"flake-parts": "flake-parts_2",
"nixpkgs": [
"nixpkgs"
],
"nuschtosSearch": "nuschtosSearch",
"systems": "systems_2"
},
"locked": {
"lastModified": 1762377973,
"narHash": "sha256-OLLyaer2jFR3xeC9Kfw1y/3jOYSF0ctG/YIu9T67yuA=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "68b07c2c349b1a622f46e12b72039c0647779c34",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixvim",
"type": "github"
}
},
"nur": {
"inputs": {
"flake-parts": [
@@ -496,11 +208,11 @@
]
},
"locked": {
"lastModified": 1758998580,
"narHash": "sha256-VLx0z396gDCGSiowLMFz5XRO/XuNV+4EnDYjdJhHvUk=",
"lastModified": 1764773531,
"narHash": "sha256-mCBl7MD1WZ7yCG6bR9MmpPO2VydpNkWFgnslJRIT1YU=",
"owner": "nix-community",
"repo": "NUR",
"rev": "ba8d9c98f5f4630bcb0e815ab456afd90c930728",
"rev": "1d9616689e98beded059ad0384b9951e967a17fa",
"type": "github"
},
"original": {
@@ -509,61 +221,14 @@
"type": "github"
}
},
"nuschtosSearch": {
"inputs": {
"flake-utils": "flake-utils",
"ixx": "ixx",
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1761730856,
"narHash": "sha256-t1i5p/vSWwueZSC0Z2BImxx3BjoUDNKyC2mk24krcMY=",
"owner": "NuschtOS",
"repo": "search",
"rev": "e29de6db0cb3182e9aee75a3b1fd1919d995d85b",
"type": "github"
},
"original": {
"owner": "NuschtOS",
"repo": "search",
"type": "github"
}
},
"root": {
"inputs": {
"chaotic": "chaotic",
"daeuniverse": "daeuniverse",
"disko": "disko",
"home-manager": "home-manager_2",
"nixpkgs": "nixpkgs_3",
"nixvim": "nixvim",
"home-manager": "home-manager",
"nixpkgs": "nixpkgs",
"stylix": "stylix"
}
},
"rust-overlay": {
"inputs": {
"nixpkgs": [
"chaotic",
"nixpkgs"
]
},
"locked": {
"lastModified": 1762137611,
"narHash": "sha256-sTqb10FR/YQCuGbw16qxliX0NFlYg6evSEjN8w+9IYE=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "3a0ebe5d2965692f990cb27e62f501ad35e3deeb",
"type": "github"
},
"original": {
"owner": "oxalica",
"repo": "rust-overlay",
"type": "github"
}
},
"stylix": {
"inputs": {
"base16": "base16",
@@ -571,11 +236,13 @@
"base16-helix": "base16-helix",
"base16-vim": "base16-vim",
"firefox-gnome-theme": "firefox-gnome-theme",
"flake-parts": "flake-parts_3",
"flake-parts": "flake-parts",
"gnome-shell": "gnome-shell",
"nixpkgs": "nixpkgs_4",
"nixpkgs": [
"nixpkgs"
],
"nur": "nur",
"systems": "systems_3",
"systems": "systems",
"tinted-foot": "tinted-foot",
"tinted-kitty": "tinted-kitty",
"tinted-schemes": "tinted-schemes",
@@ -583,11 +250,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1762264356,
"narHash": "sha256-QVfC53Ri+8n3e7Ujx9kq6all3+TLBRRPRnc6No5qY5w=",
"lastModified": 1765897595,
"narHash": "sha256-NgTRxiEC5y96zrhdBygnY+mSzk5FWMML39PcRGVJmxg=",
"owner": "danth",
"repo": "stylix",
"rev": "647bb8dd96a206a1b79c4fd714affc88b409e10b",
"rev": "e6829552d4bb659ebab00f08c61d8c62754763f3",
"type": "github"
},
"original": {
@@ -611,36 +278,6 @@
"type": "github"
}
},
"systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"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"
}
},
"tinted-foot": {
"flake": false,
"locked": {
@@ -677,11 +314,11 @@
"tinted-schemes": {
"flake": false,
"locked": {
"lastModified": 1757716333,
"narHash": "sha256-d4km8W7w2zCUEmPAPUoLk1NlYrGODuVa3P7St+UrqkM=",
"lastModified": 1763914658,
"narHash": "sha256-Hju0WtMf3iForxtOwXqGp3Ynipo0EYx1AqMKLPp9BJw=",
"owner": "tinted-theming",
"repo": "schemes",
"rev": "317a5e10c35825a6c905d912e480dfe8e71c7559",
"rev": "0f6be815d258e435c9b137befe5ef4ff24bea32c",
"type": "github"
},
"original": {
@@ -693,11 +330,11 @@
"tinted-tmux": {
"flake": false,
"locked": {
"lastModified": 1757811970,
"narHash": "sha256-n5ZJgmzGZXOD9pZdAl1OnBu3PIqD+X3vEBUGbTi4JiI=",
"lastModified": 1764465359,
"narHash": "sha256-lbSVPqLEk2SqMrnpvWuKYGCaAlfWFMA6MVmcOFJjdjE=",
"owner": "tinted-theming",
"repo": "tinted-tmux",
"rev": "d217ba31c846006e9e0ae70775b0ee0f00aa6b1e",
"rev": "edf89a780e239263cc691a987721f786ddc4f6aa",
"type": "github"
},
"original": {
@@ -709,11 +346,11 @@
"tinted-zed": {
"flake": false,
"locked": {
"lastModified": 1757811247,
"narHash": "sha256-4EFOUyLj85NRL3OacHoLGEo0wjiRJzfsXtR4CZWAn6w=",
"lastModified": 1764464512,
"narHash": "sha256-rCD/pAhkMdCx6blsFwxIyvBJbPZZ1oL2sVFrH07lmqg=",
"owner": "tinted-theming",
"repo": "base16-zed",
"rev": "824fe0aacf82b3c26690d14e8d2cedd56e18404e",
"rev": "907dbba5fb8cf69ebfd90b00813418a412d0a29a",
"type": "github"
},
"original": {

View File

@@ -2,15 +2,16 @@
description = "🥶";
inputs = {
chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable";
daeuniverse.url = "github:daeuniverse/flake.nix";
# chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable";
# daeuniverse.url = "github:daeuniverse/flake.nix";
disko.inputs.nixpkgs.follows = "nixpkgs";
disko.url = "github:nix-community/disko";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
home-manager.url = "github:nix-community/home-manager";
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
nixvim.inputs.nixpkgs.follows = "nixpkgs";
nixvim.url = "github:nix-community/nixvim";
# nixvim.inputs.nixpkgs.follows = "nixpkgs";
# nixvim.url = "github:nix-community/nixvim";
stylix.inputs.nixpkgs.follows = "nixpkgs";
stylix.url = "github:danth/stylix";
};

5
home/cli/bat.nix Normal file
View File

@@ -0,0 +1,5 @@
{
programs.bat = {
enable = true;
};
}

12
home/cli/git.nix Normal file
View File

@@ -0,0 +1,12 @@
{ pkgs, ... }: {
programs.git = {
enable = true;
package = pkgs.gitFull;
};
programs.gh.enable = true;
home.packages = with pkgs; [
git-filter-repo
];
}

View File

@@ -47,6 +47,7 @@
alias ls='eza --icons=auto --group-directories-first'
alias ll='eza -lh --icons=auto --group-directories-first'
alias la='eza -lha --icons=auto --group-directories-first'
alias cat='bat --paging=never'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'

View File

@@ -1,6 +1,6 @@
{ pkgs, ... }:
{
home.packages = with pkgs; [
floorp-bin
firefox
];
}

View File

@@ -1,5 +0,0 @@
{pkgs, ...}: {
home.packages = with pkgs; [
gui-for-singbox
];
}

View File

@@ -1,205 +1,233 @@
{
config,
lib,
pkgs,
...
}: let
neo-tree-nvim-main = pkgs.vimUtils.buildVimPlugin {
pname = "neo-tree-nvim-main";
version = "3.35.2+6";
src = pkgs.fetchFromGitHub {
owner = "nvim-neo-tree";
repo = "neo-tree.nvim";
rev = "8dd9f08ff086d09d112f1873f88dc0f74b598cdb";
sha256 = "sha256-edthaqznGTJ+VFVORK7gfHI9J14PLAghG9prsWlzXtc=";
};
doCheck = false;
meta.homepage = "https://github.com/nvim-neo-tree/neo-tree.nvim/";
meta.hydraPlatforms = [];
};
in {
{ config
, lib
, pkgs
, ...
}: {
programs.neovim = {
enable = true;
extraPackages = with pkgs; [
# LazyVim
lua-language-server
#Go
gopls
gofumpt
golines
#Lua
stylua
lua-language-server
#Nix
nixd
nixpkgs-fmt
#Java
google-java-format
jdt-language-server
#Rust
clippy
rustfmt
rust-analyzer
#Shell
shfmt
bash-language-server
#C/C++
clang-tools
#Kotlin
ktlint
kotlin-language-server
#Python
ruff
black
python312Packages.python-lsp-server
#JS/TS/Web
biome
prettierd
nodePackages.prettier
jq #JSON
taplo #TOML
yamlfmt #YAML
];
plugins = with pkgs.vimPlugins; [
lazy-nvim
];
extraLuaConfig = let
plugins = with pkgs.vimPlugins; [
LazyVim
bufferline-nvim
cmp_luasnip
conform-nvim
dashboard-nvim
flash-nvim
friendly-snippets
gitsigns-nvim
lualine-nvim
{
name = "neo-tree.nvim";
path = neo-tree-nvim-main;
}
neoconf-nvim
neodev-nvim
noice-nvim
nui-nvim
nvim-lint
nvim-lspconfig
nvim-notify
nvim-spectre
nvim-treesitter
nvim-treesitter-context
nvim-treesitter-textobjects
nvim-ts-autotag
nvim-ts-context-commentstring
nvim-web-devicons
persistence-nvim
plenary-nvim
todo-comments-nvim
tokyonight-nvim
trouble-nvim
vim-illuminate
vim-startuptime
which-key-nvim
fzf-lua
snacks-nvim
{
name = "lazydev.nvim";
path = lazydev-nvim;
}
{
name = "blink.cmp";
path = blink-cmp;
}
{
name = "LuaSnip";
path = luasnip;
}
{
name = "mini.ai";
path = mini-nvim;
}
{
name = "mini.bufremove";
path = mini-nvim;
}
{
name = "mini.comment";
path = mini-nvim;
}
{
name = "mini.indentscope";
path = mini-nvim;
}
{
name = "mini.pairs";
path = mini-nvim;
}
{
name = "mini.surround";
path = mini-nvim;
}
{
name = "mini.icons";
path = mini-icons;
}
{
name = "grug-far.nvim";
path = grug-far-nvim;
}
];
mkEntryFromDrv = drv:
if lib.isDerivation drv
then {
name = "${lib.getName drv}";
path = drv;
}
else drv;
lazyPath = pkgs.linkFarm "lazy-plugins" (builtins.map mkEntryFromDrv plugins);
in ''
require("lazy").setup({
defaults = {
lazy = true,
},
dev = {
-- reuse files from pkgs.vimPlugins.*
path = "${lazyPath}",
patterns = { "." },
-- fallback to download
fallback = true,
},
rocks = {
enabled = false,
hererocks = false,
},
spec = {
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
-- The following configs are needed for fixing lazyvim on nix
-- disable mason.nvim, use programs.neovim.extraPackages
{ "mason-org/mason-lspconfig.nvim", enabled = false },
{ "mason-org/mason.nvim", enabled = false },
-- import/override with your plugins
{ import = "lazyvim.plugins.extras.lang.go" },
{ import = "lazyvim.plugins.extras.lang.clangd" },
{ import = "lazyvim.plugins.extras.lang.rust" },
{ import = "lazyvim.plugins.extras.lang.typescript" },
{ import = "lazyvim.plugins.extras.lang.python" },
{ import = "lazyvim.plugins.extras.lang.tailwind" },
{ import = "lazyvim.plugins.extras.lang.java" },
{ import = "lazyvim.plugins.extras.lang.json" },
{ import = "lazyvim.plugins.extras.lang.yaml" },
{ import = "lazyvim.plugins.extras.lang.toml" },
{ import = "lazyvim.plugins.extras.lang.docker" },
{ import = "plugins" },
-- treesitter handled by xdg.configFile."nvim/parser", put this line at the end of spec to clear ensure_installed
{ "nvim-treesitter/nvim-treesitter",
opts = function(_, opts)
opts.ensure_installed = {}
end,
extraLuaConfig =
let
plugins = with pkgs.vimPlugins; [
LazyVim
bufferline-nvim
cmp_luasnip
conform-nvim
dashboard-nvim
flash-nvim
friendly-snippets
gitsigns-nvim
lualine-nvim
neo-tree-nvim
neoconf-nvim
neodev-nvim
noice-nvim
nui-nvim
nvim-lint
nvim-lspconfig
nvim-notify
nvim-spectre
nvim-treesitter
nvim-treesitter-context
nvim-ts-autotag
nvim-ts-context-commentstring
nvim-web-devicons
persistence-nvim
plenary-nvim
todo-comments-nvim
tokyonight-nvim
trouble-nvim
vim-illuminate
vim-startuptime
which-key-nvim
fzf-lua
snacks-nvim
{
name = "lazydev.nvim";
path = lazydev-nvim;
}
{
name = "blink.cmp";
path = blink-cmp;
}
{
name = "LuaSnip";
path = luasnip;
}
{
name = "mini.ai";
path = mini-nvim;
}
{
name = "mini.bufremove";
path = mini-nvim;
}
{
name = "mini.comment";
path = mini-nvim;
}
{
name = "mini.indentscope";
path = mini-nvim;
}
{
name = "mini.pairs";
path = mini-nvim;
}
{
name = "mini.surround";
path = mini-nvim;
}
{
name = "mini.icons";
path = mini-icons;
}
{
name = "grug-far.nvim";
path = grug-far-nvim;
}
];
mkEntryFromDrv = drv:
if lib.isDerivation drv
then {
name = "${lib.getName drv}";
path = drv;
}
else drv;
lazyPath = pkgs.linkFarm "lazy-plugins" (builtins.map mkEntryFromDrv plugins);
in
''
require("lazy").setup({
defaults = {
lazy = true,
},
},
})
'';
dev = {
-- reuse files from pkgs.vimPlugins.*
path = "${lazyPath}",
patterns = { "." },
-- fallback to download
fallback = true,
},
rocks = {
enabled = false,
hererocks = false,
},
spec = {
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
-- The following configs are needed for fixing lazyvim on nix
-- disable mason.nvim, use programs.neovim.extraPackages
{ "mason-org/mason-lspconfig.nvim", enabled = false },
{ "mason-org/mason.nvim", enabled = false },
-- import/override with your plugins
{ import = "lazyvim.plugins.extras.lang.go" },
{ import = "lazyvim.plugins.extras.lang.clangd" },
{ import = "lazyvim.plugins.extras.lang.rust" },
{ import = "lazyvim.plugins.extras.lang.typescript" },
{ import = "lazyvim.plugins.extras.lang.python" },
{ import = "lazyvim.plugins.extras.lang.tailwind" },
{ import = "lazyvim.plugins.extras.lang.java" },
{ import = "lazyvim.plugins.extras.lang.json" },
{ import = "lazyvim.plugins.extras.lang.yaml" },
{ import = "lazyvim.plugins.extras.lang.toml" },
{ import = "lazyvim.plugins.extras.lang.docker" },
{ import = "lazyvim.plugins.extras.lang.kotlin" },
{ import = "lazyvim.plugins.extras.lang.dart" },
{ import = "plugins" },
-- treesitter handled by xdg.configFile."nvim/parser", put this line at the end of spec to clear ensure_installed
{ "nvim-treesitter/nvim-treesitter",
opts = function(_, opts)
opts.ensure_installed = {}
end,
},
},
})
'';
};
# https://github.com/nvim-treesitter/nvim-treesitter#i-get-query-error-invalid-node-type-at-position
xdg.configFile."nvim/parser".source = let
parsers = pkgs.symlinkJoin {
name = "treesitter-parsers";
paths =
(pkgs.vimPlugins.nvim-treesitter.withPlugins (plugins:
with plugins; [
bash
c
lua
python
go
rust
java
javascript
typescript
tsx
vue
html
css
json
yaml
toml
dockerfile
]))
.dependencies;
};
in "${parsers}/parser";
xdg.configFile."nvim/parser".source =
let
parsers = pkgs.symlinkJoin {
name = "treesitter-parsers";
paths =
(pkgs.vimPlugins.nvim-treesitter.withPlugins (plugins:
with plugins; [
bash
c
go
lua
rust
java
dart
kotlin
python
javascript
typescript
tsx
vue
html
css
json
yaml
toml
dockerfile
])).dependencies;
};
in
"${parsers}/parser";
# Normal LazyVim config here, see https://github.com/LazyVim/starter/tree/main/lua
xdg.configFile."nvim/lua".source = ./lua;
# Set default editor
home.sessionVariables.EDITOR = "nvim";
}
}

View File

@@ -5,27 +5,31 @@
local map = vim.keymap.set
local opts = { noremap = true, silent = true }
-- === VSCode-like buffer/tab navigation ===
-- === VSCode-like buffer/tab navigation ===
map("n", "<C-Tab>", "<cmd>bnext<CR>", { desc = "Next buffer (like VSCode)" })
map("n", "<C-S-Tab>", "<cmd>bprevious<CR>", { desc = "Previous buffer (like VSCode)" })
-- === Close buffer like Ctrl + W in VSCode ===
vim.keymap.set("n", "<C-w>", "<cmd>BufferLinePickClose<CR>", { desc = "Close buffer (BufferLine)" })
-- === Vscode-like Close buffer navigation ===
vim.keymap.set("n", "<C-w>", function()
local current = vim.api.nvim_get_current_buf()
local buffers = vim.fn.getbufinfo({buflisted = 1})
vim.keymap.set("n", "<C-S-5>", function()
if vim.bo.buftype == "terminal" then
vim.cmd("vsplit | terminal")
else
vim.cmd("botright split | terminal")
end
end, { desc = "Split terminal" })
local next_buf = nil
for i, buf in ipairs(buffers) do
if buf.bufnr == current then
next_buf = buffers[i + 1] or buffers[i - 1]
break
end
end
-- 在终端模式下的快捷键
vim.keymap.set("t", "<C-h>", "<C-\\><C-n><C-w>h", { desc = "Go to left window" })
vim.keymap.set("t", "<C-j>", "<C-\\><C-n><C-w>j", { desc = "Go to lower window" })
vim.keymap.set("t", "<C-k>", "<C-\\><C-n><C-w>k", { desc = "Go to upper window" })
vim.keymap.set("t", "<C-l>", "<C-\\><C-n><C-w>l", { desc = "Go to right window" })
if next_buf then
vim.api.nvim_set_current_buf(next_buf.bufnr)
end
vim.api.nvim_buf_delete(current, { force = true })
end, { desc = "Close current buffer like VSCode" })
-- XDG Open
vim.keymap.set("n", "<leader>xo", function()
vim.fn.jobstart({ "xdg-open", vim.fn.expand("%:p") }, { detach = true })
end, { desc = "使用系统默认应用程序打开当前文件" })

View File

@@ -1,53 +1,53 @@
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not (vim.uv or vim.loop).fs_stat(lazypath) then
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
if vim.v.shell_error ~= 0 then
vim.api.nvim_echo({
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
{ out, "WarningMsg" },
{ "\nPress any key to exit..." },
}, true, {})
vim.fn.getchar()
os.exit(1)
end
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
if vim.v.shell_error ~= 0 then
vim.api.nvim_echo({
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
{ out, "WarningMsg" },
{ "\nPress any key to exit..." },
}, true, {})
vim.fn.getchar()
os.exit(1)
end
end
vim.opt.rtp:prepend(lazypath)
require("lazy").setup({
spec = {
-- add LazyVim and import its plugins
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
-- import/override with your plugins
{ import = "plugins" },
},
defaults = {
-- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup.
-- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default.
lazy = false,
-- It's recommended to leave version=false for now, since a lot the plugin that support versioning,
-- have outdated releases, which may break your Neovim install.
version = false, -- always use the latest git commit
-- version = "*", -- try installing the latest stable version for plugins that support semver
},
install = { colorscheme = { "tokyonight", "habamax" } },
checker = {
enabled = true, -- check for plugin updates periodically
notify = false, -- notify on update
}, -- automatically check for plugin updates
performance = {
rtp = {
-- disable some rtp plugins
disabled_plugins = {
"gzip",
-- "matchit",
-- "matchparen",
-- "netrwPlugin",
"tarPlugin",
"tohtml",
"tutor",
"zipPlugin",
},
},
},
spec = {
-- add LazyVim and import its plugins
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
-- import/override with your plugins
{ import = "plugins" },
},
defaults = {
-- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup.
-- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default.
lazy = false,
-- It's recommended to leave version=false for now, since a lot the plugin that support versioning,
-- have outdated releases, which may break your Neovim install.
version = false, -- always use the latest git commit
-- version = "*", -- try installing the latest stable version for plugins that support semver
},
install = { colorscheme = { "tokyonight", "habamax" } },
checker = {
enabled = true, -- check for plugin updates periodically
notify = false, -- notify on update
}, -- automatically check for plugin updates
performance = {
rtp = {
-- disable some rtp plugins
disabled_plugins = {
"gzip",
-- "matchit",
-- "matchparen",
-- "netrwPlugin",
"tarPlugin",
"tohtml",
"tutor",
"zipPlugin",
},
},
},
})

View File

@@ -1,3 +1,16 @@
-- Options are automatically loaded before lazy.nvim startup
-- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua
-- Add any additional options here
-- Disable autoformat
vim.g.autoformat = false
-- Let terminal just one
vim.g.root_spec = { "cwd" }
-- Disable markdown views
vim.api.nvim_create_autocmd("FileType", {
pattern = "markdown",
callback = function()
vim.opt_local.conceallevel = 0
vim.opt_local.concealcursor = ""
end,
})

View File

@@ -0,0 +1,28 @@
return {
{
"zbirenbaum/copilot.lua",
cmd = "Copilot",
event = "InsertEnter",
config = function()
require("copilot").setup({
suggestion = { enabled = true, auto_trigger = true },
})
end,
},
{
"CopilotC-Nvim/CopilotChat.nvim",
branch = "main",
dependencies = {
{ "zbirenbaum/copilot.lua" },
{ "nvim-lua/plenary.nvim" },
},
opts = {
debug = false,
},
keys = {
{ "<leader>cc", "<cmd>CopilotChatToggle<cr>", desc = "CopilotChat - Toggle" },
{ "<leader>ce", "<cmd>CopilotChatExplain<cr>", mode = "v", desc = "CopilotChat - Explain code" },
},
},
}

View File

@@ -0,0 +1,68 @@
return {
{
"stevearc/conform.nvim",
opts = function(_, opts)
opts.format_on_save = nil
opts.formatters = opts.formatters or {}
opts.formatters_by_ft = opts.formatters_by_ft or {}
opts.formatters.nixpkgs_fmt = {
command = "nixpkgs-fmt",
args = function(ctx)
return {}
end,
stdin = true,
exit_codes = { 0 },
}
-- Go
opts.formatters_by_ft.go = { "gofumpt" }
-- Lua
opts.formatters_by_ft.lua = { "stylua" }
-- Nix
opts.formatters_by_ft.nix = { "nixpkgs_fmt", stop_after_first = true }
-- Java
opts.formatters_by_ft.java = { "google_java_format" }
-- Rust
opts.formatters_by_ft.rust = { "rustfmt" }
-- Shell
opts.formatters_by_ft.sh = { "shfmt" }
-- C/C++
opts.formatters_by_ft.c = { "clang_format" }
opts.formatters_by_ft.cpp = { "clang_format" }
-- Kotlin
opts.formatters_by_ft.kotlin = { "ktlint" }
-- Python
opts.formatters_by_ft.python = { "black", "ruff_format" }
-- JS/TS/Web
opts.formatters_by_ft.javascript = { "biome" }
opts.formatters_by_ft.typescript = { "biome" }
opts.formatters_by_ft.javascriptreact = { "biome" }
opts.formatters_by_ft.typescriptreact = { "biome" }
opts.formatters_by_ft.vue = { "biome" }
-- JSON
opts.formatters_by_ft.json = { "jq" }
-- YAML
opts.formatters_by_ft.yaml = { "yamlfmt" }
-- TOML
opts.formatters_by_ft.toml = { "taplo" }
-- Dart / Flutter
opts.formatters_by_ft.dart = {
command = "dart",
args = function(ctx)
return { "format", ctx.bufname }
end,
stdin = false,
exit_codes = { 0 },
}
opts.default_format_opts = {
timeout_ms = 1500,
lsp_format = "fallback",
stop_after_first = false,
}
opts.log_level = vim.log.levels.ERROR
opts.notify_on_error = true
opts.notify_no_formatters = true
return opts
end,
},
}

View File

@@ -1,18 +1,18 @@
return {
"ojroques/nvim-osc52",
config = function()
require("osc52").setup {
max_length = 0, -- 不限制长度
silent = false,
trim = false,
}
"ojroques/nvim-osc52",
config = function()
require("osc52").setup({
max_length = 0, -- 不限制长度
silent = false,
trim = false,
})
local function copy()
if vim.v.event.operator == "y" and vim.v.event.regname == "" then
require("osc52").copy_register("")
end
end
local function copy()
if vim.v.event.operator == "y" and vim.v.event.regname == "" then
require("osc52").copy_register("")
end
end
vim.api.nvim_create_autocmd("TextYankPost", { callback = copy })
end,
vim.api.nvim_create_autocmd("TextYankPost", { callback = copy })
end,
}

View File

@@ -0,0 +1,30 @@
return {
{
"LazyVim/LazyVim",
opts = {
treesitter = false,
},
},
{
"nvim-treesitter/nvim-treesitter",
event = { "BufReadPost", "BufNewFile" },
opts = {
ensure_installed = {},
auto_install = false,
highlight = { enable = true },
indent = { enable = true },
incremental_selection = {
enable = true,
keymaps = {
init_selection = "gnn",
node_incremental = "grn",
scope_incremental = "grc",
node_decremental = "grm",
},
},
},
config = function(_, opts)
require("nvim-treesitter.configs").setup(opts)
end,
},
}

View File

@@ -1,5 +1,5 @@
{pkgs, ...}: {
home.packages = with pkgs; [
vscodium
yazi
];
}

View File

@@ -1,3 +0,0 @@
_: {
services.hyprpolkitagent.enable = true;
}

View File

@@ -8,39 +8,45 @@
in
with lib;
mkIf (WM == "niri") {
systemd.user.targets.niri-session = {
Unit = {
Description = "niri compositor session";
Documentation = "man:systemd.special(7)";
};
Target = {
After = "graphical-session-pre.target";
BindsTo = "graphical-session.target";
Wants = "graphical-session-pre.target";
DefaultDependencies = false;
};
};
systemd.user.services.xdg-desktop-portal-gnome = {
Unit = {
Description = "Portal service (GNOME implementation)";
};
Service = {
Type = "dbus";
BusName = "org.freedesktop.impl.portal.desktop.gnome";
ExecStart = "${pkgs.xdg-desktop-portal-gnome}/libexec/xdg-desktop-portal-gnome";
};
};
home.packages = with pkgs; [
niri
xwayland-satellite
];
systemd.user.services.xdg-desktop-portal-gtk = {
Unit = {
Description = "Portal service (GTK implementation)";
PartOf = ["graphical-session.target"];
After = ["graphical-session.target"];
};
Service = {
Type = "dbus";
BusName = "org.freedesktop.impl.portal.desktop.gtk";
ExecStart = "${pkgs.xdg-desktop-portal-gtk}/libexec/xdg-desktop-portal-gtk";
Slice = "session.slice";
};
Install = {
WantedBy = ["xdg-desktop-portal.service"];
};
};
systemd.user.targets.niri-session = {
Unit = {
After = "graphical-session-pre.target graphical-session.target";
BindsTo = "graphical-session.target";
Conflicts = "shutdown.target";
DefaultDependencies = false;
Description = "niri compositor session";
Documentation = "man:systemd.special(7)";
Wants = "graphical-session-pre.target";
};
};
xdg.portal = {
enable = true;
config = {
common = {
default = [
"gnome"
"gtk"
];
default = ["gtk"];
"org.freedesktop.impl.portal.RemoteDesktop" = "gnome";
"org.freedesktop.impl.portal.ScreenCast" = "gnome";
"org.freedesktop.impl.portal.Screenshot" = "gnome";
};
};
extraPortals = [

View File

@@ -37,7 +37,7 @@
autoEnable = true;
targets = {
fcitx5.enable = false;
floorp.enable = false;
firefox.enable = false;
hyprland.enable = false;
kde.enable = false;
mpv.enable = false;

View File

@@ -9,7 +9,7 @@
"peazip-extract-downloads.desktop"
"peazip-extract-here.desktop"
];
browser = ["floorp.desktop"];
browser = ["firefox.desktop"];
editor = ["neovim"];
filemanager = ["nemo.desktop"];
image-viewer = ["org.gnome.Loupe.desktop"];

View File

@@ -6,7 +6,7 @@
}: {
imports = with inputs; [
./${hostname}
chaotic.nixosModules.default
# chaotic.nixosModules.default
disko.nixosModules.disko
stylix.nixosModules.stylix
home-manager.nixosModules.home-manager

View File

@@ -1,59 +1,65 @@
{
# Specific Use Cases
## Hardware related
# -------------------- Hardware --------------------
# See: https://github.com/blueman-project/blueman
Bluetooth = true;
### See https://github.com/blueman-project/blueman
# See: https://nixos.wiki/wiki/AMD_GPU
GPU-AMD = true;
### See https://nixos.wiki/wiki/AMD_GPU
# See: https://nixos.wiki/wiki/Nvidia
GPU-Nvidia = false;
### See https://nixos.wiki/wiki/Nvidia
# See: https://nixos.wiki/wiki/Intel_Graphics
GPU-Intel = false;
### See https://nixos.wiki/wiki/Intel_Graphics
HotSpot-Use-Case = false;
### See https://nixos.wiki/wiki/Internet_Connection_Sharing
# See: https://github.com/linrunner/TLP
Power-control = "TLP"; ## Possible options: PPD ; TLP
## Software related
QEMU-VM-Use-Case = true;
### See https://github.com/qemu/qemu ; https://github.com/virt-manager/virt-manager
# -------------------- System --------------------
# See https://nixos.wiki/wiki/Bootloader
# See: https://search.nixos.org/options?show=boot.loader.grub.mirroredBoots
BootLoader = "systemd-boot"; ## Possible options: grub ; grub-mirror ; systemd-boot
# Options
## System related
BootLoader = "systemd-boot";
### Possible options: grub ; grub-mirror ; systemd-boot # See https://nixos.wiki/wiki/Bootloader https://search.nixos.org/options?channel=unstable&from=0&size=50&sort=relevance&type=packages&query=mirroredBoots
# See: https://search.nixos.org/options?show=boot.kernelPackages
# See: https://www.nyx.chaotic.cx/#using-sched-ext-schedulers
KernelPackages = "linuxPackages_zen";
KernelPackages = "linuxPackages_cachyos";
### See https://search.nixos.org/options?show=boot.kernelPackages https://www.nyx.chaotic.cx/#using-sched-ext-schedulers
KeyboardLayout = "us";
### See https://en.wikipedia.org/wiki/Keyboard_layout
# See: https://mynixos.com/nixpkgs/option/system.stateVersion
StateVersion = "26.05";
# See: https://docs.moodle.org/405/en/Table_of_locales
Locale = "en_US.UTF-8";
### See https://docs.moodle.org/405/en/Table_of_locales
StateVersion = "25.11";
### See https://mynixos.com/nixpkgs/option/system.stateVersion
# See: https://en.wikipedia.org/wiki/Keyboard_layout
KeyboardLayout = "us";
# See: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
TimeZone = "Asia/Singapore";
### See https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
## Wayland related
# -------------------- Display --------------------
WM = "niri"; ## Options: "Hyprland" | "niri" | "sway"
# See: https://wiki.hyprland.org/Configuring/XWayland/#hidpi-xwayland
# See: https://github.com/swaywm/sway/wiki#hidpi
ScaleLevel = "1";
# See: https://github.com/swaywm/sway/wiki#display-configuration
OutputSettings = "output * scale 1";
# See: https://wiki.hyprland.org/Configuring/Monitors
MonitorSettings = "
monitor=eDP-1, 2560x1600@165, 0x0, 1.25
monitor=DP-1, 2560x1440@144, 2560x0, 1.25
";
### MonitorSettings For Hyprland See https://wiki.hyprland.org/Configuring/Monitors/
OutputSettings = "output * scale 1";
### OutputSettings For sway See https://github.com/swaywm/sway/wiki#display-configuration
# -------------------- Software --------------------
# See: https://sing-box.sagernet.org
SingBox = true;
ScaleLevel = "1";
### For Hyprland see https://wiki.hyprland.org/Configuring/XWayland/#hidpi-xwayland
### For sway see https://github.com/swaywm/sway/wiki#hidpi
# See: https://github.com/qemu/qemu
# See: https://github.com/virt-manager/virt-manager
QEMU-VM-Use-Case = true;
WM = "niri";
### Possible options: Hyprland ; niri ; sway
# See: https://github.com/dbeaver/dbeaver
Database-Use-Case = true;
}

View File

@@ -14,7 +14,7 @@
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/67e9d418-8f31-4af7-9178-ae9641099844";
{ device = "/dev/mapper/luks-6647cbcd-ed3a-4205-9a2c-78e337e2f3bf";
fsType = "xfs";
};
@@ -28,13 +28,6 @@
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@@ -1,56 +1,62 @@
{
# Specific Use Cases
## Hardware related
# -------------------- Hardware --------------------
# See: https://github.com/blueman-project/blueman
Bluetooth = false;
### See https://github.com/blueman-project/blueman
# See: https://nixos.wiki/wiki/AMD_GPU
GPU-AMD = false;
### See https://nixos.wiki/wiki/AMD_GPU
# See: https://nixos.wiki/wiki/Nvidia
GPU-Nvidia = false;
### See https://nixos.wiki/wiki/Nvidia
# See: https://nixos.wiki/wiki/Intel_Graphics
GPU-Intel = false;
### See https://nixos.wiki/wiki/Intel_Graphics
HotSpot-Use-Case = false;
### See https://nixos.wiki/wiki/Internet_Connection_Sharing
# See: https://github.com/linrunner/TLP
Power-control = "PPD"; ## Possible options: PPD ; TLP
## Software related
QEMU-VM-Use-Case = false;
### See https://github.com/qemu/qemu ; https://github.com/virt-manager/virt-manager
# -------------------- System --------------------
# See https://nixos.wiki/wiki/Bootloader
# See: https://search.nixos.org/options?show=boot.loader.grub.mirroredBoots
BootLoader = "systemd-boot"; ## Possible options: grub ; grub-mirror ; systemd-boot
# Options
## System related
BootLoader = "systemd-boot";
### Possible options: grub ; grub-mirror ; systemd-boot # See https://nixos.wiki/wiki/Bootloader https://search.nixos.org/options?channel=unstable&from=0&size=50&sort=relevance&type=packages&query=mirroredBoots
# See: https://search.nixos.org/options?show=boot.kernelPackages
# See: https://www.nyx.chaotic.cx/#using-sched-ext-schedulers
KernelPackages = "linuxPackages_zen";
KernelPackages = "linuxPackages_cachyos";
### See https://search.nixos.org/options?show=boot.kernelPackages https://www.nyx.chaotic.cx/#using-sched-ext-schedulers
KeyboardLayout = "us";
### See https://en.wikipedia.org/wiki/Keyboard_layout
# See: https://mynixos.com/nixpkgs/option/system.stateVersion
StateVersion = "26.05";
# See: https://docs.moodle.org/405/en/Table_of_locales
Locale = "en_US.UTF-8";
### See https://docs.moodle.org/405/en/Table_of_locales
StateVersion = "25.11";
### See https://mynixos.com/nixpkgs/option/system.stateVersion
# See: https://en.wikipedia.org/wiki/Keyboard_layout
KeyboardLayout = "us";
# See: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
TimeZone = "Asia/Singapore";
### See https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
## Wayland related
MonitorSettings = "monitor = , preferred, auto, auto";
### MonitorSettings For Hyprland See https://wiki.hyprland.org/Configuring/Monitors/
OutputSettings = "output * scale 1";
### OutputSettings For sway See https://github.com/swaywm/sway/wiki#display-configuration
# -------------------- Display --------------------
WM = "Hyprland"; ## Options: "Hyprland" | "niri" | "sway"
# See: https://wiki.hyprland.org/Configuring/XWayland/#hidpi-xwayland
# See: https://github.com/swaywm/sway/wiki#hidpi
ScaleLevel = "1";
### For Hyprland see https://wiki.hyprland.org/Configuring/XWayland/#hidpi-xwayland
### For sway see https://github.com/swaywm/sway/wiki#hidpi
WM = "Hyprland";
### Possible options: Hyprland ; niri ; sway
# See: https://github.com/swaywm/sway/wiki#display-configuration
OutputSettings = "output * scale 1";
# See: https://wiki.hyprland.org/Configuring/Monitors
MonitorSettings = "monitor = , preferred, auto, auto";
# -------------------- Software --------------------
# See: https://sing-box.sagernet.org
SingBox = true;
# See: https://github.com/qemu/qemu
# See: https://github.com/virt-manager/virt-manager
QEMU-VM-Use-Case = false;
# See: https://github.com/dbeaver/dbeaver
Database-Use-Case = true;
}

View File

@@ -9,7 +9,7 @@ in
config = mkIf Bluetooth {
hardware.bluetooth = {
enable = lib.mkDefault true;
powerOnBoot = lib.mkDefault true;
powerOnBoot = lib.mkDefault false;
};
services.blueman.enable = lib.mkDefault true;
};

View File

@@ -8,10 +8,14 @@ in {
services = {
greetd = {
enable = true;
useTextGreeter = true;
settings = {
default_session = {
user = "greeter";
command = "${pkgs.tuigreet}/bin/tuigreet -c ${WM} -t --user-menu";
command =
if WM == "niri"
then "${pkgs.tuigreet}/bin/tuigreet -c niri-session -t --user-menu"
else "${pkgs.tuigreet}/bin/tuigreet -c ${WM} -t --user-menu";
};
};
};

View File

@@ -0,0 +1,20 @@
{ hostname, lib, pkgs, ... }:
with lib; let
inherit (import ../../hosts/${hostname}/env.nix) Database-Use-Case;
in
{
config = mkIf Database-Use-Case {
services.mysql = {
enable = true;
package = pkgs.mysql84;
};
systemd.services.mysql = {
wantedBy = lib.mkForce [ ];
};
environment.systemPackages = [
pkgs.dbeaver-bin
];
};
}

View File

@@ -0,0 +1,23 @@
{ hostname, lib, pkgs, ... }:
with lib; let
inherit (import ../../hosts/${hostname}/env.nix) Power-control;
in
{
services.power-profiles-daemon.enable = (Power-control == "PPD");
services.tlp = lib.mkIf (Power-control == "TLP") {
enable = true;
settings = {
CPU_SCALING_GOVERNOR_ON_AC = "performance";
CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
CPU_ENERGY_PERF_POLICY_ON_AC = "performance";
CPU_ENERGY_PERF_POLICY_ON_BAT = "powersave";
CPU_MIN_PERF_ON_AC = 0;
CPU_MAX_PERF_ON_AC = 100;
CPU_MIN_PERF_ON_BAT = 0;
CPU_MAX_PERF_ON_BAT = 85;
};
};
}

View File

@@ -3,7 +3,6 @@
{
services = {
gvfs.enable = true;
power-profiles-daemon.enable = true;
scx = {
enable = true;
scheduler = "scx_lavd";

View File

@@ -0,0 +1,39 @@
{ hostname, lib, pkgs, ... }:
with lib;
let
inherit (import ../../hosts/${hostname}/env.nix) SingBox;
in
{
disabledModules = [ "services/networking/sing-box.nix" ];
config = mkIf SingBox {
environment.systemPackages = [ pkgs.sing-box ];
systemd.tmpfiles.rules = [
"d /etc/sing-box 0755 root root -"
];
systemd.services.sing-box = {
description = "sing-box service (custom)";
after = [ "network.target" ];
wantedBy = [ ];
script = ''
exec ${pkgs.sing-box}/bin/sing-box -D "$STATE_DIRECTORY" run -c /etc/sing-box/config.json
'';
serviceConfig = {
DynamicUser = true;
CapabilityBoundingSet = "CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_DAC_OVERRIDE";
AmbientCapabilities = "CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_DAC_OVERRIDE";
NoNewPrivileges = true;
StateDirectory = "sing-box";
StateDirectoryMode = "0700";
Restart = "always";
RestartSec = 5;
};
};
};
}

View File

@@ -17,12 +17,22 @@
in
with lib; {
boot = {
bcache.enable = false;
consoleLogLevel = 2; # Only errors and warnings are displayed
extraModprobeConfig = "blacklist mei mei_hdcp mei_me mei_pxp iTCO_wdt pstore sp5100_tco";
extraModulePackages = [
config.boot.kernelPackages.v4l2loopback # v4l2loopback is for OBS Virtual Cam Support
blacklistedKernelModules = [
"iTCO_wdt"
"iTCO_vendor_support"
"intel_pmc_bxt"
"mei"
"mei_hdcp"
"mei_me"
"mei_pxp"
"pstore"
"sp5100_tco"
"wdat_wdt"
];
consoleLogLevel = 2; # Only errors and warnings are displayed
# extraModulePackages = [
# config.boot.kernelPackages.v4l2loopback # v4l2loopback is for OBS Virtual Cam Support
# ];
initrd = {
compressor = "zstd";
compressorArgs = ["-T0" "-19" "--long"];
@@ -33,7 +43,7 @@ in
"kernel.core_pattern" = "|/bin/false"; # Disable automatic core dumps
"vm.max_map_count" = 2147483642; # Needed For Some Steam Games
};
kernelModules = ["v4l2loopback"]; # v4l2loopback is for OBS Virtual Cam Support
# kernelModules = ["v4l2loopback"]; # v4l2loopback is for OBS Virtual Cam Support
kernelPackages = pkgs.${KernelPackages};
kernelParams = ["audit=0" "console=tty1" "erst_disable" "nmi_watchdog=0" "noatime" "nowatchdog"];
loader = {
@@ -104,10 +114,9 @@ in
security = {
rtkit.enable = true;
sudo.enable = false;
sudo-rs = {
sudo = {
enable = true;
execWheelOnly = true;
wheelNeedsPassword = true;
};
pam.services = {
hyprlock = {};
@@ -135,7 +144,6 @@ in
};
system = {
rebuild.enableNg = true;
stateVersion = StateVersion;
};

View File

@@ -46,13 +46,11 @@ in {
# For OBS virtual cam support
v4l-utils
# Editor
nano
# Networking tool
iperf3
nexttrace
curl
wget
aria2
yt-dlp
@@ -60,6 +58,7 @@ in {
xxd
file
binwalk
qtscrcpy
android-tools
payload-dumper-go
@@ -69,28 +68,35 @@ in {
libvirt
lm_sensors
usbutils
libsecret
# Niri
wlr-randr
# Dev
go
zig
lua
gcc
gdb
cmake
clang
zig
nodejs_20
gnumake
rustc
cargo
dart
kotlin
flutter
jdk17
python312
pnpm
nodejs_24
];
};
programs = {
dconf.enable = true;
fuse.userAllowOther = true;
git = {
enable = true;
package = pkgs.gitFull;
};
ssh.startAgent = true;
};
}

View File

@@ -31,13 +31,13 @@ with lib; {
substituters = [
"https://cache.garnix.io" # See https://github.com/daeuniverse/flake.nix
"https://cache.nixos.org" # See https://nixos.wiki/wiki/Binary_Cache
"https://chaotic-nyx.cachix.org" # See https://github.com/chaotic-cx/nyx
# "https://chaotic-nyx.cachix.org" # See https://github.com/chaotic-cx/nyx
"https://nix-community.cachix.org" # See https://nix-community.org/cache/
];
trusted-public-keys = [
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
"chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8="
# "chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8="
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
];
warn-dirty = false;