Remove Vicinae input and virtualization module

Add pnpm and lazydocker to system packages and normalize Node/Bun
entries. Expand filesystem options into multi-line arrays, remove an
extra groups comment, update flake.lock (noctalia ref), and tidy README
newline/formatting.
This commit is contained in:
Melvin Ragusa
2026-02-04 08:18:48 +01:00
parent 0ce9739776
commit f017b45840
9 changed files with 33 additions and 158 deletions

View File

@@ -116,7 +116,6 @@ services.example = {
| `nixpkgs` | NixOS unstable channel | | `nixpkgs` | NixOS unstable channel |
| `nix-cachyos-kernel` | CachyOS optimized kernel | | `nix-cachyos-kernel` | CachyOS optimized kernel |
| `noctalia` | Desktop shell | | `noctalia` | Desktop shell |
| `vicinae` | Application launcher |
## Common Patterns ## Common Patterns

View File

@@ -33,7 +33,7 @@ Shell aliases are defined in `modules/shell.nix`: `rebuild`, `rebuild-test`, `re
## Architecture ## Architecture
**Entry Points:** **Entry Points:**
- `flake.nix` - Flake definition with inputs (nixpkgs unstable, nix-cachyos-kernel, noctalia shell, vicinae launcher) - `flake.nix` - Flake definition with inputs (nixpkgs unstable, nix-cachyos-kernel, noctalia shell)
- `configuration.nix` - Main config that imports all modules, defines boot, networking, user, and nix settings - `configuration.nix` - Main config that imports all modules, defines boot, networking, user, and nix settings
- `hardware-configuration.nix` - Auto-generated by `nixos-generate-config` (do not edit manually) - `hardware-configuration.nix` - Auto-generated by `nixos-generate-config` (do not edit manually)

View File

@@ -42,7 +42,6 @@ nixos/
| `nixpkgs` | NixOS unstable channel | | `nixpkgs` | NixOS unstable channel |
| `nix-cachyos-kernel` | CachyOS optimized kernel with x86_64-v3 | | `nix-cachyos-kernel` | CachyOS optimized kernel with x86_64-v3 |
| `noctalia` | Noctalia desktop shell | | `noctalia` | Noctalia desktop shell |
| `vicinae` | Vicinae application launcher |
| `zen-browser` | Zen Browser (Firefox-based) | | `zen-browser` | Zen Browser (Firefox-based) |
| `opencode` | OpenCode AI coding assistant | | `opencode` | OpenCode AI coding assistant |
@@ -138,9 +137,7 @@ nix-store --optimise
## 🖥️ Desktop Environment ## 🖥️ Desktop Environment
- **Compositor**: Niri (scrollable tiling Wayland compositor) - **Compositor**: Niri (scrollable tiling Wayland compositor)
- **Shell**: Noctalia (desktop shell for Niri) - **Display Manager**: Ly
- **Display Manager**: Ly (TUI display manager)
- **Launcher**: Vicinae (application launcher)
- **Terminal**: Ghostty - **Terminal**: Ghostty
- **Browser**: Zen Browser (primary), Firefox - **Browser**: Zen Browser (primary), Firefox
- **File Manager**: Nautilus (GNOME Files) - **File Manager**: Nautilus (GNOME Files)
@@ -282,4 +279,4 @@ Common aliases configured in `shell.nix`:
## 📄 License ## 📄 License
This configuration is provided as-is for personal use and reference. This configuration is provided as-is for personal use and reference.

View File

@@ -22,7 +22,6 @@
./modules/apps.nix # User applications ./modules/apps.nix # User applications
./modules/dev.nix # Docker, dev tools ./modules/dev.nix # Docker, dev tools
./modules/theming.nix # Fonts, themes, cursors ./modules/theming.nix # Fonts, themes, cursors
# ./modules/virtualization.nix # QEMU, KVM, virt-manager
./modules/power.nix # Power management, CPU governors ./modules/power.nix # Power management, CPU governors
./modules/shell.nix # Fish shell configuration ./modules/shell.nix # Fish shell configuration
./modules/services.nix # System services (fstrim, zram, avahi, psd) ./modules/services.nix # System services (fstrim, zram, avahi, psd)
@@ -35,19 +34,31 @@
fileSystems."/mnt/Intenso-SSD" = { fileSystems."/mnt/Intenso-SSD" = {
device = "/dev/disk/by-uuid/51c56376-8384-4762-a8e9-8151fe91173b"; device = "/dev/disk/by-uuid/51c56376-8384-4762-a8e9-8151fe91173b";
fsType = "ext4"; fsType = "ext4";
options = [ "defaults" "nofail" "x-gvfs-show" ]; options = [
"defaults"
"nofail"
"x-gvfs-show"
];
}; };
fileSystems."/mnt/Samsung-SSD" = { fileSystems."/mnt/Samsung-SSD" = {
device = "/dev/disk/by-uuid/343ea612-9305-4fb6-9d4c-7a7ca8b0e72c"; device = "/dev/disk/by-uuid/343ea612-9305-4fb6-9d4c-7a7ca8b0e72c";
fsType = "ext4"; fsType = "ext4";
options = [ "defaults" "nofail" "x-gvfs-show" ]; options = [
"defaults"
"nofail"
"x-gvfs-show"
];
}; };
fileSystems."/mnt/Extern-SSD" = { fileSystems."/mnt/Extern-SSD" = {
device = "/dev/disk/by-uuid/4e233c88-e91b-480c-b795-6fffc1fbdc69"; device = "/dev/disk/by-uuid/4e233c88-e91b-480c-b795-6fffc1fbdc69";
fsType = "ext4"; fsType = "ext4";
options = [ "defaults" "nofail" "x-gvfs-show" ]; options = [
"defaults"
"nofail"
"x-gvfs-show"
];
}; };
# ═══════════════════════════════════════════════════════════════ # ═══════════════════════════════════════════════════════════════
@@ -161,10 +172,6 @@
extraGroups = [ extraGroups = [
"wheel" # Sudo access "wheel" # Sudo access
"networkmanager" # Network configuration "networkmanager" # Network configuration
# Additional groups are added by modules:
# - docker (dev.nix)
# - gamemode (gaming.nix)
# - corectrl (gpu-amd.nix)
]; ];
shell = pkgs.fish; # Fish shell (migrated from Arch) shell = pkgs.fish; # Fish shell (migrated from Arch)
}; };
@@ -246,9 +253,6 @@
# AI coding # AI coding
claude-code claude-code
# Package managers
pnpm
]; ];
# ═══════════════════════════════════════════════════════════════ # ═══════════════════════════════════════════════════════════════

57
flake.lock generated
View File

@@ -136,22 +136,6 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_3": {
"locked": {
"lastModified": 1762111121,
"narHash": "sha256-4vhDuZ7OZaZmKKrnDpxLZZpGIJvAeMtK6FKLJYUtAdw=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "b3d51a0365f6695e7dd5cdf3e180604530ed33b4",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"noctalia": { "noctalia": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -159,11 +143,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1770149488, "lastModified": 1770150024,
"narHash": "sha256-8TFJGH6PTY453TudyPeWSmwCQsy6hT8W+2CLMMMFx5M=", "narHash": "sha256-sX7I5MJYDVJePQluHr+fL7iG38orZYYYyBCye/xLN1c=",
"owner": "noctalia-dev", "owner": "noctalia-dev",
"repo": "noctalia-shell", "repo": "noctalia-shell",
"rev": "9fe299309e12652ec02c3452fbec4f89c8341029", "rev": "505d6343e078f9a0288bbf16a78d5d7fd72aeeba",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -198,44 +182,9 @@
"nixpkgs": "nixpkgs_2", "nixpkgs": "nixpkgs_2",
"noctalia": "noctalia", "noctalia": "noctalia",
"opencode": "opencode", "opencode": "opencode",
"vicinae": "vicinae",
"zen-browser": "zen-browser" "zen-browser": "zen-browser"
} }
}, },
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"vicinae": {
"inputs": {
"nixpkgs": "nixpkgs_3",
"systems": "systems"
},
"locked": {
"lastModified": 1770143778,
"narHash": "sha256-OA7JKbTQZwtVwjq+DDefRR8rLq3Q4jgHqomsjoiA228=",
"owner": "vicinaehq",
"repo": "vicinae",
"rev": "021532d64503f45052ed782f1be116018ed0c4b1",
"type": "github"
},
"original": {
"owner": "vicinaehq",
"repo": "vicinae",
"type": "github"
}
},
"zen-browser": { "zen-browser": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [

View File

@@ -13,11 +13,6 @@
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
# Application launcher
vicinae = {
url = "github:vicinaehq/vicinae";
};
# Kernel # Kernel
nix-cachyos-kernel.url = "github:xddxdd/nix-cachyos-kernel/release"; nix-cachyos-kernel.url = "github:xddxdd/nix-cachyos-kernel/release";
@@ -37,12 +32,10 @@
# Binary caches for faster builds # Binary caches for faster builds
nixConfig = { nixConfig = {
extra-substituters = [ extra-substituters = [
"https://vicinae.cachix.org"
"https://nix-community.cachix.org" "https://nix-community.cachix.org"
"https://attic.xuyh0120.win/lantian" "https://attic.xuyh0120.win/lantian"
]; ];
extra-trusted-public-keys = [ extra-trusted-public-keys = [
"vicinae.cachix.org-1:1kDrfienkGHPYbkpNj1mWTr7Fm1+zcenzgTizIcI3oc="
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
"lantian:EeAUQ+W+6r7EtwnmYjeVwx5kOGEBpjlBfPlzGlTNvHc=" "lantian:EeAUQ+W+6r7EtwnmYjeVwx5kOGEBpjlBfPlzGlTNvHc="
]; ];

View File

@@ -44,9 +44,6 @@
# DESKTOP PACKAGES # DESKTOP PACKAGES
# ═══════════════════════════════════════════════════════════════ # ═══════════════════════════════════════════════════════════════
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# Vicinae launcher
inputs.vicinae.packages.${pkgs.system}.default
# Polkit agent # Polkit agent
polkit_gnome polkit_gnome

View File

@@ -38,16 +38,17 @@
# ═══════════════════════════════════════════════════════════════ # ═══════════════════════════════════════════════════════════════
# DEVELOPMENT PACKAGES # DEVELOPMENT PACKAGES
# ═══════════════════════════════════════════════════════════════ # ═══════════════════════════════════════════════════════════════
# NOTE: GUI tools (dbeaver) and optional TUIs (lazygit, lazydocker) are in `nix profile`
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# ─── Containers ─── # ─── Containers ───
docker-compose # Docker Compose v2 docker-compose # Docker Compose v2
lazydocker
# ─── Languages & Runtimes ─── # ─── Languages & Runtimes ───
nodejs_22 # Node.js LTS (for Vicinae extensions, etc.) bun
bun # Fast JavaScript runtime/bundler pnpm
python3 # Python 3 nodejs
rustup # Rust toolchain manager python3
rustup
# ─── Build Tools ─── # ─── Build Tools ───
gcc gcc
@@ -57,13 +58,13 @@
# ─── Version Control ─── # ─── Version Control ───
git git
gh # GitHub CLI gh
delta # Better git diff delta
lazygit # Git UI lazygit
# ─── Editors & LSP ─── # ─── Editors & LSP ───
# nil already in base config (Nix LSP) nil
nixfmt # Nix formatter nixfmt
# ─── CLI Utilities ─── # ─── CLI Utilities ───
jq # JSON processor jq # JSON processor
@@ -73,7 +74,7 @@
fzf # Fuzzy finder fzf # Fuzzy finder
eza # Modern ls eza # Modern ls
bat # Cat with syntax highlighting bat # Cat with syntax highlighting
broot broot # TUI Folder Tree
# Additional CLI tools # Additional CLI tools
tealdeer # tldr - simplified man pages tealdeer # tldr - simplified man pages
@@ -82,7 +83,4 @@
pv # Pipe viewer (progress bar for pipes) pv # Pipe viewer (progress bar for pipes)
parallel # GNU parallel (run commands in parallel) parallel # GNU parallel (run commands in parallel)
]; ];
# Note: Shell aliases are now managed in shell.nix (Fish shell)
# Zsh is kept as a fallback shell but Fish is the primary
} }

View File

@@ -1,62 +0,0 @@
# modules/virtualization.nix
# Virtual machine support: QEMU, KVM, libvirt, virt-manager
{
config,
pkgs,
lib,
username,
...
}:
{
# ═══════════════════════════════════════════════════════════════
# LIBVIRT & QEMU
# ═══════════════════════════════════════════════════════════════
virtualisation.libvirtd = {
enable = true;
# QEMU configuration
qemu = {
package = pkgs.qemu_kvm;
# Enable TPM emulation for Windows 11
swtpm.enable = true;
# Run QEMU as non-root for better security
runAsRoot = false;
};
};
# ═══════════════════════════════════════════════════════════════
# SPICE SUPPORT (for better VM display/clipboard/USB)
# ═══════════════════════════════════════════════════════════════
virtualisation.spiceUSBRedirection.enable = true;
# ═══════════════════════════════════════════════════════════════
# NETWORKING FOR VMS
# ═══════════════════════════════════════════════════════════════
# Enable default NAT network (virbr0)
networking.firewall.trustedInterfaces = [ "virbr0" ];
# ═══════════════════════════════════════════════════════════════
# PACKAGES
# ═══════════════════════════════════════════════════════════════
environment.systemPackages = with pkgs; [
virt-manager # GUI for managing VMs
virt-viewer # Viewer for VM displays (SPICE/VNC)
virtiofsd # Fast file sharing between host and VM
qemu-utils # QEMU utilities (qemu-img, etc.)
spice-gtk # SPICE client libraries
];
# ═══════════════════════════════════════════════════════════════
# USER PERMISSIONS
# ═══════════════════════════════════════════════════════════════
users.users.${username}.extraGroups = [ "libvirtd" ];
# ═══════════════════════════════════════════════════════════════
# DCONF SETTINGS FOR VIRT-MANAGER
# ═══════════════════════════════════════════════════════════════
# Auto-connect to the system QEMU/KVM
programs.virt-manager.enable = true;
}