diff --git a/.github/workflows/nix-cache.yml b/.github/workflows/nix-cache.yml deleted file mode 100644 index 8b76c31..0000000 --- a/.github/workflows/nix-cache.yml +++ /dev/null @@ -1,71 +0,0 @@ -name: nix-build-and-cache - -on: - pull_request: - paths: - - "flake.nix" - - "flake.lock" - - "hosts/**" - - "modules/**" - - "profiles/**" - - "overlays/**" - - ".github/workflows/nix-cache.yml" - push: - branches: - - main - paths: - - "flake.nix" - - "flake.lock" - - "hosts/**" - - "modules/**" - - "profiles/**" - - "overlays/**" - - ".github/workflows/nix-cache.yml" - workflow_dispatch: - -concurrency: - group: nix-${{ github.ref }} - cancel-in-progress: true - -jobs: - build: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - host: - - x1g9 - - x1g13-wsl - - x1g13 - - monitor - - dev-1 - - service-1 - - steps: - - name: Checkout - uses: actions/checkout@v6 - - - name: Install Nix - uses: cachix/install-nix-action@v31 - with: - github_access_token: ${{ secrets.GITHUB_TOKEN }} - extra_nix_config: | - accept-flake-config = true - - - name: Setup Cachix for PR - if: github.event_name == 'pull_request' - uses: cachix/cachix-action@v17 - with: - name: moons-dotfiles - skipPush: true - - - name: Setup Cachix for main push - if: github.event_name == 'push' && github.ref == 'refs/heads/main' - uses: cachix/cachix-action@v17 - with: - name: moons-dotfiles - authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}" - - - name: Build host - run: | - nix build -L .#nixosConfigurations.${{ matrix.host }}.config.system.build.toplevel diff --git a/.gitignore b/.gitignore index a7f6ba0..8b13789 100644 --- a/.gitignore +++ b/.gitignore @@ -1,19 +1 @@ -/* -!.gitignore -!README.md -!LICENSE - -!/flake.nix -!/flake.lock - -!/hosts/ -!/modules/ -!/home-manager/ -!/shells/ -!/images/ -!/profiles/ -!/overlays/ - -!renovate.json -!.github/ diff --git a/README.md b/README.md deleted file mode 100644 index 8d3b6a2..0000000 --- a/README.md +++ /dev/null @@ -1,189 +0,0 @@ -# dotfiles - -NixOS + Home Manager configuration for moons. This repository uses Nix flakes to -manage multiple NixOS hosts and project-specific development shells. - -This is a personal configuration. It assumes the `moons` user, `ja_JP.UTF-8` -locale, and `Asia/Tokyo` timezone. - -## Features - -- NixOS 25.11 based flake configuration -- Home Manager integrated as a NixOS module -- Wayland GUI profile with Niri, Hyprland, greetd, and Noctalia -- Home Manager modules for zsh, git, btop, zellij, direnv, NixVim, fcitx5, and more -- Separate hosts for ThinkPad X1 Carbon Gen 9 / Gen 13, WSL, and server machines -- `nix develop` shells for Next.js, Jupyter, and Rust projects -- GitHub Actions + Cachix build cache for host builds -- Renovate maintenance for flake inputs and the lock file - -## Hosts - -The following hosts are defined in `flake.nix` under `nixosConfigurations`. - -| Host | Profile | Notes | -| --- | --- | --- | -| `x1g9` | `laptop` | ThinkPad X1 9th gen, using `nixos-hardware` and the Intel driver module | -| `x1g13` | `laptop` | ThinkPad X1 13th gen, using the Intel driver module and Lanzaboote secure boot | -| `x1g13-wsl` | `cli` | NixOS-WSL with `moons` as the default user | -| `monitor` | `cli-server` | Server host | -| `dev-1` | `cli-server` | Server host | -| `service-1` | `cli-server` | Server host with Immich / Cloudreve NFS mounts | - -## Profiles - -Profiles live in `profiles/` and are selected per host from `flake.nix`. - -| Profile | Role | -| --- | --- | -| `cli-minimal` | Minimal profile with no extra imports. Shared NixOS and Home Manager modules are still always applied | -| `cli` | CLI profile extending `cli-minimal` | -| `cli-server` | Server profile extending `cli` | -| `gui` | GUI profile extending `cli` with Niri, Hyprland, greetd, Noctalia, KDE/GUI support, and GUI Home Manager modules | -| `laptop` | Laptop profile extending `gui` with fingerprint, power, and camera modules | - -## Directory Layout - -```text -. -|-- flake.nix # inputs, host definitions, devShells -|-- flake.lock # locked flake inputs -|-- hosts/ # host-specific NixOS settings -| `-- / -| |-- default.nix -| `-- hardware-configuration.nix -|-- profiles/ # reusable host profiles -|-- modules/ -| |-- core/ # NixOS modules -| |-- drivers/ # hardware / driver modules -| `-- home/ # Home Manager modules -|-- overlays/ # package overlays -|-- shells/ # nix develop environments -|-- images/ # managed image assets -|-- renovate.json # Renovate config -`-- .github/workflows/ # CI builds and Cachix integration -``` - -## System Usage - -Rebuild the current machine by selecting the matching `#` output. - -```sh -sudo nixos-rebuild switch --flake .#x1g13 -``` - -Switch on the next boot instead: - -```sh -sudo nixos-rebuild boot --flake .#x1g13 -``` - -Build a system closure in the same form used by CI: - -```sh -nix build -L .#nixosConfigurations.x1g13.config.system.build.toplevel -``` - -List available hosts and development shells: - -```sh -nix flake show -``` - -## Development Shells - -`devShells.x86_64-linux` provides the following shells. - -| Shell | Command | Main tools | -| --- | --- | --- | -| `next-web` | `nix develop .#next-web` | Node.js 24, pnpm, Vercel CLI, Prisma, OpenSSL, jq, ngrok | -| `jupyter` | `nix develop .#jupyter` | Python 3.12, JupyterLab, NumPy, pandas, matplotlib, scipy, scikit-learn | -| `rust` | `nix develop .#rust` | rustup, clang, LLVM/binutils, pkg-config | - -To use a shell through direnv, add an `.envrc` to the target project. - -```sh -use flake ~/dotfiles#next-web -``` - -## Adding A Host - -1. Create `hosts//hardware-configuration.nix`. - For an existing NixOS install, use the output from `sudo nixos-generate-config`. -2. Create `hosts//default.nix` and import hardware modules or host-specific settings. -3. Add a `mkSystem` entry to `nixosConfigurations` in `flake.nix` and choose a `profile`. -4. Check the build with `nix build -L .#nixosConfigurations..config.system.build.toplevel`. -5. Run `sudo nixos-rebuild switch --flake .#` on the target host. - -## Common Modules - -### NixOS - -`modules/core/default.nix` imports boot, Cachix, environment, fonts, GC, hardware, -i18n, network, packages, services, SSH, system, user, and xserver modules. - -Main settings include: - -- flakes / nix-command enabled -- `moons` user and Home Manager integration -- zsh, Docker, Tailscale, PipeWire, adb, Java 25, Python, Bun, Claude Code, Codex, and more -- NetworkManager, fixed nameservers, and JP Wi-Fi regulatory domain -- OpenSSH server with password login and root login disabled -- Cachix caches for `moons-dotfiles` and `vicinae` - -### Home Manager - -`modules/home/default.nix` imports btop, git, fcitx5, SSH, NixVim, zsh, direnv, -zellij, and Claude configuration. - -The GUI profile additionally manages Niri, VS Code, Google Chrome, Vicinae, -Noctalia, Ghostty, wallpaper, lock screen, Discord, Nautilus, GTK, and Zoom. - -NixVim is split into modules for LSP, formatters, completion, git integration, -UI plugins, editor plugins, options, keymaps, and autocmds. - -## Manual Steps - -The following setup is not fully declarative or needs host-specific manual work. - -- Register an SSH public key with GitHub. -- Enroll fingerprints on laptop hosts. - -```sh -fprintd-enroll -``` - -- `x1g13` uses Lanzaboote / sbctl for secure boot. The PKI bundle is read from - `/var/lib/sbctl`. -- Log in to services that require authentication, such as Tailscale and 1Password. - -## Maintenance - -Update all flake inputs: - -```sh -nix flake update -``` - -Update a single input: - -```sh -nix flake lock --update-input nixpkgs -``` - -GitHub Actions builds all hosts when `flake.nix`, `flake.lock`, `hosts/**`, -`modules/**`, `profiles/**`, or `overlays/**` changes. Pushes to `main` upload -to the `moons-dotfiles` Cachix cache. - -Renovate enables Nix lock file maintenance and has a separate package rule for -`llm-agents`. - -## Inspired - -- [Zaney/zaneyos](https://gitlab.com/Zaney/zaneyos) -- [fa0311/.zshrc](https://gist.github.com/fa0311/d37d53ff39c73c54c883379e8e3732df) -- [AsianLovesLinux/Niri](https://github.com/AsianLovesLinux/Niri) -- [natsukium/dotfiles](https://github.com/natsukium/dotfiles) -- [dracula](https://github.com/dracula) -- [akazdayo/nix-configs](https://github.com/akazdayo/nix-configs) -- [yutakobayashidev/dotnix](https://github.com/yutakobayashidev/dotnix) diff --git a/flake.lock b/flake.lock deleted file mode 100644 index 4de7c0d..0000000 --- a/flake.lock +++ /dev/null @@ -1,1197 +0,0 @@ -{ - "nodes": { - "base16": { - "inputs": { - "fromYaml": "fromYaml" - }, - "locked": { - "lastModified": 1755819240, - "narHash": "sha256-qcMhnL7aGAuFuutH4rq9fvAhCpJWVHLcHVZLtPctPlo=", - "owner": "SenchoPens", - "repo": "base16.nix", - "rev": "75ed5e5e3fce37df22e49125181fa37899c3ccd6", - "type": "github" - }, - "original": { - "owner": "SenchoPens", - "repo": "base16.nix", - "type": "github" - } - }, - "base16-fish": { - "flake": false, - "locked": { - "lastModified": 1765809053, - "narHash": "sha256-XCUQLoLfBJ8saWms2HCIj4NEN+xNsWBlU1NrEPcQG4s=", - "owner": "tomyun", - "repo": "base16-fish", - "rev": "86cbea4dca62e08fb7fd83a70e96472f92574782", - "type": "github" - }, - "original": { - "owner": "tomyun", - "repo": "base16-fish", - "rev": "86cbea4dca62e08fb7fd83a70e96472f92574782", - "type": "github" - } - }, - "base16-helix": { - "flake": false, - "locked": { - "lastModified": 1760703920, - "narHash": "sha256-m82fGUYns4uHd+ZTdoLX2vlHikzwzdu2s2rYM2bNwzw=", - "owner": "tinted-theming", - "repo": "base16-helix", - "rev": "d646af9b7d14bff08824538164af99d0c521b185", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "base16-helix", - "type": "github" - } - }, - "base16-vim": { - "flake": false, - "locked": { - "lastModified": 1732806396, - "narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=", - "owner": "tinted-theming", - "repo": "base16-vim", - "rev": "577fe8125d74ff456cf942c733a85d769afe58b7", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "base16-vim", - "rev": "577fe8125d74ff456cf942c733a85d769afe58b7", - "type": "github" - } - }, - "crane": { - "locked": { - "lastModified": 1777242778, - "narHash": "sha256-VWTeqWeb8Sel/QiWyaPvCa9luAbcGawR+Rw09FJoHz0=", - "owner": "ipetkov", - "repo": "crane", - "rev": "ad8b31ad0ba8448bd958d7a5d50d811dc5d271c0", - "type": "github" - }, - "original": { - "owner": "ipetkov", - "repo": "crane", - "type": "github" - } - }, - "firefox-gnome-theme": { - "flake": false, - "locked": { - "lastModified": 1775176642, - "narHash": "sha256-2veEED0Fg7Fsh81tvVDNYR6SzjqQxa7hbi18Jv4LWpM=", - "owner": "rafaelmardojai", - "repo": "firefox-gnome-theme", - "rev": "179704030c5286c729b5b0522037d1d51341022c", - "type": "github" - }, - "original": { - "owner": "rafaelmardojai", - "repo": "firefox-gnome-theme", - "type": "github" - } - }, - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1761588595, - "narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_2": { - "flake": false, - "locked": { - "lastModified": 1767039857, - "narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=", - "owner": "NixOS", - "repo": "flake-compat", - "rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_3": { - "flake": false, - "locked": { - "lastModified": 1767039857, - "narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_4": { - "flake": false, - "locked": { - "lastModified": 1767039857, - "narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=", - "owner": "NixOS", - "repo": "flake-compat", - "rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-parts": { - "inputs": { - "nixpkgs-lib": [ - "nixvim", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1768135262, - "narHash": "sha256-PVvu7OqHBGWN16zSi6tEmPwwHQ4rLPU9Plvs8/1TUBY=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "80daad04eddbbf5a4d883996a73f3f542fa437ac", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_2": { - "inputs": { - "nixpkgs-lib": [ - "stylix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1775087534, - "narHash": "sha256-91qqW8lhL7TLwgQWijoGBbiD4t7/q75KTi8NxjVmSmA=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "3107b77cd68437b9a76194f0f7f9c55f2329ca5b", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-utils": { - "inputs": { - "systems": "systems_2" - }, - "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": { - "lastModified": 1731966426, - "narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=", - "owner": "SenchoPens", - "repo": "fromYaml", - "rev": "106af9e2f715e2d828df706c386a685698f3223b", - "type": "github" - }, - "original": { - "owner": "SenchoPens", - "repo": "fromYaml", - "type": "github" - } - }, - "ghostty": { - "inputs": { - "flake-compat": "flake-compat", - "home-manager": "home-manager", - "nixpkgs": "nixpkgs", - "systems": "systems", - "zig": "zig", - "zon2nix": "zon2nix" - }, - "locked": { - "lastModified": 1777773742, - "narHash": "sha256-dZFc+8az7BUIs8+v45XqNnY5G6oXEwVfVVHZQuATSGQ=", - "owner": "ghostty-org", - "repo": "ghostty", - "rev": "1547dd667ab6d1f4ebcdc7282adc54c95752ee67", - "type": "github" - }, - "original": { - "owner": "ghostty-org", - "repo": "ghostty", - "type": "github" - } - }, - "gitignore": { - "inputs": { - "nixpkgs": [ - "lanzaboote", - "pre-commit", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, - "gnome-shell": { - "flake": false, - "locked": { - "lastModified": 1767737596, - "narHash": "sha256-eFujfIUQDgWnSJBablOuG+32hCai192yRdrNHTv0a+s=", - "owner": "GNOME", - "repo": "gnome-shell", - "rev": "ef02db02bf0ff342734d525b5767814770d85b49", - "type": "github" - }, - "original": { - "owner": "GNOME", - "repo": "gnome-shell", - "rev": "ef02db02bf0ff342734d525b5767814770d85b49", - "type": "github" - } - }, - "home-manager": { - "inputs": { - "nixpkgs": [ - "ghostty", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1770586272, - "narHash": "sha256-Ucci8mu8QfxwzyfER2DQDbvW9t1BnTUJhBmY7ybralo=", - "owner": "nix-community", - "repo": "home-manager", - "rev": "b1f916ba052341edc1f80d4b2399f1092a4873ca", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "home-manager", - "type": "github" - } - }, - "home-manager_2": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1777771528, - "narHash": "sha256-YycygK6n7KeW1YCobdFJcORWzkmrvNcp6xT+IovA0d4=", - "owner": "nix-community", - "repo": "home-manager", - "rev": "0585fbf645640973e3398863bbaf3bd1ddce4a51", - "type": "github" - }, - "original": { - "owner": "nix-community", - "ref": "release-25.11", - "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" - } - }, - "lanzaboote": { - "inputs": { - "crane": "crane", - "nixpkgs": [ - "nixpkgs" - ], - "pre-commit": "pre-commit", - "rust-overlay": "rust-overlay" - }, - "locked": { - "lastModified": 1777299656, - "narHash": "sha256-c0r3xXp2+xFJwkryS+nhyQwoACbFzSt4C1TVs3QMh8E=", - "owner": "nix-community", - "repo": "lanzaboote", - "rev": "079c608988c2747db3902c9de033572cd50e8656", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "lanzaboote", - "type": "github" - } - }, - "niri-flake": { - "inputs": { - "niri-stable": "niri-stable", - "niri-unstable": "niri-unstable", - "nixpkgs": "nixpkgs_2", - "nixpkgs-stable": "nixpkgs-stable", - "xwayland-satellite-stable": "xwayland-satellite-stable", - "xwayland-satellite-unstable": "xwayland-satellite-unstable" - }, - "locked": { - "lastModified": 1777815637, - "narHash": "sha256-jQnoHmnFgUWYDNosplgd5eFnUTT0MtEj2w9HCA4g1C0=", - "owner": "sodiboo", - "repo": "niri-flake", - "rev": "945748d71d3422d4f1dada2cd10222e34ed9d767", - "type": "github" - }, - "original": { - "owner": "sodiboo", - "repo": "niri-flake", - "type": "github" - } - }, - "niri-stable": { - "flake": false, - "locked": { - "lastModified": 1756556321, - "narHash": "sha256-RLD89dfjN0RVO86C/Mot0T7aduCygPGaYbog566F0Qo=", - "owner": "YaLTeR", - "repo": "niri", - "rev": "01be0e65f4eb91a9cd624ac0b76aaeab765c7294", - "type": "github" - }, - "original": { - "owner": "YaLTeR", - "ref": "v25.08", - "repo": "niri", - "type": "github" - } - }, - "niri-unstable": { - "flake": false, - "locked": { - "lastModified": 1777733745, - "narHash": "sha256-1TlpdT0WYyBGtUS3PH4oXHUmdno2EUh2TfHadK2BmJo=", - "owner": "YaLTeR", - "repo": "niri", - "rev": "1f07cffa9f355298a31d7efe1b400ede93a97728", - "type": "github" - }, - "original": { - "owner": "YaLTeR", - "repo": "niri", - "type": "github" - } - }, - "nixos-hardware": { - "locked": { - "lastModified": 1777796046, - "narHash": "sha256-bEJp/zaQApzynGRaAO62BZSz9tFikKtIHCn2yIA/s7Q=", - "owner": "NixOS", - "repo": "nixos-hardware", - "rev": "eeb02f6e29fc8139c0b15af5ff0fdfdc6d0d3d90", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "master", - "repo": "nixos-hardware", - "type": "github" - } - }, - "nixos-wsl": { - "inputs": { - "flake-compat": "flake-compat_3", - "nixpkgs": "nixpkgs_3" - }, - "locked": { - "lastModified": 1777732699, - "narHash": "sha256-2uX/XtOWZ/oy2rerRynVhqVA//ZXZ3Fo60PikLHEPQc=", - "owner": "nix-community", - "repo": "NixOS-WSL", - "rev": "5482f113fd31ebac131d1ebeb2ae90bf0d5e41f5", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "NixOS-WSL", - "type": "github" - } - }, - "nixpkgs": { - "locked": { - "lastModified": 1770537093, - "narHash": "sha256-XV30uo8tXuxdzuV8l3sojmlPRLd/8tpMsOp4lNzLGUo=", - "rev": "fef9403a3e4d31b0a23f0bacebbec52c248fbb51", - "type": "tarball", - "url": "https://releases.nixos.org/nixpkgs/nixpkgs-26.05pre942631.fef9403a3e4d/nixexprs.tar.xz" - }, - "original": { - "type": "tarball", - "url": "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz" - } - }, - "nixpkgs-stable": { - "locked": { - "lastModified": 1777673416, - "narHash": "sha256-5c2POKPOjU40Kh0MirOdScBLG0bu9TAuPYAtPRNZMBs=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "26ef669cffa904b6f6832ab57b77892a37c1a671", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-25.11", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-unstable": { - "locked": { - "lastModified": 1777641297, - "narHash": "sha256-WNGcmeOZ8Tr9dq6ztCspYbzWFswr2mPebM9LpsfGxPk=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "c6d65881c5624c9cae5ea6cedef24699b0c0a4c0", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_2": { - "locked": { - "lastModified": 1777578337, - "narHash": "sha256-Ad49moKWeXtKBJNy2ebiTQUEgdLyvGmTeykAQ9xM+Z4=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "15f4ee454b1dce334612fa6843b3e05cf546efab", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { - "locked": { - "lastModified": 1776169885, - "narHash": "sha256-l/iNYDZ4bGOAFQY2q8y5OAfBBtrDAaPuRQqWaFHVRXM=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "4bd9165a9165d7b5e33ae57f3eecbcb28fb231c9", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1777673416, - "narHash": "sha256-5c2POKPOjU40Kh0MirOdScBLG0bu9TAuPYAtPRNZMBs=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "26ef669cffa904b6f6832ab57b77892a37c1a671", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-25.11", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_5": { - "locked": { - "lastModified": 1772542754, - "narHash": "sha256-WGV2hy+VIeQsYXpsLjdr4GvHv5eECMISX1zKLTedhdg=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "8c809a146a140c5c8806f13399592dbcb1bb5dc4", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixvim": { - "inputs": { - "flake-parts": "flake-parts", - "nixpkgs": [ - "nixpkgs" - ], - "nuschtosSearch": "nuschtosSearch", - "systems": "systems_3" - }, - "locked": { - "lastModified": 1769049374, - "narHash": "sha256-h0Os2qqNyycDY1FyZgtbn28VF1ySP74/n0f+LDd8j+w=", - "owner": "nix-community", - "repo": "nixvim", - "rev": "b8f76bf5751835647538ef8784e4e6ee8deb8f95", - "type": "github" - }, - "original": { - "owner": "nix-community", - "ref": "nixos-25.11", - "repo": "nixvim", - "type": "github" - } - }, - "noctalia": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ], - "noctalia-qs": "noctalia-qs" - }, - "locked": { - "lastModified": 1777772763, - "narHash": "sha256-MIFrNTX+x42UdOiL9lWmwyyymh80/pxtU4afvEizZDk=", - "owner": "noctalia-dev", - "repo": "noctalia-shell", - "rev": "f0469d2d6f9b1ca873932dcef6583f9d6a2eee28", - "type": "github" - }, - "original": { - "owner": "noctalia-dev", - "repo": "noctalia-shell", - "type": "github" - } - }, - "noctalia-qs": { - "inputs": { - "nixpkgs": [ - "noctalia", - "nixpkgs" - ], - "systems": "systems_4", - "treefmt-nix": "treefmt-nix" - }, - "locked": { - "lastModified": 1777380063, - "narHash": "sha256-q5mWOEICcZzr+KnjIwDHV9EXiBxOC9cnBpxZbDAViU8=", - "owner": "noctalia-dev", - "repo": "noctalia-qs", - "rev": "8742a7a748c43bf44eb6862a8ebd3591ed71502d", - "type": "github" - }, - "original": { - "owner": "noctalia-dev", - "repo": "noctalia-qs", - "type": "github" - } - }, - "nur": { - "inputs": { - "flake-parts": [ - "stylix", - "flake-parts" - ], - "nixpkgs": [ - "stylix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1775228139, - "narHash": "sha256-ebbeHmg+V7w8050bwQOuhmQHoLOEOfqKzM1KgCTexK4=", - "owner": "nix-community", - "repo": "NUR", - "rev": "601971b9c89e0304561977f2c28fa25e73aa7132", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "NUR", - "type": "github" - } - }, - "nuschtosSearch": { - "inputs": { - "flake-utils": "flake-utils", - "ixx": "ixx", - "nixpkgs": [ - "nixvim", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1768249818, - "narHash": "sha256-ANfn5OqIxq3HONPIXZ6zuI5sLzX1sS+2qcf/Pa0kQEc=", - "owner": "NuschtOS", - "repo": "search", - "rev": "b6f77b88e9009bfde28e2130e218e5123dc66796", - "type": "github" - }, - "original": { - "owner": "NuschtOS", - "repo": "search", - "type": "github" - } - }, - "pre-commit": { - "inputs": { - "flake-compat": "flake-compat_2", - "gitignore": "gitignore", - "nixpkgs": [ - "lanzaboote", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1776796298, - "narHash": "sha256-PcRvlWayisPSjd0UcRQbhG8Oqw78AcPE6x872cPRHN8=", - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "rev": "3cfd774b0a530725a077e17354fbdb87ea1c4aad", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "type": "github" - } - }, - "quickshell": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1777706159, - "narHash": "sha256-TuD8hw9lkRCEb+6v93iB7HDvcmvH8R0qyD6wBmPGfv8=", - "owner": "outfoxxed", - "repo": "quickshell", - "rev": "8db8ca1fecfcce8def1f9265fa1742baa0e0c271", - "type": "github" - }, - "original": { - "owner": "outfoxxed", - "repo": "quickshell", - "type": "github" - } - }, - "root": { - "inputs": { - "ghostty": "ghostty", - "home-manager": "home-manager_2", - "lanzaboote": "lanzaboote", - "niri-flake": "niri-flake", - "nixos-hardware": "nixos-hardware", - "nixos-wsl": "nixos-wsl", - "nixpkgs": "nixpkgs_4", - "nixpkgs-unstable": "nixpkgs-unstable", - "nixvim": "nixvim", - "noctalia": "noctalia", - "quickshell": "quickshell", - "stylix": "stylix", - "vicinae": "vicinae", - "vicinae-extensions": "vicinae-extensions" - } - }, - "rust-overlay": { - "inputs": { - "nixpkgs": [ - "lanzaboote", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1777173302, - "narHash": "sha256-ERiu3cbxvnTDxiDcimRA7af7xp6x1y0sRyLGm28Qzz8=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "aaec8c50baeaf2f2ba653e8aae71778a2bbbac94", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "stylix": { - "inputs": { - "base16": "base16", - "base16-fish": "base16-fish", - "base16-helix": "base16-helix", - "base16-vim": "base16-vim", - "firefox-gnome-theme": "firefox-gnome-theme", - "flake-parts": "flake-parts_2", - "gnome-shell": "gnome-shell", - "nixpkgs": [ - "nixpkgs" - ], - "nur": "nur", - "systems": "systems_5", - "tinted-kitty": "tinted-kitty", - "tinted-schemes": "tinted-schemes", - "tinted-tmux": "tinted-tmux", - "tinted-zed": "tinted-zed" - }, - "locked": { - "lastModified": 1777580129, - "narHash": "sha256-6buSTzDtHYCJP1JNAIZCmgNcOs76oN03j+21CxdijVo=", - "owner": "nix-community", - "repo": "stylix", - "rev": "20ff51f523e2dd67e5f31a321719d30708c1b771", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "stylix", - "type": "github" - } - }, - "systems": { - "flake": false, - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "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" - } - }, - "systems_4": { - "locked": { - "lastModified": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", - "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default-linux", - "type": "github" - } - }, - "systems_5": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_6": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_7": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "tinted-kitty": { - "flake": false, - "locked": { - "lastModified": 1735730497, - "narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=", - "owner": "tinted-theming", - "repo": "tinted-kitty", - "rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "tinted-kitty", - "type": "github" - } - }, - "tinted-schemes": { - "flake": false, - "locked": { - "lastModified": 1772661346, - "narHash": "sha256-4eu3LqB9tPqe0Vaqxd4wkZiBbthLbpb7llcoE/p5HT0=", - "owner": "tinted-theming", - "repo": "schemes", - "rev": "13b5b0c299982bb361039601e2d72587d6846294", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "schemes", - "type": "github" - } - }, - "tinted-tmux": { - "flake": false, - "locked": { - "lastModified": 1772934010, - "narHash": "sha256-x+6+4UvaG+RBRQ6UaX+o6DjEg28u4eqhVRM9kpgJGjQ=", - "owner": "tinted-theming", - "repo": "tinted-tmux", - "rev": "c3529673a5ab6e1b6830f618c45d9ce1bcdd829d", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "tinted-tmux", - "type": "github" - } - }, - "tinted-zed": { - "flake": false, - "locked": { - "lastModified": 1772909925, - "narHash": "sha256-jx/5+pgYR0noHa3hk2esin18VMbnPSvWPL5bBjfTIAU=", - "owner": "tinted-theming", - "repo": "base16-zed", - "rev": "b4d3a1b3bcbd090937ef609a0a3b37237af974df", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "base16-zed", - "type": "github" - } - }, - "treefmt-nix": { - "inputs": { - "nixpkgs": [ - "noctalia", - "noctalia-qs", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1775636079, - "narHash": "sha256-pc20NRoMdiar8oPQceQT47UUZMBTiMdUuWrYu2obUP0=", - "owner": "numtide", - "repo": "treefmt-nix", - "rev": "790751ff7fd3801feeaf96d7dc416a8d581265ba", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "treefmt-nix", - "type": "github" - } - }, - "vicinae": { - "inputs": { - "nixpkgs": "nixpkgs_5", - "systems": "systems_6" - }, - "locked": { - "lastModified": 1777815457, - "narHash": "sha256-tOHe63NSWVFYBry/KSd5wwF9Khha5AXT5Dqx+Z6ICww=", - "owner": "vicinaehq", - "repo": "vicinae", - "rev": "5ab9b061690e9e8695ec62dc793f9a3bda2eb616", - "type": "github" - }, - "original": { - "owner": "vicinaehq", - "repo": "vicinae", - "type": "github" - } - }, - "vicinae-extensions": { - "inputs": { - "flake-compat": "flake-compat_4", - "nixpkgs": [ - "nixpkgs" - ], - "systems": "systems_7", - "vicinae": "vicinae_2" - }, - "locked": { - "lastModified": 1777597325, - "narHash": "sha256-LfqeVlMwclHJKsJu5jJoztjlaCeIasQsiv3P9+eKDNw=", - "owner": "vicinaehq", - "repo": "extensions", - "rev": "89cc49471c3e7119bfd36d68998cefe534bddab8", - "type": "github" - }, - "original": { - "owner": "vicinaehq", - "repo": "extensions", - "type": "github" - } - }, - "vicinae_2": { - "inputs": { - "nixpkgs": [ - "vicinae-extensions", - "nixpkgs" - ], - "systems": [ - "vicinae-extensions", - "systems" - ] - }, - "locked": { - "lastModified": 1768856963, - "narHash": "sha256-u5bWDuwk6oieTnvm1YjNotcYK8iJSddH5+S68+X4TSc=", - "owner": "vicinaehq", - "repo": "vicinae", - "rev": "934bc0ad47be6dbd6498a0dac655c4613fd0ab27", - "type": "github" - }, - "original": { - "owner": "vicinaehq", - "repo": "vicinae", - "type": "github" - } - }, - "xwayland-satellite-stable": { - "flake": false, - "locked": { - "lastModified": 1755491097, - "narHash": "sha256-m+9tUfsmBeF2Gn4HWa6vSITZ4Gz1eA1F5Kh62B0N4oE=", - "owner": "Supreeeme", - "repo": "xwayland-satellite", - "rev": "388d291e82ffbc73be18169d39470f340707edaa", - "type": "github" - }, - "original": { - "owner": "Supreeeme", - "ref": "v0.7", - "repo": "xwayland-satellite", - "type": "github" - } - }, - "xwayland-satellite-unstable": { - "flake": false, - "locked": { - "lastModified": 1773622265, - "narHash": "sha256-wToKwH7IgWdGLMSIWksEDs4eumR6UbbsuPQ42r0oTXQ=", - "owner": "Supreeeme", - "repo": "xwayland-satellite", - "rev": "a879e5e0896a326adc79c474bf457b8b99011027", - "type": "github" - }, - "original": { - "owner": "Supreeeme", - "repo": "xwayland-satellite", - "type": "github" - } - }, - "zig": { - "inputs": { - "flake-compat": [ - "ghostty", - "flake-compat" - ], - "nixpkgs": [ - "ghostty", - "nixpkgs" - ], - "systems": [ - "ghostty", - "systems" - ] - }, - "locked": { - "lastModified": 1776789209, - "narHash": "sha256-G6B7Q4TXn7MZ1mB+f9rymjsYF5PLWoSvmbxijb/99bw=", - "owner": "mitchellh", - "repo": "zig-overlay", - "rev": "14fe971844e841297ddd2ce9783d6892b467af39", - "type": "github" - }, - "original": { - "owner": "mitchellh", - "repo": "zig-overlay", - "type": "github" - } - }, - "zig_2": { - "inputs": { - "nixpkgs": [ - "ghostty", - "zon2nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1777234348, - "narHash": "sha256-fKw44a4qbUuI5eTG8k0gPbqMV5TOrjYF35PBzsYgd2U=", - "ref": "refs/heads/main", - "rev": "2c781c0609ecda600ab98f98cca417bbd981bd53", - "revCount": 1677, - "type": "git", - "url": "https://codeberg.org/jcollie/zig-overlay.git" - }, - "original": { - "type": "git", - "url": "https://codeberg.org/jcollie/zig-overlay.git" - } - }, - "zon2nix": { - "inputs": { - "nixpkgs": [ - "ghostty", - "nixpkgs" - ], - "zig": "zig_2" - }, - "locked": { - "lastModified": 1777314365, - "narHash": "sha256-eLxQaD0wc96Neqkln8wHS0rNq/chPODifFkhwrwilEU=", - "owner": "jcollie", - "repo": "zon2nix", - "rev": "a5a1d412ad1ab6305511997bbc92b3a9dd6cb784", - "type": "github" - }, - "original": { - "owner": "jcollie", - "ref": "main", - "repo": "zon2nix", - "type": "github" - } - } - }, - "root": "root", - "version": 7 -} diff --git a/flake.nix b/flake.nix deleted file mode 100644 index 6aeb50f..0000000 --- a/flake.nix +++ /dev/null @@ -1,142 +0,0 @@ -{ - description = "moons nix configurations and development shells"; - - inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11"; - nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; - nixos-hardware.url = "github:NixOS/nixos-hardware/master"; - nixos-wsl.url = "github:nix-community/NixOS-WSL"; - home-manager = { - url = "github:nix-community/home-manager/release-25.11"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - vicinae.url = "github:vicinaehq/vicinae"; - vicinae-extensions = { - url = "github:vicinaehq/extensions"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - ghostty.url = "github:ghostty-org/ghostty"; - niri-flake.url = "github:sodiboo/niri-flake"; - - quickshell = { - url = "github:outfoxxed/quickshell"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - noctalia = { - url = "github:noctalia-dev/noctalia-shell"; - inputs.nixpkgs.follows = "nixpkgs"; - inputs.quickshell.follows = "quickshell"; - }; - stylix = { - url = "github:nix-community/stylix"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - lanzaboote = { - url = "github:nix-community/lanzaboote"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - nixvim = { - url = "github:nix-community/nixvim/nixos-25.11"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - }; - - outputs = inputs @ { - self, - nixpkgs, - nixpkgs-unstable, - nixos-hardware, - home-manager, - ... - }: let - mkSystem = { - host, - system, - profile, - extraModules ? [], - }: - nixpkgs.lib.nixosSystem { - inherit system; - specialArgs = { - inherit inputs; - inherit host; - inherit profile; - }; - modules = - [ - ./overlays - ./modules/core - ./profiles/${profile}.nix - ./hosts/${host} - ] - ++ extraModules; - }; - in { - nixosConfigurations = { - x1g9 = mkSystem { - host = "x1g9"; - system = "x86_64-linux"; - profile = "laptop"; - extraModules = []; - }; - x1g13-wsl = mkSystem { - host = "x1g13-wsl"; - system = "x86_64-linux"; - profile = "cli"; - extraModules = []; - }; - x1g13 = mkSystem { - host = "x1g13"; - system = "x86_64-linux"; - profile = "laptop"; - extraModules = []; - }; - monitor = mkSystem { - host = "monitor"; - system = "x86_64-linux"; - profile = "cli-server"; - extraModules = []; - }; - dev-1 = mkSystem { - host = "dev-1"; - system = "x86_64-linux"; - profile = "cli-server"; - extraModules = []; - }; - service-1 = mkSystem { - host = "service-1"; - system = "x86_64-linux"; - profile = "cli-server"; - extraModules = []; - }; - ops = mkSystem { - host = "ops"; - system = "x86_64-linux"; - profile = "cli-server"; - extraModules = []; - }; - nix-test = mkSystem { - host = "nix-test"; - system = "x86_64-linux"; - profile = "cli-server"; - extraModules = []; - }; - }; - - devShells = { - x86_64-linux = let - pkgs = import nixpkgs { - system = "x86_64-linux"; - config.allowUnfreePredicate = pkg: builtins.elem (nixpkgs.lib.getName pkg) ["ngrok"]; - }; - in { - next-web = import ./shells/next-web.nix {inherit pkgs;}; - jupyter = import ./shells/jupyter.nix {inherit pkgs;}; - rust = import ./shells/rust/default.nix {inherit pkgs;}; - }; - }; - }; -} diff --git a/hosts/dev-1/default.nix b/hosts/dev-1/default.nix deleted file mode 100644 index 1ad056a..0000000 --- a/hosts/dev-1/default.nix +++ /dev/null @@ -1,12 +0,0 @@ -# Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page -# and in the NixOS manual (accessible by running ‘nixos-help’). - -{ ... }: - -{ - imports = - [ - ./hardware-configuration.nix - ]; -} diff --git a/hosts/dev-1/hardware-configuration.nix b/hosts/dev-1/hardware-configuration.nix deleted file mode 100644 index 44e95bd..0000000 --- a/hosts/dev-1/hardware-configuration.nix +++ /dev/null @@ -1,37 +0,0 @@ -# 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, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/profiles/qemu-guest.nix") - ]; - - boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/53d2fe07-d84b-4cda-9428-45a3361d6b11"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/72E9-E469"; - fsType = "vfat"; - options = [ "fmask=0022" "dmask=0022" ]; - }; - - 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..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.ens18.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; -} diff --git a/hosts/monitor/default.nix b/hosts/monitor/default.nix deleted file mode 100644 index 1ad056a..0000000 --- a/hosts/monitor/default.nix +++ /dev/null @@ -1,12 +0,0 @@ -# Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page -# and in the NixOS manual (accessible by running ‘nixos-help’). - -{ ... }: - -{ - imports = - [ - ./hardware-configuration.nix - ]; -} diff --git a/hosts/monitor/hardware-configuration.nix b/hosts/monitor/hardware-configuration.nix deleted file mode 100644 index 85b921e..0000000 --- a/hosts/monitor/hardware-configuration.nix +++ /dev/null @@ -1,37 +0,0 @@ -# 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, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/profiles/qemu-guest.nix") - ]; - - boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/770de3b2-eb30-4ccd-b7a6-13e7655b1d5c"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/1308-E5E7"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - 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..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.ens18.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; -} diff --git a/hosts/nix-test/default.nix b/hosts/nix-test/default.nix deleted file mode 100644 index 1ad056a..0000000 --- a/hosts/nix-test/default.nix +++ /dev/null @@ -1,12 +0,0 @@ -# Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page -# and in the NixOS manual (accessible by running ‘nixos-help’). - -{ ... }: - -{ - imports = - [ - ./hardware-configuration.nix - ]; -} diff --git a/hosts/nix-test/hardware-configuration.nix b/hosts/nix-test/hardware-configuration.nix deleted file mode 100644 index 2fc6e47..0000000 --- a/hosts/nix-test/hardware-configuration.nix +++ /dev/null @@ -1,30 +0,0 @@ -# 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, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/profiles/qemu-guest.nix") - ]; - - boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/8f0eaec6-5dc9-4821-aa8d-fb6809b5a5bf"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/201C-961B"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - swapDevices = [ ]; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; -} diff --git a/hosts/ops/default.nix b/hosts/ops/default.nix deleted file mode 100644 index 16e1728..0000000 --- a/hosts/ops/default.nix +++ /dev/null @@ -1,45 +0,0 @@ -# Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page -# and in the NixOS manual (accessible by running ‘nixos-help’). -{...}: { - imports = [ - ./hardware-configuration.nix - ]; - - services.qemuGuest.enable = true; - - networking = { - useDHCP = false; - - interfaces = { - ens18 = { - useDHCP = false; - ipv4.addresses = [ - { - address = "10.50.128.20"; - prefixLength = 24; - } - ]; - }; - - ens19 = { - useDHCP = false; - ipv4.addresses = [ - { - address = "10.50.7.101"; - prefixLength = 24; - } - ]; - }; - }; - - defaultGateway = { - address = "10.50.128.1"; - interface = "ens18"; - }; - - nameservers = [ - "1.1.1.1" - ]; - }; -} diff --git a/hosts/ops/hardware-configuration.nix b/hosts/ops/hardware-configuration.nix deleted file mode 100644 index d8c4f55..0000000 --- a/hosts/ops/hardware-configuration.nix +++ /dev/null @@ -1,30 +0,0 @@ -# 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, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/profiles/qemu-guest.nix") - ]; - - boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/69fa2193-1e4f-438a-8898-5de8a3f36e5b"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/D09B-4277"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - swapDevices = [ ]; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; -} diff --git a/hosts/service-1/default.nix b/hosts/service-1/default.nix deleted file mode 100644 index 2133000..0000000 --- a/hosts/service-1/default.nix +++ /dev/null @@ -1,43 +0,0 @@ -# Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page -# and in the NixOS manual (accessible by running ‘nixos-help’). - -{ ... }: - -{ - imports = [ - ./hardware-configuration.nix - ]; - - fileSystems."/mnt/immich-nfs" = { - device = "unas.moons14.com:/var/nfs/shared/immich"; - fsType = "nfs"; - options = [ - "nfsvers=3" - "hard" - "timeo=600" - "retrans=2" - "noatime" - "_netdev" - "nofail" - "x-systemd.requires=network-online.target" - "x-systemd.after=network-online.target" - ]; - }; - - fileSystems."/mnt/cloudreve-nfs" = { - device = "unas.moons14.com:/var/nfs/shared/cloudreve"; - fsType = "nfs"; - options = [ - "nfsvers=3" - "hard" - "timeo=600" - "retrans=2" - "noatime" - "_netdev" - "nofail" - "x-systemd.requires=network-online.target" - "x-systemd.after=network-online.target" - ]; - }; -} diff --git a/hosts/service-1/hardware-configuration.nix b/hosts/service-1/hardware-configuration.nix deleted file mode 100644 index 2fd7fcf..0000000 --- a/hosts/service-1/hardware-configuration.nix +++ /dev/null @@ -1,37 +0,0 @@ -# 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, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/profiles/qemu-guest.nix") - ]; - - boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/d9f05715-e68a-4d69-bf46-bd903b0782f0"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/1772-FC70"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - 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..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.ens18.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; -} diff --git a/hosts/x1g13-wsl/default.nix b/hosts/x1g13-wsl/default.nix deleted file mode 100644 index 04bfa4c..0000000 --- a/hosts/x1g13-wsl/default.nix +++ /dev/null @@ -1,18 +0,0 @@ -# Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page -# and in the NixOS manual (accessible by running ‘nixos-help’). - -{ lib, inputs, ... }: - -{ - imports = - [ - inputs.nixos-wsl.nixosModules.wsl - ]; - - wsl.enable = true; - wsl.defaultUser = "moons"; - - boot.loader.systemd-boot.enable = lib.mkForce false; - boot.loader.grub.enable = lib.mkForce false; -} diff --git a/hosts/x1g13/default.nix b/hosts/x1g13/default.nix deleted file mode 100644 index abb7787..0000000 --- a/hosts/x1g13/default.nix +++ /dev/null @@ -1,15 +0,0 @@ -# Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page -# and in the NixOS manual (accessible by running ‘nixos-help’). - -{ inputs, ... }: - -{ - imports = - [ - inputs.nixos-hardware.nixosModules.lenovo-thinkpad-x1-13th-gen - ./../../modules/drivers/intel-drivers.nix - ./../../modules/core/secure-boot.nix - ./hardware-configuration.nix - ]; -} diff --git a/hosts/x1g13/hardware-configuration.nix b/hosts/x1g13/hardware-configuration.nix deleted file mode 100644 index 44222de..0000000 --- a/hosts/x1g13/hardware-configuration.nix +++ /dev/null @@ -1,38 +0,0 @@ -# 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, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-intel" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/29b4b68d-c25e-48b1-beb3-30f63ac2f491"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/EA69-77EE"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - 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..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/hosts/x1g9/default.nix b/hosts/x1g9/default.nix deleted file mode 100644 index 73221ad..0000000 --- a/hosts/x1g9/default.nix +++ /dev/null @@ -1,14 +0,0 @@ -# Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page -# and in the NixOS manual (accessible by running ‘nixos-help’). - -{ inputs, ... }: - -{ - imports = - [ - inputs.nixos-hardware.nixosModules.lenovo-thinkpad-x1-9th-gen - ./../../modules/drivers/intel-drivers.nix - ./hardware-configuration.nix - ]; -} diff --git a/hosts/x1g9/hardware-configuration.nix b/hosts/x1g9/hardware-configuration.nix deleted file mode 100644 index 7aa4105..0000000 --- a/hosts/x1g9/hardware-configuration.nix +++ /dev/null @@ -1,38 +0,0 @@ -# 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, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/16b29578-6836-414b-a5e1-863bc21c5fc3"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/209A-C8C9"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - 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..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/images/avatar.jpg b/images/avatar.jpg deleted file mode 100644 index 98cde4e..0000000 Binary files a/images/avatar.jpg and /dev/null differ diff --git a/modules/core/boot.nix b/modules/core/boot.nix deleted file mode 100644 index c0d7041..0000000 --- a/modules/core/boot.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ pkgs, ... }: -{ - boot.loader = { - systemd-boot.enable = true; - systemd-boot.configurationLimit = 8; - efi.canTouchEfiVariables = true; - }; - - boot.supportedFilesystems = [ "nfs" ]; - boot.kernelPackages = pkgs.linuxPackages_latest; -} \ No newline at end of file diff --git a/modules/core/ca/root_ca.crt b/modules/core/ca/root_ca.crt deleted file mode 100644 index 1e60529..0000000 --- a/modules/core/ca/root_ca.crt +++ /dev/null @@ -1,12 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIBszCCAVqgAwIBAgIRAPCAxajuCEmnXKploQS+KAkwCgYIKoZIzj0EAwIwODEW -MBQGA1UEChMNTW9vbnMgSG9tZSBDQTEeMBwGA1UEAxMVTW9vbnMgSG9tZSBDQSBS -b290IENBMB4XDTI1MTIwNjE4MDgwN1oXDTM1MTIwNDE4MDgwN1owODEWMBQGA1UE -ChMNTW9vbnMgSG9tZSBDQTEeMBwGA1UEAxMVTW9vbnMgSG9tZSBDQSBSb290IENB -MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEDw2M0NQMju2zN5ZXwsYaTieWggId -XmRSXjOHW4/pBEI11xk1GkMFbeVmppr1cbcNmbB+fmxoFa+oKguhFDSsdaNFMEMw -DgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYEFGuC -UGL5CxdamFfBVC8xH306Wo6xMAoGCCqGSM49BAMCA0cAMEQCIBqWCNWBuwhWDYoi -fpqOqz2HSChOsKCIAgfTJlUUgSlSAiALekUJ+4M+L4/vP4GpkrSovuQ7JOMXV44+ -30Pcx4AoJg== ------END CERTIFICATE----- diff --git a/modules/core/cachix.nix b/modules/core/cachix.nix deleted file mode 100644 index a117257..0000000 --- a/modules/core/cachix.nix +++ /dev/null @@ -1,15 +0,0 @@ -{...}: { - nix.settings = { - extra-substituters = [ - "https://moons-dotfiles.cachix.org" - "https://noctalia.cachix.org" - "https://vicinae.cachix.org" - ]; - - extra-trusted-public-keys = [ - "moons-dotfiles.cachix.org-1:WHoroKiNScG2/dpxHHL1I0qVmvuQhJbEAP+DS2j9Rr0=" - "noctalia.cachix.org-1:pCOR47nnMEo5thcxNDtzWpOxNFQsBRglJzxWPp3dkU4=" - "vicinae.cachix.org-1:1kDrfienkGHPYbkpNj1mWTr7Fm1+zcenzgTizIcI3oc=" - ]; - }; -} diff --git a/modules/core/camera.nix b/modules/core/camera.nix deleted file mode 100644 index 9204cd6..0000000 --- a/modules/core/camera.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ pkgs, ... }: -{ - boot.kernelModules = [ "uvcvideo" ]; - - environment.systemPackages = with pkgs; [ - v4l-utils - (ffmpeg-full) - ]; - - services.pipewire = { - enable = true; - alsa.enable = true; - pulse.enable = true; - }; - security.rtkit.enable = true; - - xdg.portal = { - enable = true; - extraPortals = [ pkgs.xdg-desktop-portal-gtk ]; - }; -} \ No newline at end of file diff --git a/modules/core/default.nix b/modules/core/default.nix deleted file mode 100644 index 196cbe6..0000000 --- a/modules/core/default.nix +++ /dev/null @@ -1,18 +0,0 @@ -{...}: { - imports = [ - ./boot.nix - ./cachix.nix - ./environment.nix - ./fonts.nix - ./gc.nix - ./hardware.nix - ./i18n.nix - ./network.nix - ./packages.nix - ./services.nix - ./ssh.nix - ./system.nix - ./user.nix - ./xserver.nix - ]; -} diff --git a/modules/core/environment.nix b/modules/core/environment.nix deleted file mode 100644 index 14f0ee7..0000000 --- a/modules/core/environment.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ ... }: -{ - environment.sessionVariables = { - ELECTRON_OZONE_PLATFORM_HINT = "wayland"; - QT_QPA_PLATFORM = "wayland;xcb"; - NIXOS_OZONE_WL = "1"; - }; - environment.variables.EDITOR = "nvim"; -} \ No newline at end of file diff --git a/modules/core/fingerprint.nix b/modules/core/fingerprint.nix deleted file mode 100644 index 10f0ea6..0000000 --- a/modules/core/fingerprint.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ ... }: -{ - services.fprintd.enable = true; - - # Add fingerprint command - # fprintd-enroll - # List fingerprints - # fprintd-list $USER - # Test fingerprint authentication - # fprintd-verify - - security.pam.services = { - login.fprintAuth = true; - - # sudo - sudo.fprintAuth = true; - - # greetd (tuigreet / ReGreet) - greetd.fprintAuth = true; - }; -} \ No newline at end of file diff --git a/modules/core/fonts.nix b/modules/core/fonts.nix deleted file mode 100644 index 466ceb4..0000000 --- a/modules/core/fonts.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ pkgs, ... }: -{ - fonts = { - packages = with pkgs; [ - noto-fonts - noto-fonts-cjk-sans - noto-fonts-color-emoji - terminus_font - cantarell-fonts - font-awesome - nerd-fonts.blex-mono - ]; - - fontDir.enable = true; - fontconfig = { - defaultFonts = { - serif = [ - "Noto Serif CJK JP" - "Noto Color Emoji" - ]; - sansSerif =[ - "Noto Sans CJK JP" - "Noto Clor Emoji" - ]; - emoji = ["Noto Color Emoji"]; - }; - }; - }; -} diff --git a/modules/core/gc.nix b/modules/core/gc.nix deleted file mode 100644 index 76bbd7f..0000000 --- a/modules/core/gc.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ ... }: -{ - nix.gc = { - automatic = true; - dates = "daily"; - options = "--delete-older-than 7d"; - }; - - nix.settings.auto-optimise-store = true; - nix.optimise.automatic = true; -} \ No newline at end of file diff --git a/modules/core/greetd.nix b/modules/core/greetd.nix deleted file mode 100644 index 09ca405..0000000 --- a/modules/core/greetd.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ pkgs, username, ... }: { - services.greetd = { - enable = true; - settings = { - default_session = { - user = "greeter"; - command = "${pkgs.tuigreet}/bin/tuigreet --time --remember --cmd niri-session"; - }; - }; - }; -} diff --git a/modules/core/gui.nix b/modules/core/gui.nix deleted file mode 100644 index 4b0d337..0000000 --- a/modules/core/gui.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: -{ - environment.systemPackages = with pkgs; [ - slack - insomnia - obsidian - ]; -} \ No newline at end of file diff --git a/modules/core/hardware.nix b/modules/core/hardware.nix deleted file mode 100644 index b5a337c..0000000 --- a/modules/core/hardware.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ pkgs, ... }: -{ - hardware = { - sane = { - enable = true; - extraBackends = [ pkgs.sane-airscan ]; - disabledDefaultBackends = [ "escl" ]; - }; - graphics.enable = true; - enableRedistributableFirmware = true; - keyboard.qmk.enable = true; - bluetooth.enable = true; - bluetooth.powerOnBoot = true; - }; -} diff --git a/modules/core/hyprland.nix b/modules/core/hyprland.nix deleted file mode 100644 index f2681cc..0000000 --- a/modules/core/hyprland.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ ... }: -{ - programs = { - hyprland = { - enable = true; - withUWSM = false; - }; - hyprlock.enable = true; - }; -} \ No newline at end of file diff --git a/modules/core/i18n.nix b/modules/core/i18n.nix deleted file mode 100644 index 7d3a526..0000000 --- a/modules/core/i18n.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ pkgs, ... }: -{ - i18n.inputMethod = { - enable = true; - type = "fcitx5"; - fcitx5 = { - addons = with pkgs; [ - fcitx5-mozc - fcitx5-gtk - qt6Packages.fcitx5-configtool - ]; - settings.inputMethod = { - GroupOrder = { - "0" = "Default"; - }; - "Groups/0" = { - Name = "Default"; - "Default Layout" = "keyboard-jp"; - DefaultIM = "mozc"; - }; - "Groups/0/Items/0" = { - Name = "keyboard-jp"; - Layout = ""; - }; - "Groups/0/Items/1" = { - Name = "mozc"; - Layout = ""; - }; - }; - }; - }; -} \ No newline at end of file diff --git a/modules/core/kde.nix b/modules/core/kde.nix deleted file mode 100644 index dd5f20c..0000000 --- a/modules/core/kde.nix +++ /dev/null @@ -1,6 +0,0 @@ -{...}: { - programs.kdeconnect = { - enable = true; - }; -} - diff --git a/modules/core/network.nix b/modules/core/network.nix deleted file mode 100644 index 41400ee..0000000 --- a/modules/core/network.nix +++ /dev/null @@ -1,39 +0,0 @@ -{ - host, - pkgs, - ... -}: { - networking = { - hostName = "${host}"; - nameservers = [ - "1.1.1.1" - "1.0.0.1" - ]; - - networkmanager = { - enable = true; - dns = "none"; - wifi.powersave = false; - wifi.backend = "wpa_supplicant"; - settings = { - "device"."wifi.scan-rand-mac-address" = "no"; - "connection"."wifi.cloned-mac-address" = "permanent"; - }; - }; - - wireless.iwd.enable = false; - }; - - boot.extraModprobeConfig = '' - options cfg80211 ieee80211_regdom=JP - options iwlwifi power_save=0 - options iwlwifi uapsd_disable=1 - ''; - - services.resolved.enable = false; - - environment.systemPackages = [pkgs.networkmanagerapplet]; - programs.nm-applet.enable = true; - - security.pki.certificateFiles = [./ca/root_ca.crt]; -} diff --git a/modules/core/niri.nix b/modules/core/niri.nix deleted file mode 100644 index 6e16b96..0000000 --- a/modules/core/niri.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ pkgs, ... }: -{ - programs.niri = { - enable = true; - }; -} \ No newline at end of file diff --git a/modules/core/noctalia.nix b/modules/core/noctalia.nix deleted file mode 100644 index 48eb326..0000000 --- a/modules/core/noctalia.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ pkgs, inputs, ... }: -{ - environment.systemPackages = with pkgs; [ - inputs.noctalia.packages.${system}.default - ]; -} \ No newline at end of file diff --git a/modules/core/packages.nix b/modules/core/packages.nix deleted file mode 100644 index 9210bee..0000000 --- a/modules/core/packages.nix +++ /dev/null @@ -1,68 +0,0 @@ -{ - pkgs, - inputs, - ... -}: let - unstable = import inputs.nixpkgs-unstable { - system = pkgs.system; - config = { - allowUnfree = true; - }; - }; -in { - programs = { - xwayland.enable = true; - dconf.enable = true; - seahorse.enable = true; - fuse.userAllowOther = true; - adb.enable = true; - gnupg.agent = { - enable = true; - enableSSHSupport = false; - }; - zsh = { - enable = true; - }; - java.enable = true; - java.package = pkgs.jdk25; - }; - - nixpkgs.config.allowUnfree = true; - - environment.systemPackages = with pkgs; [ - tuigreet # The Login Manager (Sometimes Referred To As Display Manager) - htop - btop # Simple Terminal Based System Monitor - unrar # Tool For Handling .rar Files - unzip # Tool For Handling .zip Files - uwsm # Universal Wayland Session Manager (optional must be enabled) - wget # Tool For Fetching Files With Links - curl # Tool For Fetching Files With Links - alacritty # A GPU Accelerated Terminal Emulator - fuzzel # A Simple And Lightweight Application Launcher - git # Version Control System - tailscale # Zero-Config VPN - unstable.msedit # Microsoft Editor - nil # Nix Language Server - docker # Containerization Platform - unstable._1password-cli - unstable._1password-gui - unstable.ghostty - tio - sbctl - xwayland-satellite - slurp - grim - wf-recorder - sqlite # Vscode Raycast Extension Dependency - oxker # Docker TUI Tool - jdk25 - maven - gradle - python312 - uv - bun - unstable.claude-code - unstable.codex - ]; -} diff --git a/modules/core/power.nix b/modules/core/power.nix deleted file mode 100644 index df3b17c..0000000 --- a/modules/core/power.nix +++ /dev/null @@ -1,14 +0,0 @@ -{...}: { - boot.kernelParams = [ - "mem_sleep_default=deep" - ]; - - powerManagement = { - enable = true; - powertop.enable = true; - }; - - services.power-profiles-daemon.enable = true; - services.tlp.enable = false; - services.upower.enable = true; -} diff --git a/modules/core/secure-boot.nix b/modules/core/secure-boot.nix deleted file mode 100644 index fa89542..0000000 --- a/modules/core/secure-boot.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ inputs, pkgs, lib, ... }: -{ - imports = [ - inputs.lanzaboote.nixosModules.lanzaboote - ]; - - boot.loader = { - systemd-boot.enable = lib.mkForce false; - efi.canTouchEfiVariables = true; - efi.efiSysMountPoint = "/boot"; - }; - - boot.lanzaboote = { - enable = true; - pkiBundle = "/var/lib/sbctl"; - }; -} \ No newline at end of file diff --git a/modules/core/services.nix b/modules/core/services.nix deleted file mode 100644 index fa72590..0000000 --- a/modules/core/services.nix +++ /dev/null @@ -1,76 +0,0 @@ -{pkgs, ...}: { - services = { - blueman.enable = true; # Bluetooth Support - tumbler.enable = true; # Image/video preview - - fwupd.enable = true; - - gnome.gnome-keyring.enable = true; - - upower.enable = true; - - tailscale = { - enable = true; - extraUpFlags = [ - "--accept-dns=false" - "--accept-routes" - ]; - }; - - pipewire = { - enable = true; - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - jack.enable = true; - wireplumber.enable = true; - }; - - logind = { - settings.Login = { - HandleLidSwitch = "suspend"; - HandleLidSwitchDocked = "ignore"; - HandleLidSwitchExternalPower = "suspend"; - LidSwitchIgnoreInhibited = "no"; - }; - }; - - rpcbind.enable = true; - }; - - virtualisation.docker = { - enable = true; - autoPrune = { - enable = true; - dates = "weekly"; - }; - daemon.settings = { - ipv6 = true; - "fixed-cidr-v6" = "fd00:30::/64"; - ip6tables = true; - }; - }; - - programs.nix-ld.enable = true; - security.rtkit.enable = true; - - xdg.portal = { - enable = true; - wlr.enable = true; - extraPortals = [ - pkgs.xdg-desktop-portal-wlr - pkgs.xdg-desktop-portal-gtk - ]; - xdgOpenUsePortal = true; - config = { - common.default = [ - "wlr" - "gtk" - ]; - niri.default = [ - "wlr" - "gtk" - ]; - }; - }; -} diff --git a/modules/core/ssh.nix b/modules/core/ssh.nix deleted file mode 100644 index 64851f7..0000000 --- a/modules/core/ssh.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ pkgs, ... }: -{ - - services.openssh = { - enable = true; - openFirewall = true; - - settings = { - PermitRootLogin = "no"; - PasswordAuthentication = false; - KbdInteractiveAuthentication = false; - PubkeyAuthentication = "yes"; - }; - }; - - users.users.moons = { - - openssh.authorizedKeys.keys = [ - "sk-ssh-ed25519@openssh.com AAAAGnNrLXNzaC1lZDI1NTE5QG9wZW5zc2guY29tAAAAIKhxDkucmeCor6CKoXAua7DgDSzuXrZOtpdkyzQxz5+aAAAABHNzaDo= moons@moons14.com" - "sk-ssh-ed25519@openssh.com AAAAGnNrLXNzaC1lZDI1NTE5QG9wZW5zc2guY29tAAAAIN6hZJyng/5LgFKPjR6uZAd/00UkO0vN0uQOoIvfSELdAAAABHNzaDo= moons@moons14.com" - ]; - }; - -} diff --git a/modules/core/system.nix b/modules/core/system.nix deleted file mode 100644 index bcb41e5..0000000 --- a/modules/core/system.nix +++ /dev/null @@ -1,30 +0,0 @@ -{...}: { - nix = { - settings = { - experimental-features = ["nix-command" "flakes"]; - }; - }; - - # Localization settings - time.timeZone = "Asia/Tokyo"; - i18n.defaultLocale = "ja_JP.UTF-8"; - i18n.extraLocaleSettings = { - LC_ADDRESS = "ja_JP.UTF-8"; - LC_IDENTIFICATION = "ja_JP.UTF-8"; - LC_MEASUREMENT = "ja_JP.UTF-8"; - LC_MONETARY = "ja_JP.UTF-8"; - LC_NAME = "ja_JP.UTF-8"; - LC_NUMERIC = "ja_JP.UTF-8"; - LC_PAPER = "ja_JP.UTF-8"; - LC_TELEPHONE = "ja_JP.UTF-8"; - LC_TIME = "ja_JP.UTF-8"; - }; - - environment.variables = { - NIXOS_OZONE_WL = "1"; - }; - - console.keyMap = "jp106"; - system.stateVersion = "25.11"; -} - diff --git a/modules/core/user.nix b/modules/core/user.nix deleted file mode 100644 index e052c8d..0000000 --- a/modules/core/user.nix +++ /dev/null @@ -1,38 +0,0 @@ -{ pkgs, inputs, username, host, profile, ...}: -{ - imports = [ inputs.home-manager.nixosModules.home-manager ]; - home-manager = { - useUserPackages = true; - useGlobalPkgs = false; - backupFileExtension = "backup"; - extraSpecialArgs = { inherit inputs username host profile; }; - users.moons = { - imports = [ ./../home ]; - home = { - username = "moons"; - homeDirectory = "/home/moons"; - stateVersion = "25.11"; - }; - }; - }; - users.mutableUsers = true; - users.users.moons = { - isNormalUser = true; - description = "moons-14"; - extraGroups = [ - "adbusers" - "docker" #access to docker as non-root - "libvirtd" #Virt manager/QEMU access - "lp" - "networkmanager" - "scanner" - "wheel" #subdo access - "vboxusers" #Virtual Box - "dialout" #Serial Port Access - ]; - shell = pkgs.zsh; - ignoreShellProgramCheck = true; - }; - nix.settings.allowed-users = [ "moons" ]; - nix.settings.trusted-users = [ "root" "moons" ]; -} diff --git a/modules/core/xserver.nix b/modules/core/xserver.nix deleted file mode 100644 index c21bdbc..0000000 --- a/modules/core/xserver.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ ... }: -{ - services = { - xserver = { - enable = true; - xkb = { - layout = "jp"; - variant = ""; - options = "ctrl:nocaps"; - }; - }; - }; -} \ No newline at end of file diff --git a/modules/drivers/intel-drivers.nix b/modules/drivers/intel-drivers.nix deleted file mode 100644 index bb8cc83..0000000 --- a/modules/drivers/intel-drivers.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ lib, pkgs, config, ... }: -with lib; let - cfg = config.drivers.intel; -in -{ - options.drivers.intel = { - enable = mkEnableOption "Enable Intel Graphics Drivers"; - }; - - config = mkIf cfg.enable { - # OpenGL - hardware.graphics = { - extraPackages = with pkgs; [ - intel-media-driver - vaapiIntel - vaapiVdpau - libvdpau-va-gl - ]; - }; - }; -} diff --git a/modules/home/avatar.nix b/modules/home/avatar.nix deleted file mode 100644 index f57ef45..0000000 --- a/modules/home/avatar.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ ... }: -{ - home.file.".face" = { - recursive = true; - source = ./../../images/avatar.jpg; - }; -} \ No newline at end of file diff --git a/modules/home/browser.nix b/modules/home/browser.nix deleted file mode 100644 index ed5cfe6..0000000 --- a/modules/home/browser.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ pkgs, ... }: - -{ - nixpkgs.config.allowUnfree = true; - - home.packages = with pkgs; [ - google-chrome - ]; - - xdg.desktopEntries."google-chrome" = { - name = "Google Chrome"; - genericName = "Web Browser"; - exec = "${pkgs.google-chrome}/bin/google-chrome-stable --enable-features=TouchpadOverscrollHistoryNavigation %U"; - terminal = false; - icon = "google-chrome"; - categories = [ "Network" "WebBrowser" ]; - startupNotify = true; - type = "Application"; - }; - - xdg.mimeApps.defaultApplications = { - "text/html" = "google-chrome.desktop"; - "x-scheme-handler/http" = "google-chrome.desktop"; - "x-scheme-handler/https" = "google-chrome.desktop"; - }; -} diff --git a/modules/home/btop/default.nix b/modules/home/btop/default.nix deleted file mode 100644 index 106d982..0000000 --- a/modules/home/btop/default.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ ... }: -{ - programs = { - btop = { - enable = true; - settings.color_theme = "dracula"; - themes = { - dracula = builtins.readFile ./dracula.theme; - }; - }; - }; -} \ No newline at end of file diff --git a/modules/home/btop/dracula.theme b/modules/home/btop/dracula.theme deleted file mode 100644 index a0355f3..0000000 --- a/modules/home/btop/dracula.theme +++ /dev/null @@ -1,89 +0,0 @@ -#Bashtop theme with nord palette (https://www.nordtheme.com) -#by Justin Zobel - -# Colors should be in 6 or 2 character hexadecimal or single spaced rgb decimal: "#RRGGBB", "#BW" or "0-255 0-255 0-255" -# example for white: "#ffffff", "#ff" or "255 255 255". - -# All graphs and meters can be gradients -# For single color graphs leave "mid" and "end" variable empty. -# Use "start" and "end" variables for two color gradient -# Use "start", "mid" and "end" for three color gradient - -# Main background, empty for terminal default, need to be empty if you want transparent background -theme[main_bg]="#282A36" - -# Main text color -theme[main_fg]="#BD93F9" - -# Title color for boxes -theme[title]="#f8f8f2" - -# Higlight color for keyboard shortcuts -theme[hi_fg]="#ff79c6" - -# Background color of selected item in processes box -theme[selected_bg]="#44475A" - -# Foreground color of selected item in processes box -theme[selected_fg]="#ECEFF4" - -# Color of inactive/disabled text -theme[inactive_fg]="#6272a4" - -# Misc colors for processes box including mini cpu graphs, details memory graph and details status text -theme[proc_misc]="#BD93F9" - -# Cpu box outline color -theme[cpu_box]="#ff79c6" - -# Memory/disks box outline color -theme[mem_box]="#ff79c6" - -# Net up/down box outline color -theme[net_box]="#ff79c6" - -# Processes box outline color -theme[proc_box]="#ff79c6" - -# Box divider line and small boxes line color -theme[div_line]="#ff79c6" - -# Temperature graph colors -theme[temp_start]="#bd93f9" -theme[temp_mid]="#bd93f9" -theme[temp_end]="#bd93f9" - -# CPU graph colors -theme[cpu_start]="#bd93f9" -theme[cpu_mid]="#bd93f9" -theme[cpu_end]="#bd93f9" - -# Mem/Disk free meter -theme[free_start]="#bd93f9" -theme[free_mid]="#bd93f9" -theme[free_end]="#bd93f9" - -# Mem/Disk cached meter -theme[cached_start]="#bd93f9" -theme[cached_mid]="#bd93f9" -theme[cached_end]="#bd93f9" - -# Mem/Disk available meter -theme[available_start]="#bd93f9" -theme[available_mid]="#bd93f9" -theme[available_end]="#bd93f9" - -# Mem/Disk used meter -theme[used_start]="#bd93f9" -theme[used_mid]="#bd93f9" -theme[used_end]="#bd93f9" - -# Download graph colors -theme[download_start]="#bd93f9" -theme[download_mid]="#bd93f9" -theme[download_end]="#bd93f9" - -# Upload graph colors -theme[upload_start]="#bd93f9" -theme[upload_mid]="#bd93f9" -theme[upload_end]="#bd93f9" diff --git a/modules/home/claude.nix b/modules/home/claude.nix deleted file mode 100644 index f0c9735..0000000 --- a/modules/home/claude.nix +++ /dev/null @@ -1,9 +0,0 @@ -{...}: { - home.file.".claude/settings.json".text = builtins.toJSON { - statusLine = { - type = "command"; - command = "bun x ccusage statusline --no-offline"; - padding = 0; - }; - }; -} diff --git a/modules/home/default.nix b/modules/home/default.nix deleted file mode 100644 index 3f5c4a9..0000000 --- a/modules/home/default.nix +++ /dev/null @@ -1,13 +0,0 @@ -{...}: { - imports = [ - ./btop - ./git.nix - ./fcitx5 - ./ssh.nix - ./nixvim - ./zsh.nix - ./environment.nix - ./zellij.nix - ./claude.nix - ]; -} diff --git a/modules/home/discord.nix b/modules/home/discord.nix deleted file mode 100644 index 2220975..0000000 --- a/modules/home/discord.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ ... }: -{ - programs.vesktop = { - enable = true; - }; -} \ No newline at end of file diff --git a/modules/home/environment.nix b/modules/home/environment.nix deleted file mode 100644 index 7ce78b9..0000000 --- a/modules/home/environment.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ - # use project directory: `echo 'use flake ~/dotfiles#next-web' > .envrc` - programs.direnv = { - enable = true; - nix-direnv.enable = true; - }; -} diff --git a/modules/home/fcitx5/config b/modules/home/fcitx5/config deleted file mode 100644 index 1e330aa..0000000 --- a/modules/home/fcitx5/config +++ /dev/null @@ -1,70 +0,0 @@ -[Hotkey] -# トリガーキーを押すたびに切り替える -EnumerateWithTriggerKeys=False -# 一時的に第1入力メソッドに切り替える -AltTriggerKeys= -# 切り替え時は第1入力メソッドをスキップする -EnumerateSkipFirst=False -# Time limit in milliseconds for triggering modifier key shortcuts -ModifierOnlyKeyTimeout=250 - -[Hotkey/TriggerKeys] -1=Zenkaku_Hankaku - -[Hotkey/ActivateKeys] -0=Henkan - -[Hotkey/DeactivateKeys] -0=Muhenkan - -[Hotkey/PrevPage] -0=Up - -[Hotkey/NextPage] -0=Down - -[Hotkey/PrevCandidate] -0=Shift+Tab - -[Hotkey/NextCandidate] -0=Tab - -[Hotkey/TogglePreedit] -0=Control+Alt+P - -[Behavior] -# デフォルトで有効にする -ActiveByDefault=False -# フォーカス時に状態をリセット -resetStateWhenFocusIn=No -# 入力状態を共有する -ShareInputState=No -# アプリケーションにプリエディットを表示する -PreeditEnabledByDefault=True -# 入力メソッドを切り替える際に入力メソッドの情報を表示する -ShowInputMethodInformation=True -# フォーカスを変更する際に入力メソッドの情報を表示する -showInputMethodInformationWhenFocusIn=False -# 入力メソッドの情報をコンパクトに表示する -CompactInputMethodInformation=True -# 第1入力メソッドの情報を表示する -ShowFirstInputMethodInformation=True -# デフォルトのページサイズ -DefaultPageSize=5 -# XKB オプションより優先する -OverrideXkbOption=False -# カスタム XKB オプション -CustomXkbOption= -# Force Enabled Addons -EnabledAddons= -# Force Disabled Addons -DisabledAddons= -# Preload input method to be used by default -PreloadInputMethod=True -# パスワード欄に入力メソッドを許可する -AllowInputMethodForPassword=False -# パスワード入力時にプリエディットテキストを表示する -ShowPreeditForPassword=False -# ユーザーデータを保存する間隔(分) -AutoSavePeriod=30 - diff --git a/modules/home/fcitx5/default.nix b/modules/home/fcitx5/default.nix deleted file mode 100644 index c7cf1e1..0000000 --- a/modules/home/fcitx5/default.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ ... }: -{ - home.file.".config/fcitx5/config" = { - recursive = true; - source = ./config; - }; -} \ No newline at end of file diff --git a/modules/home/ghostty/config b/modules/home/ghostty/config deleted file mode 100644 index 2410ddb..0000000 --- a/modules/home/ghostty/config +++ /dev/null @@ -1,30 +0,0 @@ -theme = dracula -background-blur-radius = 20 -background-opacity = 0.9 -font-family = BlexMono Nerd Font Mono -mouse-hide-while-typing = true -window-decoration = true - - -# keybind - -# Copy/Paste -keybind = ctrl+shift+c=copy_to_clipboard -keybind = ctrl+shift+v=paste_from_clipboard - -# create new tab -keybind = ctrl+shift+t=new_tab - -# move tabs -keybind = ctrl+alt+left_bracket=previous_tab -keybind = ctrl+alt+right_bracket=next_tab - -# close tab -keybind = ctrl+alt+q=close_window - -# font size -keybind = ctrl+shift+semicolon=increase_font_size:1 -keybind = ctrl+shift+minus=increase_font_size:1 - - -shell-integration-features = ssh-terminfo,ssh-env diff --git a/modules/home/ghostty/default.nix b/modules/home/ghostty/default.nix deleted file mode 100644 index cc6c658..0000000 --- a/modules/home/ghostty/default.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ ... }: -{ - - home.file.".config/ghostty/config" = { - recursive = true; - source = ./config; - }; - - home.file.".config/ghostty/themes/dracula" = { - recursive = true; - source = ./dracula.theme; - }; -} \ No newline at end of file diff --git a/modules/home/ghostty/dracula.theme b/modules/home/ghostty/dracula.theme deleted file mode 100644 index 172180b..0000000 --- a/modules/home/ghostty/dracula.theme +++ /dev/null @@ -1,44 +0,0 @@ -# MIT License -# -# Copyright (c) 2023 Dracula Theme -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in all -# copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -# SOFTWARE. - -palette = 0=#21222c -palette = 1=#ff5555 -palette = 2=#50fa7b -palette = 3=#f1fa8c -palette = 4=#bd93f9 -palette = 5=#ff79c6 -palette = 6=#8be9fd -palette = 7=#f8f8f2 -palette = 8=#6272a4 -palette = 9=#ff6e6e -palette = 10=#69ff94 -palette = 11=#ffffa5 -palette = 12=#d6acff -palette = 13=#ff92df -palette = 14=#a4ffff -palette = 15=#ffffff -background = #282a36 -foreground = #f8f8f2 -cursor-color = #f8f8f2 -cursor-text = #282a36 -selection-foreground = #f8f8f2 -selection-background = #44475a \ No newline at end of file diff --git a/modules/home/git.nix b/modules/home/git.nix deleted file mode 100644 index 1f6d84f..0000000 --- a/modules/home/git.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ host, ... }: -{ - programs.git = { - enable = true; - ignores = [ - ".direnv/" - ".envrc" - "!.envrc.example" - ]; - - settings = { - user.name = "moons-14"; - user.email = "moons@moons14.com"; - push.default = "simple"; - credential.helper = "cache --timeout=7200"; - init.defaultBranch = "main"; - log.decorate = "full"; - log.date = "iso"; - merge.conflictStyle = "diff3"; - alias = { - br = "branch --sort=-committerdate"; - co = "checkout"; - df = "diff"; - com = "commit -a"; - gs = "stash"; - gp = "pull"; - lg = "log --graph --pretty=format:'%Cred%h%Creset - %C(yellow)%d%Creset %s %C(green)(%cr)%C(bold blue) <%an>%Creset' --abbrev-commit"; - st = "status"; - }; - }; - }; -} diff --git a/modules/home/gtk.nix b/modules/home/gtk.nix deleted file mode 100644 index 235ef58..0000000 --- a/modules/home/gtk.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ pkgs, ... }: -{ - gtk = { - enable = true; - theme = { - name = "Dracula"; - package = pkgs.dracula-theme; - }; - cursorTheme = { - package = pkgs.adwaita-icon-theme; - name = "Adwaita"; - }; - iconTheme = { - package = pkgs.papirus-icon-theme; - name = "Papirus-Dark"; - }; - }; -} \ No newline at end of file diff --git a/modules/home/lock.nix b/modules/home/lock.nix deleted file mode 100644 index 4322151..0000000 --- a/modules/home/lock.nix +++ /dev/null @@ -1,34 +0,0 @@ -{ pkgs, lib, inputs, ... }: - -let - noctaliaPkg = inputs.noctalia.packages.${pkgs.system}.default; - noctaliaExe = lib.getExe noctaliaPkg; - - lockCmd = "${pkgs.bash}/bin/bash -lc '${noctaliaExe} ipc call lockScreen lock'"; - lockAndSuspendCmd = "${pkgs.bash}/bin/bash -lc '${noctaliaExe} ipc call sessionMenu lockAndSuspend'"; - - dpmsOff = "${pkgs.niri}/bin/niri msg action power-off-monitors"; - dpmsOn = "${pkgs.niri}/bin/niri msg action power-on-monitors"; -in -{ - services.swayidle = { - enable = true; - systemdTarget = "graphical-session.target"; - - timeouts = [ - { timeout = 300; command = lockAndSuspendCmd; } - ]; - - events = [ - { event = "lock"; command = lockCmd; } - { event = "before-sleep"; command = lockCmd; } - { event = "after-resume"; command = dpmsOn; } - ]; - }; - - systemd.user.services.swayidle = { - Service = { - PassEnvironment = [ "WAYLAND_DISPLAY" "XDG_RUNTIME_DIR" "DBUS_SESSION_BUS_ADDRESS" ]; - }; - }; -} diff --git a/modules/home/nautilus.nix b/modules/home/nautilus.nix deleted file mode 100644 index d3c5d01..0000000 --- a/modules/home/nautilus.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ pkgs, ... }: -{ - home.packages = with pkgs; [ - nautilus - gvfs sushi - ]; - - -} diff --git a/modules/home/niri/default.nix b/modules/home/niri/default.nix deleted file mode 100644 index 1dbc2bd..0000000 --- a/modules/home/niri/default.nix +++ /dev/null @@ -1,147 +0,0 @@ -{ - inputs, - pkgs, - ... -}: let - defaultKeyBind = import ./defaultKeyBind.nix; -in { - imports = [inputs.niri-flake.homeModules.niri]; - programs.niri.package = pkgs.niri; - - programs.niri.settings = { - input.touchpad = { - natural-scroll = true; - scroll-factor = 4.0; - scroll-method = "two-finger"; - click-method = "clickfinger"; - drag = true; - drag-lock = true; - }; - - spawn-at-startup = [ - {command = ["noctalia-shell"];} - ]; - - outputs."eDP-1".scale = 1; - cursor.size = 16; - - # Doracura color - layout = { - focus-ring = { - active.color = "#bd93f9"; - inactive.color = "#6272a4"; - }; - border = { - active.color = "#ffc87f"; - inactive.color = "#505050"; - urgent.color = "#9b0000"; - }; - shadow = { - color = "#0007"; - }; - }; - - binds = - defaultKeyBind - // { - "Mod+T" = { - action.spawn = "ghostty"; - hotkey-overlay.title = "Open a Terminal: ghostty"; - }; - "Mod+D" = { - action.spawn = [ - "vicinae" - "toggle" - ]; - hotkey-overlay.title = "Run an Application: vicinae"; - }; - "Mod+Space" = { - action.spawn = [ - "vicinae" - "toggle" - ]; - hotkey-overlay.title = "Run an Application: vicinae"; - }; - "Mod+E" = { - action.spawn = [ - "nautilus" - "--new-window" - ]; - hotkey-overlay.title = "Open File Manager: nautilus"; - }; - "Mod+L" = { - action.spawn = [ - "noctalia-shell" - "ipc" - "call" - "sessionMenu" - "lockAndSuspend" - ]; - hotkey-overlay.title = "Lock the Screen: noctalia"; - }; - "Mod+V" = { - action.spawn = [ - "vicinae" - "vicinae://extensions/vicinae/clipboard/history" - ]; - hotkey-overlay.title = "Clipboard History"; - }; - - "XF86AudioRaiseVolume" = { - action.spawn = [ - "noctalia-shell" - "ipc" - "call" - "volume" - "increase" - ]; - }; - "XF86AudioLowerVolume" = { - action.spawn = [ - "noctalia-shell" - "ipc" - "call" - "volume" - "decrease" - ]; - }; - "XF86AudioMute" = { - action.spawn = [ - "noctalia-shell" - "ipc" - "call" - "volume" - "muteOutput" - ]; - }; - "XF86AudioMicMute" = { - action.spawn = [ - "noctalia-shell" - "ipc" - "call" - "volume" - "muteInput" - ]; - }; - - "XF86MonBrightnessUp" = { - action.spawn = [ - "noctalia-shell" - "ipc" - "call" - "brightness" - "increase" - ]; - }; - "XF86MonBrightnessDown" = { - action.spawn = [ - "noctalia-shell" - "ipc" - "call" - "brightness" - "decrease" - ]; - }; - }; - }; -} diff --git a/modules/home/niri/defaultKeyBind.nix b/modules/home/niri/defaultKeyBind.nix deleted file mode 100644 index db095f2..0000000 --- a/modules/home/niri/defaultKeyBind.nix +++ /dev/null @@ -1,240 +0,0 @@ -{ - # https://github.com/sodiboo/niri-flake/issues/483 - - # Keys consist of modifiers separated by + signs, followed by an XKB key name - # in the end. To find an XKB name for a particular key, you may use a program - # like wev. - # - # "Mod" is a special modifier equal to Super when running on a TTY, and to Alt - # when running as a winit window. - # - # Most actions that you can bind here can also be invoked programmatically with - # `niri msg action do-something`. - - # Mod-Shift-/, which is usually the same as Mod-?, - # shows a list of important hotkeys. - "Mod+Shift+Slash".action.show-hotkey-overlay = {}; - - # You can also use a shell. Do this if you need pipes, multiple commands, etc. - # Note: the entire command goes as a single argument in the end. - # Mod+T { spawn "bash" "-c" "notify-send hello && exec alacritty"; } - - # Example volume keys mappings for PipeWire & WirePlumber. - # The allow-when-locked=true property makes them work even when the session is locked. - "XF86AudioRaiseVolume" = { - allow-when-locked = true; - action.spawn = [ "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1+" ]; - }; - "XF86AudioLowerVolume" = { - allow-when-locked = true; - action.spawn = ["wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1-"]; - }; - "XF86AudioMute" = { - allow-when-locked = true; - action.spawn = [ "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle" ]; - }; - "XF86AudioMicMute" = { - allow-when-locked = true; - action.spawn = [ "wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle" ]; - }; - - "Mod+Q".action.close-window = {}; - - "Mod+Left".action.focus-column-left = {}; - "Mod+Down".action.focus-window-down = {}; - "Mod+Up".action.focus-window-up = {}; - "Mod+Right".action.focus-column-right = {}; - "Mod+H".action.focus-column-left = {}; - "Mod+J".action.focus-window-down = {}; - "Mod+K".action.focus-window-up = {}; - "Mod+L".action.focus-column-right = {}; - - "Mod+Ctrl+Left".action.move-column-left = {}; - "Mod+Ctrl+Down".action.move-window-down = {}; - "Mod+Ctrl+Up".action.move-window-up = {}; - "Mod+Ctrl+Right".action.move-column-right = {}; - "Mod+Ctrl+H".action.move-column-left = {}; - "Mod+Ctrl+J".action.move-window-down = {}; - "Mod+Ctrl+K".action.move-window-up = {}; - "Mod+Ctrl+L".action.move-column-right = {}; - - # Alternative commands that move across workspaces when reaching - # the first or last window in a column. - # Mod+J { focus-window-or-workspace-down; } - # Mod+K { focus-window-or-workspace-up; } - # Mod+Ctrl+J { move-window-down-or-to-workspace-down; } - # Mod+Ctrl+K { move-window-up-or-to-workspace-up; } - - "Mod+Home".action.focus-column-first = {}; - "Mod+End".action.focus-column-last = {}; - "Mod+Ctrl+Home".action.move-column-to-first = {}; - "Mod+Ctrl+End".action.move-column-to-last = {}; - - "Mod+Shift+Left".action.focus-monitor-left = {}; - "Mod+Shift+Down".action.focus-monitor-down = {}; - "Mod+Shift+Up".action.focus-monitor-up = {}; - "Mod+Shift+Right".action.focus-monitor-right = {}; - "Mod+Shift+H".action.focus-monitor-left = {}; - "Mod+Shift+J".action.focus-monitor-down = {}; - "Mod+Shift+K".action.focus-monitor-up = {}; - "Mod+Shift+L".action.focus-monitor-right = {}; - - "Mod+Shift+Ctrl+Left".action.move-column-to-monitor-left = {}; - "Mod+Shift+Ctrl+Down".action.move-column-to-monitor-down = {}; - "Mod+Shift+Ctrl+Up".action.move-column-to-monitor-up = {}; - "Mod+Shift+Ctrl+Right".action.move-column-to-monitor-right = {}; - "Mod+Shift+Ctrl+H".action.move-column-to-monitor-left = {}; - "Mod+Shift+Ctrl+J".action.move-column-to-monitor-down = {}; - "Mod+Shift+Ctrl+K".action.move-column-to-monitor-up = {}; - "Mod+Shift+Ctrl+L".action.move-column-to-monitor-right = {}; - - # Alternatively, there are commands to move just a single window: - # Mod+Shift+Ctrl+Left { move-window-to-monitor-left; } - # ... - - # And you can also move a whole workspace to another monitor: - # Mod+Shift+Ctrl+Left { move-workspace-to-monitor-left; } - # ... - - "Mod+Page_Down".action.focus-workspace-down = {}; - "Mod+Page_Up".action.focus-workspace-up = {}; - "Mod+U".action.focus-workspace-down = {}; - "Mod+I".action.focus-workspace-up = {}; - "Mod+Ctrl+Page_Down".action.move-column-to-workspace-down = {}; - "Mod+Ctrl+Page_Up".action.move-column-to-workspace-up = {}; - "Mod+Ctrl+U".action.move-column-to-workspace-down = {}; - "Mod+Ctrl+I".action.move-column-to-workspace-up = {}; - - # Alternatively, there are commands to move just a single window: - # Mod+Ctrl+Page_Down { move-window-to-workspace-down; } - # ... - - "Mod+Shift+Page_Down".action.move-workspace-down = {}; - "Mod+Shift+Page_Up".action.move-workspace-up = {}; - "Mod+Shift+U".action.move-workspace-down = {}; - "Mod+Shift+I".action.move-workspace-up = {}; - - # You can bind mouse wheel scroll ticks using the following syntax. - # These binds will change direction based on the natural-scroll setting. - # - # To avoid scrolling through workspaces really fast, you can use - # the cooldown-ms property. The bind will be rate-limited to this value. - # You can set a cooldown on any bind, but it's most useful for the wheel. - "Mod+WheelScrollDown" = { - cooldown-ms = 150; - action.focus-workspace-down = {}; - }; - "Mod+WheelScrollUp" = { - cooldown-ms = 150; - action.focus-workspace-up = {}; - }; - "Mod+Ctrl+WheelScrollDown" = { - cooldown-ms = 150; - action.move-column-to-workspace-down = {}; - }; - "Mod+Ctrl+WheelScrollUp" = { - cooldown-ms = 150; - action.move-column-to-workspace-up = {}; - }; - - "Mod+WheelScrollRight".action.focus-column-right = {}; - "Mod+WheelScrollLeft".action.focus-column-left = {}; - "Mod+Ctrl+WheelScrollRight".action.move-column-right = {}; - "Mod+Ctrl+WheelScrollLeft".action.move-column-left = {}; - - # Usually scrolling up and down with Shift in applications results in - # horizontal scrolling; these binds replicate that. - "Mod+Shift+WheelScrollDown".action.focus-column-right = {}; - "Mod+Shift+WheelScrollUp".action.focus-column-left = {}; - "Mod+Ctrl+Shift+WheelScrollDown".action.move-column-right = {}; - "Mod+Ctrl+Shift+WheelScrollUp".action.move-column-left = {}; - - # Similarly, you can bind touchpad scroll "ticks". - # Touchpad scrolling is continuous, so for these binds it is split into - # discrete intervals. - # These binds are also affected by touchpad's natural-scroll, so these - # example binds are "inverted", since we have natural-scroll enabled for - # touchpads by default. - # Mod+TouchpadScrollDown { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.02+"; } - # Mod+TouchpadScrollUp { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.02-"; } - - # You can refer to workspaces by index. However, keep in mind that - # niri is a dynamic workspace system, so these commands are kind of - # "best effort". Trying to refer to a workspace index bigger than - # the current workspace count will instead refer to the bottommost - # (empty) workspace. - # - # For example, with 2 workspaces + 1 empty, indices 3, 4, 5 and so on - # will all refer to the 3rd workspace. - "Mod+1".action.focus-workspace = 1; - "Mod+2".action.focus-workspace = 2; - "Mod+3".action.focus-workspace = 3; - "Mod+4".action.focus-workspace = 4; - "Mod+5".action.focus-workspace = 5; - "Mod+6".action.focus-workspace = 6; - "Mod+7".action.focus-workspace = 7; - "Mod+8".action.focus-workspace = 8; - "Mod+9".action.focus-workspace = 9; - "Mod+Ctrl+1".action.move-column-to-workspace = 1; - "Mod+Ctrl+2".action.move-column-to-workspace = 2; - "Mod+Ctrl+3".action.move-column-to-workspace = 3; - "Mod+Ctrl+4".action.move-column-to-workspace = 4; - "Mod+Ctrl+5".action.move-column-to-workspace = 5; - "Mod+Ctrl+6".action.move-column-to-workspace = 6; - "Mod+Ctrl+7".action.move-column-to-workspace = 7; - "Mod+Ctrl+8".action.move-column-to-workspace = 8; - "Mod+Ctrl+9".action.move-column-to-workspace = 9; - - # Alternatively, there are commands to move just a single window: - # Mod+Ctrl+1 { move-window-to-workspace 1; } - - # Switches focus between the current and the previous workspace. - # Mod+Tab { focus-workspace-previous; } - - "Mod+Comma".action.consume-window-into-column = {}; - "Mod+Period".action.expel-window-from-column = {}; - - # There are also commands that consume or expel a single window to the side. - # Mod+BracketLeft { consume-or-expel-window-left; } - # Mod+BracketRight { consume-or-expel-window-right; } - - "Mod+R".action.switch-preset-column-width = {}; - "Mod+Shift+R".action.reset-window-height = {}; - "Mod+F".action.maximize-column = {}; - "Mod+Shift+F".action.fullscreen-window = {}; - "Mod+C".action.center-column = {}; - - # Finer width adjustments. - # This command can also: - # * set width in pixels: "1000" - # * adjust width in pixels: "-5" or "+5" - # * set width as a percentage of screen width: "25%" - # * adjust width as a percentage of screen width: "-10%" or "+10%" - # Pixel sizes use logical, or scaled, pixels. I.e. on an output with scale 2.0, - # set-column-width "100" will make the column occupy 200 physical screen pixels. - "Mod+Minus".action.set-column-width = "-10%"; - "Mod+Equal".action.set-column-width = "+10%"; - - # Finer height adjustments when in column with other windows. - "Mod+Shift+Minus".action.set-window-height = "-10%"; - "Mod+Shift+Equal".action.set-window-height = "+10%"; - - # Actions to switch layouts. - # Note: if you uncomment these, make sure you do NOT have - # a matching layout switch hotkey configured in xkb options above. - # Having both at once on the same hotkey will break the switching, - # since it will switch twice upon pressing the hotkey (once by xkb, once by niri). - # Mod+Space { switch-layout "next"; } - # Mod+Shift+Space { switch-layout "prev"; } - - "Print".action.screenshot = {}; - "Ctrl+Print".action.screenshot-screen = {}; - "Alt+Print".action.screenshot-window = {}; - - # The quit action will show a confirmation dialog to avoid accidental exits. - "Mod+Shift+E".action.quit = {}; - - # Powers off the monitors. To> turn them back on, do any input like - # moving the mouse or pressing any other key. - "Mod+Shift+P".action.power-off-monitors = {}; -} \ No newline at end of file diff --git a/modules/home/nixvim/autocmds.nix b/modules/home/nixvim/autocmds.nix deleted file mode 100644 index 4e8a2ec..0000000 --- a/modules/home/nixvim/autocmds.nix +++ /dev/null @@ -1,8 +0,0 @@ -{...}: { - programs.nixvim.autoCmd = [ - { - event = "TextYankPost"; - callback.__raw = "function() vim.highlight.on_yank() end"; - } - ]; -} diff --git a/modules/home/nixvim/colorscheme.nix b/modules/home/nixvim/colorscheme.nix deleted file mode 100644 index ff6c363..0000000 --- a/modules/home/nixvim/colorscheme.nix +++ /dev/null @@ -1,6 +0,0 @@ -{...}: { - programs.nixvim.colorschemes.catppuccin = { - enable = true; - settings.transparent_background = true; - }; -} diff --git a/modules/home/nixvim/default.nix b/modules/home/nixvim/default.nix deleted file mode 100644 index 6058473..0000000 --- a/modules/home/nixvim/default.nix +++ /dev/null @@ -1,45 +0,0 @@ -{ - pkgs, - inputs, - ... -}: { - imports = [ - inputs.nixvim.homeModules.nixvim - ./options.nix - ./autocmds.nix - ./keymaps.nix - ./language.nix - ./colorscheme.nix - ./lsp.nix - ./plugins - ]; - - programs.nixvim = { - enable = true; - vimAlias = true; - viAlias = true; - withNodeJs = true; - - extraPackages = with pkgs; [ - git - ripgrep - fd - nodejs - zellij - - # LSP / formatter / misc - vtsls - vscode-langservers-extracted - tailwindcss-language-server - prettierd - prettier - biome - stylua - shfmt - alejandra - lua-language-server - nixd - ]; - - }; -} diff --git a/modules/home/nixvim/keymaps.nix b/modules/home/nixvim/keymaps.nix deleted file mode 100644 index 4d550aa..0000000 --- a/modules/home/nixvim/keymaps.nix +++ /dev/null @@ -1,174 +0,0 @@ -{...}: let - mk = key: action: desc: { - mode = "n"; - inherit key action; - options = { - silent = true; - inherit desc; - }; - }; - - mkRaw = key: raw: desc: { - mode = "n"; - inherit key; - action.__raw = raw; - options = { - silent = true; - inherit desc; - }; - }; - - mkExpr = key: raw: desc: { - mode = "n"; - inherit key; - action.__raw = raw; - options = { - silent = true; - expr = true; - inherit desc; - }; - }; -in { - programs.nixvim = { - opts = { - # ジャンプ履歴をスタック寄りに扱う - jumpoptions = "stack"; - - # 既に開いているバッファや直前のウィンドウを優先して再利用 - switchbuf = "useopen,uselast"; - }; - - keymaps = [ - # Search - (mk "" "nohlsearch" "検索ハイライトを解除") - - # Screen line movement - (mkExpr "j" "function() return vim.v.count == 0 and 'gj' or 'j' end" "下へ移動(画面行優先)") - (mkExpr "k" "function() return vim.v.count == 0 and 'gk' or 'k' end" "上へ移動(画面行優先)") - - # LSP: hover / direct jump - (mkRaw "K" "vim.lsp.buf.hover" "シンボル情報を表示") - (mkRaw "gd" "vim.lsp.buf.definition" "定義へジャンプ") - (mkRaw "grr" "vim.lsp.buf.references" "参照一覧を開く") - (mkRaw "gri" "vim.lsp.buf.implementation" "実装一覧を開く") - (mkRaw "grt" "vim.lsp.buf.type_definition" "型定義一覧を開く") - (mkRaw "grn" "vim.lsp.buf.rename" "シンボル名を一括変換") - (mkRaw "gra" "vim.lsp.buf.code_action" "コードアクション") - (mkRaw "gO" "vim.lsp.buf.document_symbol" "現在ファイルのシンボル一覧") - - # Glance: preview / peek - (mk "gD" "Glance definitions" "定義をプレビュー") - (mk "gR" "Glance references" "参照をプレビュー") - (mk "gM" "Glance implementations" "実装をプレビュー") - (mk "gY" "Glance type_definitions" "型定義をプレビュー") - (mk "g." "Glance resume" "直前のGlanceを再開") - - # Convenience aliases - (mkRaw "rn" "vim.lsp.buf.rename" "シンボル名を一括変換") - (mkRaw "cf" "function() require('conform').format({ timeout_ms = 1000, lsp_format = 'fallback' }) end" "コードをフォーマット") - (mkRaw "ca" "vim.lsp.buf.code_action" "コードアクション") - - # Diagnostics - (mkRaw "]d" "vim.diagnostic.goto_next" "次の診断へ移動") - (mkRaw "[d" "vim.diagnostic.goto_prev" "前の診断へ移動") - (mkRaw "dl" "vim.diagnostic.open_float" "診断の詳細を表示") - - # File tree - (mk "e" "Neotree toggle left" "ファイルツリー") - - # Terminal - (mk "tt" "ToggleTerm direction=float" "ターミナル") - - # Trouble - (mk "xx" "Trouble diagnostics toggle" "診断一覧") - (mk "xq" "Trouble qflist toggle" "Quickfix一覧") - (mk "xl" "Trouble loclist toggle" "Location List一覧") - (mk "xs" "Trouble symbols toggle" "シンボル一覧") - (mk "xw" "Trouble lsp toggle" "LSP一覧") - - # Quickfix / Location list navigation - (mk "]q" "cnext" "次のQuickfixへ") - (mk "[q" "cprev" "前のQuickfixへ") - (mk "]l" "lnext" "次のLocation Listへ") - (mk "[l" "lprev" "前のLocation Listへ") - - # Window navigation - (mk "" "h" "左のウィンドウへ") - (mk "" "j" "下のウィンドウへ") - (mk "" "k" "上のウィンドウへ") - (mk "" "l" "右のウィンドウへ") - (mk "" "h" "左のウィンドウへ") - (mk "" "j" "下のウィンドウへ") - (mk "" "k" "上のウィンドウへ") - (mk "" "l" "右のウィンドウへ") - - # Alternate file / previous file - (mk "" "" "直前のファイルへ戻る") - (mk "w-" "" "直前のファイルをsplitで開く") - - # Buffer Bar - (mk "[b" "BufferPrevious" "前のバッファーに移動") - (mk "]b" "BufferNext" "次のバッファーに移動") - (mk "bc" "BufferClose" "バッファーを閉じる") - - # Git Conflict - (mk "gco" "GitConflictChooseOurs" "現在のブランチを選択") - (mk "gct" "GitConflictChooseTheirs" "相手のブランチを選択") - (mk "gcb" "GitConflictChooseBoth" "両方を選択") - (mk "gcx" "GitConflictListQf" "コンフリクト一覧") - (mk "]x" "GitConflictNextConflict" "次のコンフリクト") - (mk "[x" "GitConflictPrevConflict" "前のコンフリクト") - - # Git - (mk "gl" "LazyGit" "LazyGitを開く") - (mk "gd" "DiffviewOpen" "差分を開く") - (mk "gH" "DiffviewFileHistory" "リポジトリ履歴") - (mk "gh" "DiffviewFileHistory %" "現在ファイルの履歴") - (mk "gq" "DiffviewClose" "差分を閉じる") - - # Markview - (mk "mp" "Markview splitToggle" "Markdownプレビュー") - - # Zen Mode - (mk "zz" "ZenMode" "Zen Modeを開く/閉じる") - - # UFO (folding) - (mkRaw "zR" "require('ufo').openAllFolds" "全て展開") - (mkRaw "zM" "require('ufo').closeAllFolds" "全て折りたたむ") - - # Dropbar - (mkRaw "dp" "function() require('dropbar.api').pick() end" "dropbarでナビゲート") - - # Snacks - (mkRaw "sd" "function() Snacks.dim.toggle() end" "Dimモードをトグル") - - # Flash - (mkRaw "s" "function() require('flash').jump() end" "Flashジャンプ") - (mkRaw "S" "function() require('flash').treesitter() end" "Flashツリーシッタ選択") - - # Todo Comments - (mk "]t" "TodoNext" "次のTODO") - (mk "[t" "TodoPrev" "前のTODO") - (mkRaw "ft" "function() Snacks.picker.todo_comments() end" "TODO一覧") - - # Spectre - (mkRaw "sr" "function() require('spectre').toggle() end" "検索・置換") - - # Snacks Picker: generic - (mkRaw "ff" "function() Snacks.picker.files() end" "ファイルを探す") - (mkRaw "fg" "function() Snacks.picker.grep() end" "文字列を全文検索") - (mkRaw "fb" "function() Snacks.picker.buffers() end" "開いているバッファを探す") - (mkRaw "fh" "function() Snacks.picker.help() end" "ヘルプ項目を探す") - (mkRaw "fk" "function() Snacks.picker.keymaps() end" "キーマップを探す") - (mkRaw "fc" "function() Snacks.picker.commands() end" "コマンドを探す") - - # Snacks Picker: code navigation - (mkRaw "fs" "function() Snacks.picker.lsp_symbols() end" "現在ファイルのシンボルを探す") - (mkRaw "fS" "function() Snacks.picker.lsp_workspace_symbols() end" "ワークスペース全体のシンボルを探す") - (mkRaw "fr" "function() Snacks.picker.registers() end" "レジスタを探す") - (mkRaw "fj" "function() Snacks.picker.jumps() end" "ジャンプ履歴を探す") - (mkRaw "fq" "function() Snacks.picker.qflist() end" "Quickfixを探す") - (mkRaw "fl" "function() Snacks.picker.loclist() end" "Location Listを探す") - ]; - }; -} diff --git a/modules/home/nixvim/language.nix b/modules/home/nixvim/language.nix deleted file mode 100644 index 3e66375..0000000 --- a/modules/home/nixvim/language.nix +++ /dev/null @@ -1,13 +0,0 @@ -{...}: { - programs.nixvim = { - env = { - LANG = "ja_JP.UTF-8"; - LC_MESSAGES = "ja_JP.UTF-8"; - }; - - extraConfigLua = '' - vim.cmd.language("ja_JP.utf8") - vim.opt.helplang = { "ja", "en" } - ''; - }; -} diff --git a/modules/home/nixvim/lsp.nix b/modules/home/nixvim/lsp.nix deleted file mode 100644 index 171ad5e..0000000 --- a/modules/home/nixvim/lsp.nix +++ /dev/null @@ -1,65 +0,0 @@ -{...}: { - programs.nixvim = { - plugins.lsp = { - enable = true; - - servers = { - # TypeScript / JavaScript - vtsls = { - enable = true; - packageFallback = true; - rootMarkers = [ - "pnpm-workspace.yaml" - "package.json" - "tsconfig.json" - "jsconfig.json" - ".git" - ]; - extraOptions.settings.typescript.locale = "ja"; - }; - - # Biome for lint / format - biome = { - enable = true; - packageFallback = true; - rootMarkers = [ - "biome.json" - "biome.jsonc" - "package.json" - "pnpm-workspace.yaml" - ".git" - ]; - }; - - # Frontend / config languages - tailwindcss.enable = true; - cssls.enable = true; - jsonls.enable = true; - yamlls.enable = true; - lua_ls.enable = true; - nixd.enable = true; - - # Other languages - rust_analyzer = { - enable = true; - installCargo = true; - installRustc = true; - }; - svelte.enable = true; - ty.enable = true; - ruff.enable = true; - astro.enable = true; - gopls.enable = true; - }; - }; - - # Diagnostic UI - diagnostic.settings = { - virtual_text = true; - float = { - border = "rounded"; - source = true; - }; - }; - }; -} diff --git a/modules/home/nixvim/options.nix b/modules/home/nixvim/options.nix deleted file mode 100644 index 5f7c3e4..0000000 --- a/modules/home/nixvim/options.nix +++ /dev/null @@ -1,50 +0,0 @@ -{...}: { - programs.nixvim = { - opts = { - # display - number = true; - relativenumber = true; - signcolumn = "yes"; - termguicolors = true; - - # action - mouse = "a"; - clipboard = "unnamedplus"; - updatetime = 200; - timeoutlen = 300; - undofile = true; - - # display - wrap = false; - scrolloff = 8; - - # search - ignorecase = true; - smartcase = true; - - # window split - splitright = true; - splitbelow = true; - - # indent - tabstop = 2; - shiftwidth = 2; - expandtab = true; - - # file encoding - encoding = "utf-8"; - fileencoding = "utf-8"; - fileencodings = "utf-8,sjis,euc-jp,iso-2022-jp"; - - # invisible characters - list = true; - listchars = "tab:»-,trail:-,extends:»,precedes:«,nbsp:%"; - }; - - globals = { - mapleader = " "; - maplocalleader = " "; - clipboard = "osc52"; - }; - }; -} diff --git a/modules/home/nixvim/plugins/default.nix b/modules/home/nixvim/plugins/default.nix deleted file mode 100644 index 8657654..0000000 --- a/modules/home/nixvim/plugins/default.nix +++ /dev/null @@ -1,6 +0,0 @@ -{...}: { - imports = [ - ./ui - ./editor - ]; -} diff --git a/modules/home/nixvim/plugins/editor/autopairs.nix b/modules/home/nixvim/plugins/editor/autopairs.nix deleted file mode 100644 index 810bcf2..0000000 --- a/modules/home/nixvim/plugins/editor/autopairs.nix +++ /dev/null @@ -1,3 +0,0 @@ -{...}: { - programs.nixvim.plugins.nvim-autopairs.enable = true; -} diff --git a/modules/home/nixvim/plugins/editor/blink-cmp.nix b/modules/home/nixvim/plugins/editor/blink-cmp.nix deleted file mode 100644 index ba01396..0000000 --- a/modules/home/nixvim/plugins/editor/blink-cmp.nix +++ /dev/null @@ -1,47 +0,0 @@ -{...}: { - programs.nixvim.plugins.blink-cmp = { - enable = true; - setupLspCapabilities = true; - - settings = { - keymap = { - preset = "enter"; - - "" = ["show"]; - "" = ["scroll_documentation_up"]; - "" = ["hide"]; - "" = ["scroll_documentation_down"]; - - "" = [ - "accept" - { - __raw = '' - function() - local ok, copilot = pcall(require, "copilot.suggestion") - if ok and copilot.is_visible() then - copilot.accept() - return true - end - end - ''; - } - "fallback" - ]; - "" = ["select_prev" "fallback"]; - "" = ["select_next" "fallback"]; - "" = ["select_prev" "fallback"]; - }; - - completion.list.selection = { - preselect = true; - auto_insert = false; - }; - - sources.default = [ - "lsp" - "path" - "buffer" - ]; - }; - }; -} diff --git a/modules/home/nixvim/plugins/editor/comment.nix b/modules/home/nixvim/plugins/editor/comment.nix deleted file mode 100644 index 2f68e6c..0000000 --- a/modules/home/nixvim/plugins/editor/comment.nix +++ /dev/null @@ -1,3 +0,0 @@ -{...}: { - programs.nixvim.plugins.comment.enable = true; -} diff --git a/modules/home/nixvim/plugins/editor/conform.nix b/modules/home/nixvim/plugins/editor/conform.nix deleted file mode 100644 index 16f6e1e..0000000 --- a/modules/home/nixvim/plugins/editor/conform.nix +++ /dev/null @@ -1,24 +0,0 @@ -{...}: { - programs.nixvim.plugins."conform-nvim" = { - enable = true; - settings = { - formatters_by_ft = { - javascript.__raw = ''{ "biome", "prettierd", "prettier", stop_after_first = true }''; - javascriptreact.__raw = ''{ "biome", "prettierd", "prettier", stop_after_first = true }''; - typescript.__raw = ''{ "biome", "prettierd", "prettier", stop_after_first = true }''; - typescriptreact.__raw = ''{ "biome", "prettierd", "prettier", stop_after_first = true }''; - json.__raw = ''{ "biome", "prettierd", "prettier", stop_after_first = true }''; - yaml.__raw = ''{ "prettierd", "prettier", stop_after_first = true }''; - markdown.__raw = ''{ "prettierd", "prettier", stop_after_first = true }''; - lua = ["stylua"]; - nix = ["alejandra"]; - sh = ["shfmt"]; - }; - format_on_save.__raw = '' - function(_) - return { timeout_ms = 1000, lsp_format = "fallback" } - end - ''; - }; - }; -} diff --git a/modules/home/nixvim/plugins/editor/copilot.nix b/modules/home/nixvim/plugins/editor/copilot.nix deleted file mode 100644 index 783bfd1..0000000 --- a/modules/home/nixvim/plugins/editor/copilot.nix +++ /dev/null @@ -1,11 +0,0 @@ -{...}: { - programs.nixvim.plugins.copilot-lua = { - enable = true; - settings = { - suggestion = { - auto_trigger = true; - keymap.enabled = false; - }; - }; - }; -} diff --git a/modules/home/nixvim/plugins/editor/default.nix b/modules/home/nixvim/plugins/editor/default.nix deleted file mode 100644 index bb6c431..0000000 --- a/modules/home/nixvim/plugins/editor/default.nix +++ /dev/null @@ -1,22 +0,0 @@ -{...}: { - imports = [ - ./snacks.nix - ./treesitter.nix - ./blink-cmp.nix - ./gitsigns.nix - ./comment.nix - ./autopairs.nix - ./lsp-signature.nix - ./copilot.nix - ./trouble.nix - ./conform.nix - ./surround.nix - ./git.nix - ./git-conflict.nix - ./glance.nix - ./flash.nix - ./todo-comments.nix - ./spectre.nix - ./wakatime.nix - ]; -} diff --git a/modules/home/nixvim/plugins/editor/flash.nix b/modules/home/nixvim/plugins/editor/flash.nix deleted file mode 100644 index 3396c61..0000000 --- a/modules/home/nixvim/plugins/editor/flash.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: { - programs.nixvim = { - extraPlugins = [ pkgs.vimPlugins.flash-nvim ]; - extraConfigLua = '' - require("flash").setup() - ''; - }; -} diff --git a/modules/home/nixvim/plugins/editor/git-conflict.nix b/modules/home/nixvim/plugins/editor/git-conflict.nix deleted file mode 100644 index 84d119a..0000000 --- a/modules/home/nixvim/plugins/editor/git-conflict.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: { - programs.nixvim = { - extraPlugins = [ pkgs.vimPlugins.git-conflict-nvim ]; - extraConfigLua = '' - require("git-conflict").setup() - ''; - }; -} diff --git a/modules/home/nixvim/plugins/editor/git.nix b/modules/home/nixvim/plugins/editor/git.nix deleted file mode 100644 index 713f896..0000000 --- a/modules/home/nixvim/plugins/editor/git.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ pkgs, ... }: { - programs.nixvim = { - extraPackages = [ pkgs.lazygit ]; - - plugins = { - lazygit.enable = true; - diffview.enable = true; - }; - }; -} diff --git a/modules/home/nixvim/plugins/editor/gitsigns.nix b/modules/home/nixvim/plugins/editor/gitsigns.nix deleted file mode 100644 index eba120a..0000000 --- a/modules/home/nixvim/plugins/editor/gitsigns.nix +++ /dev/null @@ -1,15 +0,0 @@ -{...}: { - # git change view - programs.nixvim.plugins.gitsigns = { - enable = true; - settings = { - signs = { - add = {text = "+";}; - change = {text = "~";}; - delete = {text = "_";}; - topdelete = {text = "‾";}; - changedelete = {text = "~";}; - }; - }; - }; -} diff --git a/modules/home/nixvim/plugins/editor/glance.nix b/modules/home/nixvim/plugins/editor/glance.nix deleted file mode 100644 index d5b6c24..0000000 --- a/modules/home/nixvim/plugins/editor/glance.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: { - programs.nixvim = { - extraPlugins = [ pkgs.vimPlugins.glance-nvim ]; - extraConfigLua = '' - require("glance").setup() - ''; - }; -} diff --git a/modules/home/nixvim/plugins/editor/lsp-signature.nix b/modules/home/nixvim/plugins/editor/lsp-signature.nix deleted file mode 100644 index b9a2711..0000000 --- a/modules/home/nixvim/plugins/editor/lsp-signature.nix +++ /dev/null @@ -1,11 +0,0 @@ -{...}: { - programs.nixvim.plugins.lsp-signature = { - enable = true; - settings = { - hint_enable = true; - hint_prefix = " "; - floating_window = true; - bind = true; - }; - }; -} diff --git a/modules/home/nixvim/plugins/editor/snacks.nix b/modules/home/nixvim/plugins/editor/snacks.nix deleted file mode 100644 index 4af9f49..0000000 --- a/modules/home/nixvim/plugins/editor/snacks.nix +++ /dev/null @@ -1,31 +0,0 @@ -{pkgs, ...}: { - programs.nixvim = { - extraPlugins = [pkgs.vimPlugins.snacks-nvim]; - - extraConfigLua = '' - require("snacks").setup({ - picker = { - enabled = true, - - actions = require("trouble.sources.snacks").actions, - - win = { - input = { - keys = { - [""] = { - "trouble_open", - mode = { "n", "i" }, - }, - }, - }, - }, - }, - - notifier = { enabled = true }, - words = { enabled = true }, - scroll = { enabled = true }, - dim = { enabled = true }, - }) - ''; - }; -} diff --git a/modules/home/nixvim/plugins/editor/spectre.nix b/modules/home/nixvim/plugins/editor/spectre.nix deleted file mode 100644 index 98a1403..0000000 --- a/modules/home/nixvim/plugins/editor/spectre.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ pkgs, ... }: { - programs.nixvim = { - extraPackages = [ pkgs.ripgrep ]; - extraPlugins = [ pkgs.vimPlugins.nvim-spectre ]; - extraConfigLua = '' - require("spectre").setup() - ''; - }; -} diff --git a/modules/home/nixvim/plugins/editor/surround.nix b/modules/home/nixvim/plugins/editor/surround.nix deleted file mode 100644 index a6575b0..0000000 --- a/modules/home/nixvim/plugins/editor/surround.nix +++ /dev/null @@ -1,3 +0,0 @@ -{...}: { - programs.nixvim.plugins.nvim-surround.enable = true; -} diff --git a/modules/home/nixvim/plugins/editor/todo-comments.nix b/modules/home/nixvim/plugins/editor/todo-comments.nix deleted file mode 100644 index 495eb25..0000000 --- a/modules/home/nixvim/plugins/editor/todo-comments.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: { - programs.nixvim = { - extraPlugins = [ pkgs.vimPlugins.todo-comments-nvim ]; - extraConfigLua = '' - require("todo-comments").setup() - ''; - }; -} diff --git a/modules/home/nixvim/plugins/editor/treesitter.nix b/modules/home/nixvim/plugins/editor/treesitter.nix deleted file mode 100644 index 62b8fd4..0000000 --- a/modules/home/nixvim/plugins/editor/treesitter.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ pkgs, ... }: { - programs.nixvim = { - plugins.treesitter = { - enable = true; - settings = { - highlight.enable = true; - indent.enable = true; - }; - }; - - extraPlugins = [ pkgs.vimPlugins.nvim-ts-autotag ]; - extraConfigLua = '' - require("nvim-ts-autotag").setup() - ''; - }; -} diff --git a/modules/home/nixvim/plugins/editor/trouble.nix b/modules/home/nixvim/plugins/editor/trouble.nix deleted file mode 100644 index b702029..0000000 --- a/modules/home/nixvim/plugins/editor/trouble.nix +++ /dev/null @@ -1,3 +0,0 @@ -{...}: { - programs.nixvim.plugins.trouble.enable = true; -} diff --git a/modules/home/nixvim/plugins/editor/wakatime.nix b/modules/home/nixvim/plugins/editor/wakatime.nix deleted file mode 100644 index 4918da6..0000000 --- a/modules/home/nixvim/plugins/editor/wakatime.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ pkgs, ... }: { - programs.nixvim.extraPlugins = [ pkgs.vimPlugins.vim-wakatime ]; -} diff --git a/modules/home/nixvim/plugins/ui/barbar.nix b/modules/home/nixvim/plugins/ui/barbar.nix deleted file mode 100644 index 2d9926a..0000000 --- a/modules/home/nixvim/plugins/ui/barbar.nix +++ /dev/null @@ -1,26 +0,0 @@ -{...}: { - programs.nixvim.plugins.barbar = { - enable = true; - settings = { - animation = false; - auto_hide = 1; - tabpages = true; - clickable = true; - focus_on_close = "left"; - - icons = { - button = "󰅖"; - separator = { - left = "▎"; - right = ""; - }; - separator_at_end = false; - filetype.enabled = true; - }; - - sidebar_filetypes = { - neo-tree = true; - }; - }; - }; -} diff --git a/modules/home/nixvim/plugins/ui/blankline.nix b/modules/home/nixvim/plugins/ui/blankline.nix deleted file mode 100644 index 657f113..0000000 --- a/modules/home/nixvim/plugins/ui/blankline.nix +++ /dev/null @@ -1,20 +0,0 @@ -{...}: { - programs.nixvim.plugins.indent-blankline = { - enable = true; - settings = { - scope = { - enabled = true; - show_start = true; - show_end = true; - }; - exclude = { - filetypes = [ - "help" - "neo-tree" - "toggleterm" - "lazy" - ]; - }; - }; - }; -} diff --git a/modules/home/nixvim/plugins/ui/colorizer.nix b/modules/home/nixvim/plugins/ui/colorizer.nix deleted file mode 100644 index acb3d20..0000000 --- a/modules/home/nixvim/plugins/ui/colorizer.nix +++ /dev/null @@ -1,23 +0,0 @@ -{...}: { - programs.nixvim.plugins.colorizer = { - enable = true; - - settings = { - filetypes = ["*" "!markdown"]; - user_commands = true; - - options = { - parsers = { - css = true; - tailwind = { - enable = true; - lsp = true; - update_names = true; - }; - }; - - display.mode = "background"; - }; - }; - }; -} diff --git a/modules/home/nixvim/plugins/ui/default.nix b/modules/home/nixvim/plugins/ui/default.nix deleted file mode 100644 index fcac723..0000000 --- a/modules/home/nixvim/plugins/ui/default.nix +++ /dev/null @@ -1,19 +0,0 @@ -{...}: { - imports = [ - ./lualine.nix - ./neo-tree.nix - ./blankline.nix - ./which-key.nix - ./web-devicons.nix - ./toggleterm.nix - ./treesitter.nix - ./barbar.nix - ./lightbulb.nix - ./colorizer.nix - ./dropbar.nix - ./scrollbar.nix - ./ufo.nix - ./zen-mode.nix - ./markview.nix - ]; -} diff --git a/modules/home/nixvim/plugins/ui/dropbar.nix b/modules/home/nixvim/plugins/ui/dropbar.nix deleted file mode 100644 index 586aff5..0000000 --- a/modules/home/nixvim/plugins/ui/dropbar.nix +++ /dev/null @@ -1,3 +0,0 @@ -{...}: { - programs.nixvim.plugins.dropbar.enable = true; -} diff --git a/modules/home/nixvim/plugins/ui/lightbulb.nix b/modules/home/nixvim/plugins/ui/lightbulb.nix deleted file mode 100644 index f862079..0000000 --- a/modules/home/nixvim/plugins/ui/lightbulb.nix +++ /dev/null @@ -1,6 +0,0 @@ -{...}: { - programs.nixvim.plugins.nvim-lightbulb = { - enable = true; - settings.autocmd.enabled = true; - }; -} diff --git a/modules/home/nixvim/plugins/ui/lualine.nix b/modules/home/nixvim/plugins/ui/lualine.nix deleted file mode 100644 index 328f3cf..0000000 --- a/modules/home/nixvim/plugins/ui/lualine.nix +++ /dev/null @@ -1,25 +0,0 @@ -{...}: { - programs.nixvim.plugins.lualine = { - enable = true; - settings.sections.lualine_x = [ - { - __raw = '' - function() - local ok, conform = pcall(require, "conform") - if not ok then return "" end - local formatters = conform.list_formatters(0) - for _, f in ipairs(formatters) do - if f.available then - return "󰛖 " .. f.name - end - end - return "" - end - ''; - } - "encoding" - "fileformat" - "filetype" - ]; - }; -} diff --git a/modules/home/nixvim/plugins/ui/markview.nix b/modules/home/nixvim/plugins/ui/markview.nix deleted file mode 100644 index af2a0e1..0000000 --- a/modules/home/nixvim/plugins/ui/markview.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: { - programs.nixvim = { - extraPlugins = [ pkgs.vimPlugins.markview-nvim ]; - extraConfigLua = '' - require("markview").setup({ initial_state = false }) - ''; - }; -} diff --git a/modules/home/nixvim/plugins/ui/neo-tree.nix b/modules/home/nixvim/plugins/ui/neo-tree.nix deleted file mode 100644 index e151a65..0000000 --- a/modules/home/nixvim/plugins/ui/neo-tree.nix +++ /dev/null @@ -1,37 +0,0 @@ -{...}: { - programs.nixvim = { - plugins.neo-tree = { - enable = true; - settings = { - close_if_last_window = true; - - filesystem = { - follow_current_file = { - enabled = true; - leave_dirs_open = true; - }; - - filtered_items = { - visible = true; - hide_dotfiles = false; - hide_gitignored = true; - hide_ignored = false; - hide_hidden = false; - - hide_by_name = []; - hide_by_pattern = []; - - always_show = []; - always_show_by_pattern = []; - - never_show = [ - ".DS_Store" - "thumbs.db" - ]; - never_show_by_pattern = []; - }; - }; - }; - }; - }; -} diff --git a/modules/home/nixvim/plugins/ui/scrollbar.nix b/modules/home/nixvim/plugins/ui/scrollbar.nix deleted file mode 100644 index c31d384..0000000 --- a/modules/home/nixvim/plugins/ui/scrollbar.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: { - programs.nixvim = { - extraPlugins = [ pkgs.vimPlugins.nvim-scrollbar ]; - extraConfigLua = '' - require("scrollbar").setup() - ''; - }; -} diff --git a/modules/home/nixvim/plugins/ui/toggleterm.nix b/modules/home/nixvim/plugins/ui/toggleterm.nix deleted file mode 100644 index ccdee4b..0000000 --- a/modules/home/nixvim/plugins/ui/toggleterm.nix +++ /dev/null @@ -1,3 +0,0 @@ -{...}: { - programs.nixvim.plugins.toggleterm.enable = true; -} diff --git a/modules/home/nixvim/plugins/ui/treesitter.nix b/modules/home/nixvim/plugins/ui/treesitter.nix deleted file mode 100644 index b43df40..0000000 --- a/modules/home/nixvim/plugins/ui/treesitter.nix +++ /dev/null @@ -1,3 +0,0 @@ -{...}: { - programs.nixvim.plugins."treesitter-context".enable = true; -} diff --git a/modules/home/nixvim/plugins/ui/ufo.nix b/modules/home/nixvim/plugins/ui/ufo.nix deleted file mode 100644 index 91319d4..0000000 --- a/modules/home/nixvim/plugins/ui/ufo.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ pkgs, ... }: { - programs.nixvim = { - opts = { - foldcolumn = "1"; - foldlevel = 99; - foldlevelstart = 99; - foldenable = true; - }; - - extraPlugins = [ - pkgs.vimPlugins.nvim-ufo - pkgs.vimPlugins.promise-async - ]; - - extraConfigLua = '' - require("ufo").setup({ - provider_selector = function() - return { "treesitter", "indent" } - end, - }) - ''; - }; -} diff --git a/modules/home/nixvim/plugins/ui/web-devicons.nix b/modules/home/nixvim/plugins/ui/web-devicons.nix deleted file mode 100644 index 4f251bf..0000000 --- a/modules/home/nixvim/plugins/ui/web-devicons.nix +++ /dev/null @@ -1,4 +0,0 @@ -{...}: { - # icon set preview - programs.nixvim.plugins.web-devicons.enable = true; -} diff --git a/modules/home/nixvim/plugins/ui/which-key.nix b/modules/home/nixvim/plugins/ui/which-key.nix deleted file mode 100644 index 9499982..0000000 --- a/modules/home/nixvim/plugins/ui/which-key.nix +++ /dev/null @@ -1,4 +0,0 @@ -{...}: { - # key map help - programs.nixvim.plugins.which-key.enable = true; -} diff --git a/modules/home/nixvim/plugins/ui/zen-mode.nix b/modules/home/nixvim/plugins/ui/zen-mode.nix deleted file mode 100644 index 562eb5b..0000000 --- a/modules/home/nixvim/plugins/ui/zen-mode.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: { - programs.nixvim = { - extraPlugins = [ pkgs.vimPlugins.zen-mode-nvim ]; - extraConfigLua = '' - require("zen-mode").setup() - ''; - }; -} diff --git a/modules/home/noctalia.nix b/modules/home/noctalia.nix deleted file mode 100644 index 0d40ade..0000000 --- a/modules/home/noctalia.nix +++ /dev/null @@ -1,168 +0,0 @@ -{ - pkgs, - inputs, - ... -}: { - # import the home manager module - imports = [ - inputs.noctalia.homeModules.default - ]; - - # configure options - programs.noctalia-shell = { - enable = true; - settings = { - # configure noctalia here; defaults will - # be deep merged with these attributes. - bar = { - density = "default"; - position = "top"; - showCapsule = true; - backgroundOpacity = 0.8; - floating = true; - widgets = { - left = [ - { - id = "WiFi"; - } - { - id = "CustomButton"; - icon = "access-point"; - leftClickExec = "nm-connection-editor"; - } - { - id = "Bluetooth"; - } - { - id = "SystemMonitor"; - } - { - id = "Taskbar"; - } - { - id = "ActiveWindow"; - } - ]; - center = [ - { - hideUnoccupied = false; - id = "Workspace"; - labelMode = "none"; - } - ]; - right = [ - { - id = "MediaMini"; - } - { - id = "NotificationHistory"; - } - { - displayMode = "alwaysShow"; - id = "Battery"; - warningThreshold = 30; - } - { - displayMode = "alwaysShow"; - id = "Volume"; - } - { - displayMode = "alwaysShow"; - id = "Brightness"; - } - { - formatHorizontal = "HH:mm"; - formatVertical = "HH mm"; - id = "Clock"; - useMonospacedFont = true; - usePrimaryColor = true; - } - { - id = "ControlCenter"; - useDistroLogo = true; - } - ]; - }; - }; - colorSchemes.predefinedScheme = "dracula"; - general = { - avatarImage = "~/.face"; - radiusRatio = 0.2; - }; - location = { - monthBeforeDay = true; - weatherEnabled = false; - name = "Tokyo"; - }; - wallpaper = { - enabled = true; - directory = "~/.wallpapers/"; - setWallpaperOnAllMonitors = true; - linkLightAndDarkWallpapers = true; - fillMode = "crop"; - randomEnabled = true; - randomIntervalSec = 60; - transitionDuration = 1500; - }; - dock = { - enabled = true; - displayMode = "auto_hide"; - backgroundOpacity = 0.8; - floatingRatio = 1; - size = 1; - onlySameOutput = true; - monitors = ["eDP-1"]; - pinnedApps = ["com.mitchellh.ghostty" "org.gnome.Nautilus" "google-chrome" "code"]; - colorizeIcons = false; - }; - controlCenter = { - position = "close_to_bar_button"; - shortcuts = { - left = [ - { - id = "WiFi"; - } - { - id = "Bluetooth"; - } - { - id = "ScreenRecorder"; - } - { - id = "WallpaperSelector"; - } - ]; - right = [ - { - id = "Notifications"; - } - { - id = "NightLight"; - } - ]; - }; - cards = [ - { - enabled = true; - id = "profile-card"; - } - { - enabled = true; - id = "shortcuts-card"; - } - { - enabled = true; - id = "audio-card"; - } - { - enabled = true; - id = "media-sysmon-card"; - } - ]; - }; - }; - # this may also be a string or a path to a JSON file, - # but in this case must include *all* settings. - }; -} - diff --git a/modules/home/ssh.nix b/modules/home/ssh.nix deleted file mode 100644 index e45ff6b..0000000 --- a/modules/home/ssh.nix +++ /dev/null @@ -1,67 +0,0 @@ -{ - config, - lib, - pkgs, - host, - ... -}: -{ - - home.packages = [ pkgs.openssh ]; - - programs.ssh = { - enable = true; - - matchBlocks = { - "monitor.moons14.com" = { - host = "monitor.moons14.com"; - identityFile = "~/.ssh/id_ed25519_sk_rk"; - identitiesOnly = true; - }; - - "dev-1.moons14.com" = { - host = "dev-1.moons14.com"; - identityFile = "~/.ssh/id_ed25519_sk_rk"; - identitiesOnly = true; - }; - - "service-1.moons14.com" = { - host = "service-1.moons14.com"; - identityFile = "~/.ssh/id_ed25519_sk_rk"; - identitiesOnly = true; - }; - }; - - enableDefaultConfig = false; - - matchBlocks."*" = { - identityFile = "~/.ssh/id_ed25519"; - extraOptions.AddKeysToAgent = "yes"; - }; - }; - - home.activation.generateSshKey = lib.hm.dag.entryAfter [ "writeBoundary" ] '' - key="$HOME/.ssh/id_ed25519" - if [ ! -f "$key" ]; then - umask 077 - mkdir -p "$HOME/.ssh" - ${pkgs.openssh}/bin/ssh-keygen -t ed25519 -N "" -f "$key" \ - -C "moons@$(${host} || echo host)" - echo "Generated SSH key at $key" - fi - ''; - - programs.git = { - enable = true; - - signing = { - key = "~/.ssh/id_ed25519.pub"; - signByDefault = true; - }; - - settings = { - gpg.format = "ssh"; - tag.gpgSign = true; - }; - }; -} diff --git a/modules/home/vicinae.nix b/modules/home/vicinae.nix deleted file mode 100644 index 0169104..0000000 --- a/modules/home/vicinae.nix +++ /dev/null @@ -1,50 +0,0 @@ -{ - inputs, - pkgs, - ... -}: { - imports = [ - inputs.vicinae.homeManagerModules.default - ]; - - services.vicinae = { - enable = true; - systemd = { - enable = true; - autoStart = true; - environment = { - USE_LAYER_SHELL = 1; - }; - }; - - settings = { - font.size = 11; - close_on_focus_loss = true; - consider_preedit = true; - pop_to_root_on_close = true; - favicon_service = "twenty"; - search_files_in_root = true; - theme = { - light = { - name = "dracula"; - icon_theme = "default"; - }; - dark = { - name = "vicinae-light"; - icon_theme = "default"; - }; - }; - window = { - csd = true; - opacity = 0.95; - rounding = 10; - }; - }; - extensions = with inputs.vicinae-extensions.packages.${pkgs.stdenv.hostPlatform.system}; [ - bluetooth - nix - power-profile - # Extension names can be found in the link below, it's just the folder names - ]; - }; -} diff --git a/modules/home/vscode.nix b/modules/home/vscode.nix deleted file mode 100644 index d198d54..0000000 --- a/modules/home/vscode.nix +++ /dev/null @@ -1,283 +0,0 @@ -{ - pkgs, - lib, - ... -}: let - vsc = pkgs.vscode-extensions; - inherit (lib) recursiveUpdate; - - rustLibclangPath = pkgs.lib.makeLibraryPath [pkgs.llvmPackages_latest.libclang.lib]; - - rustBindgenExtraClangArgs = lib.concatStringsSep " " ( - (builtins.map (a: ''-I"${a}/include"'') [ - pkgs.glibc.dev - ]) - ++ [ - ''-I"${pkgs.llvmPackages_latest.libclang.lib}/lib/clang/${pkgs.llvmPackages_latest.libclang.version}/include"'' - ''-I"${pkgs.glib.dev}/include/glib-2.0"'' - ''-I${pkgs.glib.out}/lib/glib-2.0/include/'' - ] - ); - - layers = rec { - common = { - extensions = - (with vsc; [ - github.copilot - github.copilot-chat - dracula-theme.theme-dracula - ms-vscode-remote.vscode-remote-extensionpack - dbaeumer.vscode-eslint - ms-vscode-remote.remote-containers - ms-vscode-remote.remote-ssh - github.vscode-github-actions - github.vscode-pull-request-github - eamodio.gitlens - streetsidesoftware.code-spell-checker - ms-ceintl.vscode-language-pack-ja - ]) - ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ - { - name = "hadolint"; - publisher = "exiasr"; - version = "1.1.2"; - hash = "sha256-6GO1f8SP4CE8yYl87/tm60FdGHqHsJA4c2B6UKVdpgM="; - } - { - name = "chatgpt"; - publisher = "openai"; - version = "0.4.71"; - hash = "sha256-Q0le5rhVRgTDQXjIlhbzJOv/7+xC6JXwTp6fxZCP4ak="; - } - ]; - userSettings = { - "workbench.colorTheme" = "Dracula"; - "window.autoDetectColorScheme" = false; - "editor.formatOnSave" = true; - "editor.defaultFormatter" = "esbenp.prettier-vscode"; - "git.enableSmartCommit" = true; - "files.autoSave" = "onFocusChange"; - "git.confirmSync" = false; - "github.copilot.nextEditSuggestions.enabled" = true; - "editor.suggestOnTriggerCharacters" = true; - "editor.quickSuggestions" = { - other = true; - comments = false; - strings = true; - }; - "git.autofetch" = true; - "workbench.editor.enablePreview" = false; - }; - }; - - web = { - extensions = - (with vsc; [ - lokalise.i18n-ally - bradlc.vscode-tailwindcss - prisma.prisma - hashicorp.terraform - yoavbls.pretty-ts-errors - ]) - ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ - { - name = "pnpm-catalog-lens"; - publisher = "antfu"; - version = "1.0.0"; - hash = "sha256-mCMBVxZRIb3Jao1XSS7EQRQX3Y2vrkpAmy6ldSqZa9c="; - } - { - name = "explorer"; - publisher = "vitest"; - version = "1.32.1"; - hash = "sha256-MAfjS/oFfFuiE+Q2w6leSlao436QSw2fKjd7/BE/Q8Y="; - } - ]; - userSettings = {}; - }; - - web-biome = { - extensions = with vsc; [ - biomejs.biome - ]; - userSettings = { - "editor.defaultFormatter" = "biomejs.biome"; - "[typescript].editor.defaultFormatter" = "biomejs.biome"; - "[typescriptreact].editor.defaultFormatter" = "biomejs.biome"; - }; - }; - - web-oxc = { - extensions = pkgs.vscode-utils.extensionsFromVscodeMarketplace [ - { - name = "oxc-vscode"; - publisher = "oxc"; - version = "1.48.0"; - hash = "sha256-RZ7mLcLJyn7lR6w6Au6fZeguB3wtk8sIXb67lPnPnrc="; - } - ]; - userSettings = { - "editor.defaultFormatter" = "oxc.oxc-vscode"; - "[typescript].editor.defaultFormatter" = "oxc.oxc-vscode"; - "[typescriptreact].editor.defaultFormatter" = "oxc.oxc-vscode"; - }; - }; - - nix = { - extensions = with vsc; [ - bbenoist.nix - jnoortheen.nix-ide - ]; - userSettings = { - "nix.enableLanguageServer" = true; - "nix.serverPath" = "nil"; - "[nix]" = { - "editor.defaultFormatter" = "jnoortheen.nix-ide"; - }; - }; - }; - - jupyter = { - extensions = with vsc; [ - ms-toolsai.jupyter - ms-python.python - ]; - userSettings = {}; - }; - - java = { - extensions = ( - with vsc; [ - vscjava.vscode-java-pack - sonarsource.sonarlint-vscode - vscjava.vscode-java-debug - redhat.java - ] - ); - - userSettings = { - "java.jdt.ls.java.home" = "${pkgs.jdk25.home}"; - "java.configuration.runtimes" = [ - { - "name" = "JavaSE-25"; - "path" = "${pkgs.jdk25.home}"; - "default" = true; - } - ]; - - "editor.codeLens" = true; - "java.debug.settings.enableRunDebugCodeLens" = true; - - "java.jdt.ls.vmargs" = "-Xms256m -Xmx2G -XX:+UseG1GC -XX:+UseStringDeduplication"; - - "java.configuration.updateBuildConfiguration" = "interactive"; - - "java.maven.downloadSources" = true; - "java.eclipse.downloadSources" = true; - - "maven.executable.path" = "${pkgs.maven}/bin/mvn"; - - "[java]" = { - "editor.defaultFormatter" = "redhat.java"; - }; - }; - }; - - rust = { - extensions = with vsc; [ - rust-lang.rust-analyzer - vadimcn.vscode-lldb - serayuzgur.crates - tamasfe.even-better-toml - ]; - - userSettings = { - "[rust]" = { - "editor.defaultFormatter" = "rust-lang.rust-analyzer"; - "editor.formatOnSave" = true; - "editor.codeActionsOnSave" = { - "source.organizeImports" = true; - "source.fixAll" = true; - }; - }; - - "rust-analyzer.checkOnSave" = true; - "rust-analyzer.check.command" = "clippy"; - - "rust-analyzer.cargo.buildScripts.enable" = true; - "rust-analyzer.procMacro.enable" = true; - - "rust-analyzer.cargo.targetDir" = true; - - "rust-analyzer.cargo.extraEnv" = { - "LIBCLANG_PATH" = rustLibclangPath; - "BINDGEN_EXTRA_CLANG_ARGS" = rustBindgenExtraClangArgs; - }; - - "rust-analyzer.lens.enable" = true; - "rust-analyzer.lens.implementations.enable" = true; - "rust-analyzer.lens.references.adt.enable" = true; - "rust-analyzer.lens.references.enumVariant.enable" = true; - "rust-analyzer.lens.references.method.enable" = true; - "rust-analyzer.lens.references.trait.enable" = true; - - "files.watcherExclude" = { - "**/target/**" = true; - }; - "search.exclude" = { - "**/target/**" = true; - }; - }; - }; - }; - - combine = ( - ls: - builtins.foldl' - (acc: l: { - extensions = acc.extensions ++ (l.extensions or []); - userSettings = recursiveUpdate acc.userSettings (l.userSettings or {}); - }) - { - extensions = []; - userSettings = {}; - } - ls - ); - - # mkProfile [layers...] { extensions = [...]; userSettings = { ... }; } - mkProfile = layersList: extras: let - base = combine layersList; - in { - extensions = base.extensions ++ (extras.extensions or []); - userSettings = recursiveUpdate base.userSettings (extras.userSettings or {}); - }; -in { - nixpkgs.config.allowUnfree = true; - - programs.vscode = { - enable = true; - - profiles = { - default = mkProfile [layers.common] {}; - - nix = mkProfile [layers.common layers.nix] {}; - - web = mkProfile [layers.common layers.web layers.web-biome] {}; - - web-oxc = mkProfile [layers.common layers.web layers.web-oxc] {}; - - jupyter = mkProfile [layers.common layers.jupyter] {}; - - java = mkProfile [layers.common layers.java] {}; - - rust = mkProfile [layers.common layers.rust] {}; - }; - }; - - xdg.configFile."Code/User/locale.json".text = '' - { - "locale": "ja" - } - ''; -} diff --git a/modules/home/wallpaper.nix b/modules/home/wallpaper.nix deleted file mode 100644 index 6013794..0000000 --- a/modules/home/wallpaper.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ - pkgs, - lib, - ... -}: let - walls = pkgs.fetchFromGitHub { - owner = "moons-14"; - repo = "wallpapers"; - rev = "cc3256f4aaf2c8e7d16fb000b1ee251af54085db"; - hash = "sha256-emQ/FqKqMq3YI5bLx8gBZg/ZE72OG9Ilh71ggq78WdQ="; - }; -in { - home.file.".wallpapers" = { - source = walls; - recursive = true; - }; - - home.file.".cache/noctalia/wallpapers.json" = { - text = builtins.toJSON { - defaultWallpaper = "~/.wallpapers/1.jpg"; - wallpapers = { - "DP-1" = "~/.wallpapers/1.jpg"; - }; - }; - }; -} diff --git a/modules/home/zellij.nix b/modules/home/zellij.nix deleted file mode 100644 index c38d526..0000000 --- a/modules/home/zellij.nix +++ /dev/null @@ -1,61 +0,0 @@ -{...}: { - programs.zellij = { - enable = true; - - enableZshIntegration = false; - - settings = { - pane_frames = true; - default_mode = "locked"; - default_shell = "/run/current-system/sw/bin/zsh"; - }; - - extraConfig = '' - keybinds { - locked { - bind "Ctrl g" { SwitchToMode "normal"; } - bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; } - bind "Alt j" "Alt Down" { MoveFocus "Down"; } - bind "Alt k" "Alt Up" { MoveFocus "Up"; } - bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; } - bind "Alt n" { NewPane; } - bind "Alt t" { NewTab; } - bind "Alt H" { Resize "Increase Left"; } - bind "Alt J" { Resize "Increase Down"; } - bind "Alt K" { Resize "Increase Up"; } - bind "Alt L" { Resize "Increase Right"; } - } - normal { - bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; } - bind "Alt j" "Alt Down" { MoveFocus "Down"; } - bind "Alt k" "Alt Up" { MoveFocus "Up"; } - bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; } - bind "Alt n" { NewPane; } - bind "Alt t" { NewTab; } - bind "Alt H" { Resize "Increase Left"; } - bind "Alt J" { Resize "Increase Down"; } - bind "Alt K" { Resize "Increase Up"; } - bind "Alt L" { Resize "Increase Right"; } - } - } - ''; - - layouts.dev = '' - layout { - pane split_direction="vertical" { - pane { - pane command="nvim" - pane stacked=true size="30%" { - pane expanded=true - pane - } - } - - pane size=1 borderless=true { - plugin location="zellij:compact-bar" - } - } - } - ''; - }; -} diff --git a/modules/home/zoom.nix b/modules/home/zoom.nix deleted file mode 100644 index 63d87c9..0000000 --- a/modules/home/zoom.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ pkgs, lib, ... }: -{ - nixpkgs.config.allowUnfreePredicate = pkg: - lib.getName pkg == "zoom-us"; - - home.packages = with pkgs; [ - zoom-us - ]; -} diff --git a/modules/home/zsh.nix b/modules/home/zsh.nix deleted file mode 100644 index 5c3e656..0000000 --- a/modules/home/zsh.nix +++ /dev/null @@ -1,47 +0,0 @@ -{ config, pkgs, ... }: - -{ - programs.zsh = { - enable = true; - enableCompletion = true; - - # Oh My Zsh - oh-my-zsh = { - enable = true; - theme = "robbyrussell"; - plugins = [ "git" ]; - }; - - autosuggestion.enable = true; - syntaxHighlighting.enable = true; - - initContent = '' - # ---- from gist: export / history size ---- - export HISTSIZE=999999999 - export HISTFILESIZE=999999999 - - # ---- from gist: setopt ---- - setopt extended_history - setopt hist_allow_clobber - setopt hist_fcntl_lock - setopt hist_find_no_dups - setopt hist_ignore_all_dups - setopt hist_ignore_dups - setopt hist_ignore_space - # setopt hist_no_functions - # setopt hist_no_store - setopt hist_reduce_blanks - setopt hist_save_no_dups - setopt hist_verify - setopt inc_append_history_time - - unsetopt SHARE_HISTORY - setopt APPEND_HISTORY - setopt INC_APPEND_HISTORY_TIME - - # ---- from gist: aliases ---- - alias docker-compose="docker compose" - alias clearsign='export GPG_TTY=$(tty) && openssl rand -hex 16 | gpg --clearsign' - ''; - }; -} diff --git a/overlays/default.nix b/overlays/default.nix deleted file mode 100644 index 368fac2..0000000 --- a/overlays/default.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ inputs, ... }: -{ -} \ No newline at end of file diff --git a/profiles/cli-minimal.nix b/profiles/cli-minimal.nix deleted file mode 100644 index 368bd5f..0000000 --- a/profiles/cli-minimal.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ ... }: -{ - imports = [ - ]; - - home-manager.users.moons.imports = [ - ]; -} \ No newline at end of file diff --git a/profiles/cli-server.nix b/profiles/cli-server.nix deleted file mode 100644 index 8be0bc9..0000000 --- a/profiles/cli-server.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ ... }: -{ - imports = [ - ./cli.nix - ]; - - home-manager.users.moons.imports = [ - - ]; -} \ No newline at end of file diff --git a/profiles/cli.nix b/profiles/cli.nix deleted file mode 100644 index 701ce85..0000000 --- a/profiles/cli.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ ... }: -{ - imports = [ - ./cli-minimal.nix - ]; - - home-manager.users.moons.imports = [ - - ]; -} \ No newline at end of file diff --git a/profiles/gui.nix b/profiles/gui.nix deleted file mode 100644 index 867f1b5..0000000 --- a/profiles/gui.nix +++ /dev/null @@ -1,27 +0,0 @@ -{...}: { - imports = [ - ./cli.nix - ./../modules/core/niri.nix - ./../modules/core/hyprland.nix - ./../modules/core/greetd.nix - ./../modules/core/noctalia.nix - ./../modules/core/gui.nix - ./../modules/core/kde.nix - ]; - - home-manager.users.moons.imports = [ - ./../modules/home/niri - ./../modules/home/vscode.nix - ./../modules/home/browser.nix - ./../modules/home/vicinae.nix - ./../modules/home/noctalia.nix - ./../modules/home/avatar.nix - ./../modules/home/ghostty - ./../modules/home/wallpaper.nix - ./../modules/home/lock.nix - ./../modules/home/discord.nix - ./../modules/home/nautilus.nix - ./../modules/home/gtk.nix - ./../modules/home/zoom.nix - ]; -} diff --git a/profiles/laptop.nix b/profiles/laptop.nix deleted file mode 100644 index 6fdbc9b..0000000 --- a/profiles/laptop.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ ... }: -{ - imports = [ - ./gui.nix - ./../modules/core/fingerprint.nix - ./../modules/core/power.nix - ./../modules/core/camera.nix - ]; - - home-manager.users.moons.imports = [ - - ]; -} \ No newline at end of file diff --git a/renovate.json b/renovate.json deleted file mode 100644 index 50a306a..0000000 --- a/renovate.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "$schema": "https://docs.renovatebot.com/renovate-schema.json", - "extends": ["config:recommended"], - - "nix": { - "enabled": true - }, - - "lockFileMaintenance": { - "enabled": true - }, - - "minimumReleaseAge": "7 days", - "minimumReleaseAgeBehaviour": "timestamp-required" -} diff --git a/shells/jupyter.nix b/shells/jupyter.nix deleted file mode 100644 index 36138af..0000000 --- a/shells/jupyter.nix +++ /dev/null @@ -1,46 +0,0 @@ -{ pkgs }: -let - py = pkgs.python312; - pyEnv = py.withPackages ( - ps: with ps; [ - ipykernel - notebook - jupyterlab - numpy - pandas - matplotlib - scipy - scikit-learn - - pyathena - python-dotenv - plotly - seaborn - ] - ); -in -pkgs.mkShell { - name = "jupyter-notebook"; - - packages = with pkgs; [ - pyEnv - zsh - ]; - - PYTHONNOUSERSITE = "1"; - JUPYTER_CONFIG_DIR = "$PWD/.jupyter"; - IPYTHONDIR = "$PWD/.ipython"; - - shellHook = '' - set -e - - if command -v python >/dev/null; then - echo "📓 jupyter shell → python $(python -V | awk '{print $2}')" - fi - - if [ -z "''${ZSH_VERSION:-}" ] && [[ $- == *i* ]] && [ -t 1 ] && [ -z "''${NIX_SHELL_ZSH_ACTIVATED:-}" ]; then - export NIX_SHELL_ZSH_ACTIVATED=1 - exec ${pkgs.zsh}/bin/zsh -i - fi - ''; -} diff --git a/shells/next-web.nix b/shells/next-web.nix deleted file mode 100644 index 2b079a7..0000000 --- a/shells/next-web.nix +++ /dev/null @@ -1,66 +0,0 @@ -{ pkgs }: -let - node = pkgs.nodejs_24; -in -pkgs.mkShell { - name = "next-web"; - - packages = with pkgs; [ - node - nodePackages_latest.pnpm - nodePackages_latest.vercel - nodePackages_latest.prisma - zsh - openssl - pkg-config - jq - ngrok - ]; - - NODE_ENV = "development"; - - shellHook = '' - # corepack store under repo (avoid polluting home) - export COREPACK_HOME="$PWD/.corepack" - - # pnpm global bin dir (NixOS/zshでも確実に有効にする) - export PNPM_HOME="''${XDG_DATA_HOME:-$HOME/.local/share}/pnpm" - mkdir -p "$PNPM_HOME" - case ":$PATH:" in - *":$PNPM_HOME:"*) ;; - *) export PATH="$PNPM_HOME:$PATH" ;; - esac - - # Prisma engines from nixpkgs (avoid binaries.prisma.sh fetch on NixOS) - export PKG_CONFIG_PATH="${pkgs.openssl.dev}/lib/pkgconfig" - export PRISMA_FMT_BINARY="${pkgs.prisma-engines}/bin/prisma-fmt" - - # ---- show tool versions - if command -v node >/dev/null; then - echo "next-web shell -> node $(node -v)" - fi - if command -v pnpm >/dev/null; then - echo " pnpm $(pnpm --version)" - echo " PNPM_HOME=$PNPM_HOME" - fi - - # Activate packageManager from package.json if present. - if command -v corepack >/dev/null 2>&1; then - if [ -f package.json ] && command -v jq >/dev/null 2>&1 && jq -e '.packageManager' package.json >/dev/null; then - COREPACK_ENABLE_DOWNLOADS=1 corepack prepare --activate || true - fi - fi - - # ---- switch to zsh (interactive only). Don't break `nix develop -c ...` - if [ -z "''${ZSH_VERSION:-}" ] && [[ $- == *i* ]] && [ -t 1 ] && [ -z "''${NIX_SHELL_ZSH_ACTIVATED:-}" ]; then - export NIX_SHELL_ZSH_ACTIVATED=1 - exec ${pkgs.zsh}/bin/zsh -i - fi - ''; - - env = { - PRISMA_QUERY_ENGINE_LIBRARY = "${pkgs.prisma-engines}/lib/libquery_engine.node"; - PRISMA_QUERY_ENGINE_BINARY = "${pkgs.prisma-engines}/bin/query-engine"; - PRISMA_SCHEMA_ENGINE_BINARY = "${pkgs.prisma-engines}/bin/schema-engine"; - }; -} diff --git a/shells/rust/default.nix b/shells/rust/default.nix deleted file mode 100644 index 147c23b..0000000 --- a/shells/rust/default.nix +++ /dev/null @@ -1,49 +0,0 @@ -# ref: https://nixos.wiki/wiki/Rust - -{ pkgs ? import {} }: - let - overrides = (builtins.fromTOML (builtins.readFile ./rust-toolchain.toml)); - libPath = with pkgs; lib.makeLibraryPath [ - # load external libraries that you need in your rust project here - ]; -in - pkgs.mkShell rec { - nativeBuildInputs = [ pkgs.pkg-config ]; - buildInputs = with pkgs; [ - clang - # Replace llvmPackages with llvmPackages_X, where X is the latest LLVM version (at the time of writing, 16) - llvmPackages.bintools - rustup - ]; - - RUSTC_VERSION = overrides.toolchain.channel; - - # https://github.com/rust-lang/rust-bindgen#environment-variables - LIBCLANG_PATH = pkgs.lib.makeLibraryPath [ pkgs.llvmPackages_latest.libclang.lib ]; - - shellHook = '' - export PATH=$PATH:''${CARGO_HOME:-~/.cargo}/bin - export PATH=$PATH:''${RUSTUP_HOME:-~/.rustup}/toolchains/$RUSTC_VERSION-x86_64-unknown-linux-gnu/bin/ - ''; - - # Add precompiled library to rustc search path - RUSTFLAGS = (builtins.map (a: ''-L ${a}/lib'') [ - # add libraries here (e.g. pkgs.libvmi) - ]); - - LD_LIBRARY_PATH = libPath; - - # Add glibc, clang, glib, and other headers to bindgen search path - BINDGEN_EXTRA_CLANG_ARGS = - # Includes normal include path - (builtins.map (a: ''-I"${a}/include"'') [ - # add dev libraries here (e.g. pkgs.libvmi.dev) - pkgs.glibc.dev - ]) - # Includes with special directory paths - ++ [ - ''-I"${pkgs.llvmPackages_latest.libclang.lib}/lib/clang/${pkgs.llvmPackages_latest.libclang.version}/include"'' - ''-I"${pkgs.glib.dev}/include/glib-2.0"'' - ''-I${pkgs.glib.out}/lib/glib-2.0/include/'' - ]; - } \ No newline at end of file diff --git a/shells/rust/rust-toolchain.toml b/shells/rust/rust-toolchain.toml deleted file mode 100644 index 292fe49..0000000 --- a/shells/rust/rust-toolchain.toml +++ /dev/null @@ -1,2 +0,0 @@ -[toolchain] -channel = "stable"