Commit graph

394 commits

Author SHA1 Message Date
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
Julian Sutter
6419e44222 Add cloudflared TCP tunnel module for ftl.host 2025-07-18 22:06:58 -07:00
Julian Sutter
c28af3e123 Fix Framework 16 stability issues: disable USB autosuspend, adjust TLP settings, temporarily disable problematic packages 2025-07-15 20:55:30 -07:00
Julian Sutter
c2cf1cb0d8 update 2025-07-01 12:09:21 -07:00
Julian Sutter
e7c03cf19d remove surge-xt 2025-06-27 22:02:53 -07:00
Julian Sutter
c111089c37 updates 2025-06-10 20:38:29 -07:00
Julian Sutter
391b83a4dd updates 2025-05-27 11:32:59 -07:00
Julian Sutter
8217f59e8a remove lsd.enablealiases 2025-05-14 16:04:28 -07:00
Julian Sutter
58af5b9276 updates 2025-05-14 16:02:48 -07:00
Julian Sutter
ff05f2c486 added daw 2025-04-26 20:15:03 -07:00
Julian Sutter
c837ce81ac added daw 2025-04-26 20:13:16 -07:00
Julian Sutter
be4255e26f updates & crypto 2025-04-26 20:07:24 -07:00
Julian Sutter
256b163931 Add users/common-home.nix for shared home-manager config 2025-04-25 23:30:57 -07:00
Julian Sutter
3bf2b1bd9f updates 2025-04-23 14:31:15 -07:00
Julian Sutter
942ce2e968 uv 2025-04-14 13:03:35 -07:00
Julian Sutter
f7340b744f node & pip 2025-04-14 13:01:35 -07:00