Commit graph

409 commits

Author SHA1 Message Date
Julian Sutter
f86404672e ai.nix + micro 2025-11-04 09:20:30 -08:00
Julian Sutter
19898751a8 ai.nix 2025-11-03 13:40:55 -08:00
Julian Sutter
522818dc25 more cleanup 2025-11-03 09:59:45 -08:00
e80cc15caf updates and cleanup 2025-11-03 09:25:36 -08:00
Julian Sutter
de62048229 cleanup labrizor 2025-11-03 08:55:39 -08:00
Julian Sutter
fdef5ee3b0 updates 2025-10-23 12:58:28 -07:00
Julian Sutter
7ff2634405 Merge branch 'master' of https://git.symbiotrip.com/jsutter/nixos 2025-09-09 19:20:33 -07:00
Julian Sutter
aaa0cf7659 updates 2025-09-08 10:25:10 -07:00
Julian Sutter
7048577c26 tailscale 2025-08-06 11:37:03 -07:00
Julian Sutter
3cdec3c55c tailscale 2025-08-06 11:10:43 -07:00
Julian Sutter
bf8c3116e8 tailscale 2025-08-06 11:08:34 -07:00
Julian Sutter
b9a33662c3 tailscale 2025-08-06 11:08:03 -07:00
Julian Sutter
9d18a6176c rustdesk 2025-08-06 10:56:04 -07:00
Julian Sutter
51dfd3e5e8 vscode fix 2025-08-04 14:32:17 -07:00
Julian Sutter
0494ff1fd6 lshwstuff 2025-08-04 14:31:48 -07:00
Julian Sutter
86fe2fc417 plugdev 2025-08-04 14:19:53 -07:00
Julian Sutter
b3d54dbfad cleanup virt.nix 2025-08-04 14:15:49 -07:00
Julian Sutter
56f926d5c0 25.05 switch and spicy update 2025-08-04 14:12:35 -07:00
Julian Sutter
f93fe7e308 Fix Plasma config generation to properly add applications: prefix
- Remove applications: prefix from all desktop modules (plasma.nix, gaming.nix, office.nix, dev.nix, media.nix, dnm.nix)
- Update Plasma config generation to add applications: prefix during merge using map function
- This ensures clean desktop file names in modules while generating correct Plasma format
- All 14 applications from all desktop modules now properly pinned to taskbar
- Modular Plasma pinning system is now fully functional and robust
2025-07-31 01:49:38 -07:00
Julian Sutter
8de6c0fc28 Fix desktop file format in all desktop modules
- Remove incorrect 'applications:' prefix from desktop file names
- All modules now use correct format (e.g., 'steam.desktop' not 'applications:steam.desktop')
- Fixed modules: gaming.nix, office.nix, dev.nix, media.nix, dnm.nix
- Modular Plasma pinning system now works correctly for all desktop modules
- All 14 applications should now appear pinned after Plasma session restart
2025-07-31 01:46:34 -07:00
Julian Sutter
f6e63e555c Implement modular Plasma taskbar pinning system
- Add modular pinning system using NixOS module options
- Each desktop module now defines its own pinned applications:
  * plasma.nix: konsole, dolphin, firefox, tigervnc
  * gaming.nix: steam, discord
  * office.nix: slack, signal, libreoffice-writer, libreoffice-calc
  * dev.nix: windsurf
  * media.nix: rustdesk
  * dnm.nix: tor-browser, kleopatra (moved from crypto.nix)
- Move Plasma config from user-specific to desktop module for consistency
- Rename crypto.nix to dnm.nix and update references
- All users with Plasma desktop get automatic taskbar pinning
- Applications only appear when their desktop modules are active
2025-07-31 01:13:57 -07:00
Julian Sutter
6a4fa7dcef Implement modular Plasma application pinning system
- Add comprehensive Plasma taskbar configuration to users/jsutter.nix
- Configure pinned applications based on active desktop modules:
  * Base (plasma): konsole, dolphin, firefox, tigervnc, tor, kleopatra
  * Development (dev.nix): windsurf
  * Office (office.nix): slack, signal, libreoffice-writer, libreoffice-calc
  * Gaming (gaming.nix): discord, steam
- Add required packages to plasma.nix: firefox, tor-browser, kleopatra
- Use static list approach - Plasma ignores missing .desktop files
- Applications only appear when their corresponding module is active
- Maintains modularity while providing consistent desktop experience

Result: Clean, adaptive taskbar that automatically adjusts based on
which desktop modules are included in the system configuration.
2025-07-30 23:44:27 -07:00
Julian Sutter
9cf781aa18 Clean up user configuration and organize documentation
- Remove Syncthing service and configurations from users/jsutter.nix
- Remove OpenVPN configurations and delete users/openvpn/ folder
- Move Android development (programs.adb.enable) to desktop/dev.nix
- Remove syncthing and adbusers groups from user extraGroups
- Organize documentation: move README-hybrid-packages.md to docs/ folder
- Keep main README.md in root for project overview

Result: Cleaner, more focused user configuration with development
features properly organized in desktop modules and documentation
structured in dedicated docs folder.
2025-07-30 23:25:24 -07:00
Julian Sutter
61c3722f5a Refactor NixOS configuration: Move GUI apps to desktop modules and create headless config
- Move GUI applications from users/jsutter.nix to appropriate desktop modules:
  * office.nix: slack, signal-desktop
  * gaming.nix: discord, stremio
  * plasma.nix: arc-theme, pinentry, tigervnc
  * dev.nix: putty
  * media.nix (new): vlc, deluge

