update
This commit is contained in:
@@ -169,9 +169,10 @@
|
|||||||
# ═══════════════════════════════════════════════════════════════
|
# ═══════════════════════════════════════════════════════════════
|
||||||
# SYSTEM PACKAGES (Base essentials)
|
# SYSTEM PACKAGES (Base essentials)
|
||||||
# ═══════════════════════════════════════════════════════════════
|
# ═══════════════════════════════════════════════════════════════
|
||||||
|
# NOTE: GUI apps and fast-updating tools are managed via `nix profile`
|
||||||
|
# Run `update-apps` to update them, `list-apps` to see installed
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# Core utilities
|
# Core utilities
|
||||||
fastfetch
|
|
||||||
micro
|
micro
|
||||||
wget
|
wget
|
||||||
curl
|
curl
|
||||||
@@ -188,22 +189,12 @@
|
|||||||
# File management
|
# File management
|
||||||
nautilus
|
nautilus
|
||||||
|
|
||||||
# Editors
|
# Flake inputs (desktop shell)
|
||||||
zed-editor
|
|
||||||
|
|
||||||
# Browser
|
|
||||||
inputs.zen-browser.packages.${pkgs.system}.default
|
|
||||||
|
|
||||||
# Flake inputs
|
|
||||||
inputs.noctalia.packages.${pkgs.system}.default
|
inputs.noctalia.packages.${pkgs.system}.default
|
||||||
inputs.opencode.packages.${pkgs.system}.default
|
|
||||||
|
|
||||||
# Terminal
|
# Terminal
|
||||||
ghostty
|
ghostty
|
||||||
|
|
||||||
# AI coding
|
|
||||||
claude-code
|
|
||||||
|
|
||||||
# Package managers
|
# Package managers
|
||||||
pnpm
|
pnpm
|
||||||
];
|
];
|
||||||
|
|||||||
17
flake.nix
17
flake.nix
@@ -4,27 +4,24 @@
|
|||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
|
|
||||||
|
# Desktop shell
|
||||||
noctalia = {
|
noctalia = {
|
||||||
url = "github:noctalia-dev/noctalia-shell";
|
url = "github:noctalia-dev/noctalia-shell";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
zen-browser = {
|
# Application launcher
|
||||||
url = "github:youwen5/zen-browser-flake";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
opencode = {
|
|
||||||
url = "github:anomalyco/opencode";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
vicinae = {
|
vicinae = {
|
||||||
url = "github:vicinaehq/vicinae";
|
url = "github:vicinaehq/vicinae";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Kernel
|
||||||
nix-cachyos-kernel.url = "github:xddxdd/nix-cachyos-kernel/release";
|
nix-cachyos-kernel.url = "github:xddxdd/nix-cachyos-kernel/release";
|
||||||
|
|
||||||
|
# NOTE: GUI apps (zen-browser, opencode) are now managed via `nix profile`
|
||||||
|
# Install with: nix profile install github:youwen5/zen-browser-flake
|
||||||
|
# nix profile install github:anomalyco/opencode
|
||||||
};
|
};
|
||||||
|
|
||||||
# Binary caches for faster builds
|
# Binary caches for faster builds
|
||||||
|
|||||||
@@ -8,46 +8,12 @@
|
|||||||
}:
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
|
# NOTE: Most GUI apps are managed via `nix profile` for faster updates
|
||||||
|
# Run `update-apps` to update, `list-apps` to see installed
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# ─────────────────────────────────────────────────────────────
|
# ─────────────────────────────────────────────────────────────
|
||||||
# Media Viewers
|
# File Management (GNOME integration)
|
||||||
# ─────────────────────────────────────────────────────────────
|
# ─────────────────────────────────────────────────────────────
|
||||||
loupe # GNOME image viewer
|
|
||||||
evince # PDF/document viewer
|
|
||||||
celluloid # MPV frontend (GTK video player)
|
|
||||||
mpv # Powerful CLI video player
|
|
||||||
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
|
||||||
# Music
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
|
||||||
amberol # Simple music player for local files
|
|
||||||
feishin # Navidrome/Jellyfin client
|
|
||||||
picard # MusicBrainz Picard - music tagger
|
|
||||||
beets # Music library manager
|
|
||||||
cava # Audio visualizer
|
|
||||||
# Feishin available via Flatpak for Navidrome/Jellyfin
|
|
||||||
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
|
||||||
# Communication
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
|
||||||
vesktop # Discord client (Wayland-native, with Vencord)
|
|
||||||
thunderbird # Email client
|
|
||||||
signal-desktop # Encrypted messaging
|
|
||||||
telegram-desktop # Telegram client
|
|
||||||
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
|
||||||
# Office & Productivity
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
|
||||||
libreoffice-fresh # Office suite (latest)
|
|
||||||
obsidian # Note-taking with Markdown
|
|
||||||
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
|
||||||
# System Utilities
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
|
||||||
btop # Modern system monitor (terminal)
|
|
||||||
mission-center # GNOME system monitor (GUI, like Windows Task Manager)
|
|
||||||
|
|
||||||
# File management
|
|
||||||
file-roller # Archive manager (GUI)
|
file-roller # Archive manager (GUI)
|
||||||
gnome-disk-utility # Disk management
|
gnome-disk-utility # Disk management
|
||||||
|
|
||||||
@@ -58,30 +24,13 @@
|
|||||||
unrar
|
unrar
|
||||||
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
# ─────────────────────────────────────────────────────────────
|
||||||
# Screenshots & Screen Recording
|
# Security (GNOME Keyring integration)
|
||||||
# ─────────────────────────────────────────────────────────────
|
# ─────────────────────────────────────────────────────────────
|
||||||
swappy # Screenshot annotation tool
|
|
||||||
# grim + slurp already in your base config
|
|
||||||
|
|
||||||
# Screen recording
|
|
||||||
obs-studio # Full-featured streaming/recording suite
|
|
||||||
gpu-screen-recorder # Lightweight GPU-accelerated recorder (AMD/NVIDIA/Intel)
|
|
||||||
kooha # Simple GNOME-style screen recorder
|
|
||||||
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
|
||||||
# Security & Passwords
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
|
||||||
bitwarden-desktop # Password manager
|
|
||||||
seahorse # GNOME Keyring GUI
|
seahorse # GNOME Keyring GUI
|
||||||
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
# ─────────────────────────────────────────────────────────────
|
||||||
# Utilities
|
# System Tools
|
||||||
# ─────────────────────────────────────────────────────────────
|
# ─────────────────────────────────────────────────────────────
|
||||||
gnome-calculator # Calculator
|
|
||||||
gnome-clocks # World clocks, alarms, timers
|
|
||||||
baobab # Disk usage analyzer
|
|
||||||
localsend # AirDrop-like file sharing (cross-platform)
|
|
||||||
meld # Visual diff and merge tool
|
|
||||||
rclone # Cloud storage sync (Google Drive, Dropbox, etc.)
|
rclone # Cloud storage sync (Google Drive, Dropbox, etc.)
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -30,12 +30,12 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
# 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 # Terminal UI for Docker
|
|
||||||
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
# ─────────────────────────────────────────────────────────────
|
||||||
# Languages & Runtimes
|
# Languages & Runtimes
|
||||||
@@ -58,7 +58,6 @@
|
|||||||
# ─────────────────────────────────────────────────────────────
|
# ─────────────────────────────────────────────────────────────
|
||||||
git
|
git
|
||||||
gh # GitHub CLI
|
gh # GitHub CLI
|
||||||
lazygit # Terminal UI for Git
|
|
||||||
delta # Better git diff
|
delta # Better git diff
|
||||||
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
# ─────────────────────────────────────────────────────────────
|
||||||
@@ -68,7 +67,7 @@
|
|||||||
nixfmt # Nix formatter
|
nixfmt # Nix formatter
|
||||||
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
# ─────────────────────────────────────────────────────────────
|
||||||
# CLI Utilities
|
# CLI Utilities (used by shell aliases)
|
||||||
# ─────────────────────────────────────────────────────────────
|
# ─────────────────────────────────────────────────────────────
|
||||||
jq # JSON processor
|
jq # JSON processor
|
||||||
yq # YAML processor
|
yq # YAML processor
|
||||||
@@ -77,23 +76,13 @@
|
|||||||
fzf # Fuzzy finder
|
fzf # Fuzzy finder
|
||||||
eza # Modern ls
|
eza # Modern ls
|
||||||
bat # Cat with syntax highlighting
|
bat # Cat with syntax highlighting
|
||||||
httpie # Better curl
|
|
||||||
curlie # Curl wrapper with httpie-like syntax
|
|
||||||
|
|
||||||
# Additional CLI tools (migrated from Arch)
|
# Additional CLI tools
|
||||||
tealdeer # tldr - simplified man pages
|
tealdeer # tldr - simplified man pages
|
||||||
duf # Better df (disk usage)
|
duf # Better df (disk usage)
|
||||||
sd # Better sed (find & replace)
|
sd # Better sed (find & replace)
|
||||||
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)
|
||||||
inxi # System information tool
|
|
||||||
glances # System monitor (htop alternative)
|
|
||||||
grc # Generic colorizer for CLI output
|
|
||||||
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
|
||||||
# Database Tools
|
|
||||||
# ─────────────────────────────────────────────────────────────
|
|
||||||
dbeaver-bin # Universal database tool (GUI)
|
|
||||||
];
|
];
|
||||||
|
|
||||||
# Note: Shell aliases are now managed in shell.nix (Fish shell)
|
# Note: Shell aliases are now managed in shell.nix (Fish shell)
|
||||||
|
|||||||
@@ -43,20 +43,14 @@
|
|||||||
hardware.steam-hardware.enable = true;
|
hardware.steam-hardware.enable = true;
|
||||||
|
|
||||||
# Gaming packages
|
# Gaming packages
|
||||||
|
# NOTE: Game launchers (lutris, heroic, protonup-qt) are in `nix profile`
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# Game launchers
|
|
||||||
lutris # Multi-platform game launcher
|
|
||||||
heroic # Epic Games & GOG launcher
|
|
||||||
|
|
||||||
# Proton management
|
|
||||||
protonup-qt # GUI to manage Proton-GE versions
|
|
||||||
|
|
||||||
# Wine for non-Steam games
|
# Wine for non-Steam games
|
||||||
wineWowPackages.stagingFull # Latest Wine with all features
|
wineWowPackages.stagingFull # Latest Wine with all features
|
||||||
winetricks # Wine helper scripts
|
winetricks # Wine helper scripts
|
||||||
protontricks # Proton helper scripts (like winetricks for Proton)
|
protontricks # Proton helper scripts (like winetricks for Proton)
|
||||||
|
|
||||||
# Misc gaming utilities
|
# Gaming utilities (system integration)
|
||||||
gamemode # CLI tool to trigger gamemode
|
gamemode # CLI tool to trigger gamemode
|
||||||
gamescope # Micro-compositor for games (fixes some issues)
|
gamescope # Micro-compositor for games (fixes some issues)
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -76,6 +76,10 @@
|
|||||||
search = "nix search nixpkgs";
|
search = "nix search nixpkgs";
|
||||||
gc-nix = "sudo nix-collect-garbage -d";
|
gc-nix = "sudo nix-collect-garbage -d";
|
||||||
|
|
||||||
|
# User profile (GUI apps, fast-updating tools)
|
||||||
|
update-apps = "nix profile upgrade '.*'";
|
||||||
|
list-apps = "nix profile list";
|
||||||
|
|
||||||
# System
|
# System
|
||||||
ports = "ss -tulanp";
|
ports = "ss -tulanp";
|
||||||
myip = "curl -s ifconfig.me";
|
myip = "curl -s ifconfig.me";
|
||||||
|
|||||||
Reference in New Issue
Block a user