- Create systems/common-headless.nix for server configurations:
  * Remove GUI dependencies (Flatpak, XDG portals, fonts, graphics drivers)
  * Include only essential CLI tools and server packages
  * Disable X server completely

- Simplify skip01 configuration:
  * Remove Intel graphics drivers and OpenGL support
  * Use headless common configuration
  * Keep unified users/jsutter.nix (no split files)

- Update flake.nix to include new media.nix module in desktop systems

Result: Clean separation between desktop and headless configurations
with improved modularity and maintainability.
2025-07-30 23:17:55 -07:00
cb68b1cc02 Update README.md 2025-07-31 01:06:13 +00:00
f6a242b3a2 Update README.md 2025-07-31 01:05:35 +00:00
3d9b846ca7 Update README.md 2025-07-31 01:01:43 +00:00
f49cc2e32e update readme to use PAT for forgejo login 2025-07-31 00:53:14 +00:00
Julian Sutter
95423e79ad signal unstable 2025-07-30 17:09:19 -07:00
Julian Sutter
268cdf2716 Refactor flake.nix for DRY (Don't Repeat Yourself) principles
- Extract common specialArgs into reusable commonSpecialArgs variable
- Create mkSystem helper function to eliminate duplication
- Extract commonDesktopModules for shared desktop configurations
- Reduce flake.nix from ~90 lines to ~60 lines with better maintainability
- All system configurations (framework, aurora, labrizor, skip01) now use consistent pattern
- Maintain full functionality while dramatically reducing code duplication

Benefits:
- Single source of truth for specialArgs configuration
- Easier to add new systems or modify existing ones
- More maintainable and readable code structure
- Consistent unstable package access across all systems
2025-07-30 15:02:41 -07:00
Julian Sutter
c6430c0443 Implement hybrid package management: stable + selective unstable
- Add nixpkgs-unstable input to flake.nix
- Configure specialArgs to pass pkgs-unstable to all system configs
- Update desktop/dev.nix to use windsurf from unstable packages
- Create comprehensive documentation in README-hybrid-packages.md
- Enable selective use of cutting-edge packages while maintaining system stability

Usage: Add pkgs-unstable parameter to any .nix file and use pkgs-unstable.package-name
Example: pkgs-unstable.windsurf for latest Windsurf editor
2025-07-30 14:59:12 -07:00
Julian Sutter
21830a1ba7 Migrate to NixOS 24.05 stable branch
- Update flake.nix to use nixos-24.05 and home-manager release-24.05
- Remove deprecated services.pulseaudio configurations
- Fix home-manager compatibility issues:
  - Update stateVersion from 24.11 to 24.05
  - Change VSCode profiles.default.extensions to extensions
  - Update ZSH initContent to initExtra
  - Remove incompatible git signing.format option
- Remove unavailable windsurf package from dev.nix
- Successfully tested with nixos-rebuild dry-run
2025-07-30 14:55:16 -07:00
Julian Sutter
ff29175a04 git credential store 2025-07-30 14:46:02 -07:00
Julian Sutter
1e70121b00 Add skip01 NixOS configuration for Intel NUC server
- Created systems/skip01.nix with 13th gen Intel i5 NUC optimizations
- Configured for headless server operation with SSH access
- Enabled Docker and Podman for container services
- Added Intel graphics support and thermal management
- Network performance tuning for server workloads
- Added skip01 to flake.nix nixosConfigurations
2025-07-29 19:03:57 -07:00
Julian Sutter
7a057122db updates 2025-07-29 16:59:37 -07:00
Julian Sutter
698165d0de thunderbird 2025-07-29 16:58:57 -07:00
Julian Sutter
8c8814ce1e good 2025-07-22 23:54:25 -07:00
Julian Sutter
1696fff3b7 add firmware updates and disable kde update thing 2025-07-22 23:50:21 -07:00
Julian Sutter
e8e3ee0b8b updates 2025-07-22 23:43:28 -07:00
Julian Sutter
153134503d Fix zsh deprecation warning: replace initExtra with initContent 2025-07-18 22:44:31 -07:00
Julian Sutter
4b91870bfb Remove cloudflared module file and commit remaining changes 2025-07-18 22:42:32 -07:00
Julian Sutter
56fdb16b24 Remove cloudflared ftl.host module from all systems 2025-07-18 22:41:37 -07:00
Julian Sutter
13d1e33dd6 Fix cloudflared command flags 2025-07-18 22:24:35 -07:00
Julian Sutter
f3b2675677 Simplify cloudflared service to minimal working configuration 2025-07-18 22:23:49 -07:00
Julian Sutter
12b1281e88 Fix cloudflared configuration with simple direct service 2025-07-18 22:20:08 -07:00
Julian Sutter
bddfe0b656 Simplify cloudflared tunnel configuration 2025-07-18 22:18:55 -07:00
Julian Sutter
8c5b711681 Switch to using Cloudflare named tunnels for persistent connections 2025-07-18 22:17:24 -07:00
Julian Sutter
8454109f64 Clean up cloudflared service configuration and fix user/permissions 2025-07-18 22:14:48 -07:00
Julian Sutter
8646e5a9f8 Fix cloudflared service to ensure it runs persistently 2025-07-18 22:11:38 -07:00
Julian Sutter
0c2f06bd72 Fix cloudflared service with preStart script to ensure log directory and file exist 2025-07-18 22:09:02 -07:00