100 Commits
Author SHA1 Message Date
mazex 3e81a2b3b2 Merge branch 'master' of github.com:MarcPartensky/nixos 2026-10-11 21:48:13 -04:00
mazex 038fa010bb feat(deck): add systemd timer for nightly Steam downloads
Wakes the system daily at 01:55 to inhibit sleep for 5h35m,
allowing Steam downloads to complete while the system is asleep.
2026-10-11 21:47:55 -04:00
mazex 355b8c443e feat(tower): configure system stability and enable Roku
Set kernel panic to reboot after 10 seconds.
Enable systemd watchdog for automatic reboot on freeze.
Add ZFS root key to initrd secrets.
Enable the Roku service.
2026-09-24 00:41:46 -04:00
mazex f83a0d194c feat(roku): add roku tv control service
This introduces a new `hermes-agent` MCP server for Roku TVs, allowing control over key presses, brightness, app launching, and status queries via the Roku ECP API.
2026-09-24 00:39:59 -04:00
mazex ef699918e5 chore(nextcloud): add ipv6 proxy, disable sso, set debug log 2026-09-22 18:30:06 -04:00
mazex e9c80ceceb feat(hermes): default to claude subscription provider, install claude-code
- input hermes-agent 0.21.2 -> 0.21.4 (requis par le plugin directsdk)
- claude-code 2.1.223 : extraPackages du service + systemPackages
- provider par défaut : claude-subscription-directsdk-experimental (claude-sonnet-5)
- vision auxiliaire épinglée sur kimi pour préserver le quota Claude Pro
2026-09-22 15:25:11 -04:00
mazex 2cacec63c0 chore(home-manager): pass inputs to modules 2026-09-22 14:35:56 -04:00
mazex ac0996c8c6 build(nextcloud): upgrade to version 33 2026-09-22 10:44:21 -04:00
mazex c87ef4fda3 feat(amazon-mcp): add amazon mcp service
Integrates the `duaragha/amazon-shopping-mcp` server.
Uses Playwright/Chromium for Amazon interactions.
Configured as a `hermes-agent` subprocess.
Includes `amazon-mcp-login` helper for manual session setup.
2026-09-22 10:27:30 -04:00
mazex 094a348497 feat(matrix): add homeserver and whatsapp bridge
Introduces the Matrix homeserver (Synapse) and the mautrix-whatsapp bridge.
Configures Synapse with PostgreSQL, including specific collation requirements.
Sets up secret generation for both services and manages their startup order.
2026-09-22 10:26:37 -04:00
mazex a7ee328388 feat(nextcloud-mcp): enable all apps by default
Remove explicit `--enable-app calendar` argument.
All Nextcloud apps are now exposed by default, providing full functionality.
2026-09-22 09:50:24 -04:00
mazex 8959a5a910 fix(nextcloud): ensure app migrations run after setup
The `nextcloud-setup` service now forces a re-run and executes `occ upgrade` to ensure all app tables are created. This resolves 500 errors for CalDAV due to missing calendar tables.

Also, temporarily disable the `kanidm` service and re-encrypt the `hermes_env` secret.
2026-09-22 09:37:05 -04:00
mazex 48aed99ce3 feat(kanidm): add kanidm identity management service 2026-09-22 01:12:09 -04:00
mazex a27e15f052 fix(nextcloud-mcp): use host network for container
The container needs to access Nextcloud on the host's 127.0.0.1.
Without host networking, 127.0.0.1 inside the container does not point
to the host, leading to Nextcloud 400 errors due to trusted_domains.
2026-09-22 00:54:45 -04:00
mazex 00b8247e53 feat(nextcloud): add mcp env secret
Adds the encrypted `nextcloud_mcp_env` secret to `tower.yml`.
2026-09-22 00:47:02 -04:00
mazex b0f8405a4a feat(nextcloud-mcp): enable and configure service
Configures Nextcloud MCP in single_user_basic mode, exposed on
127.0.0.1:8710 and integrated with Hermes.
Refactors Neovim config to use system nixpkgs input, preventing
duplicate evaluations and warnings.
Removes --upgrade flag from nixos-rebuild in Justfile.
2026-09-22 00:39:51 -04:00
mazex 5d708a0dbe feat(hosts): add macOS and Nix-on-Droid configurations
Introduce base configurations for macOS and Nix-on-Droid hosts.

The macOS configuration sets up Nix-darwin with home-manager, essential system packages, keyboard remapping, and disabled Homebrew.
The Nix-on-Droid configuration provides common environment packages, home-manager integration, and Nix flake support.
2026-09-22 00:16:15 -04:00
mazex a1eafc6c99 style(hermes): format nix configuration 2026-09-22 00:16:03 -04:00
mazex 7209e8e1db feat(hermes): enable nixos-rebuild and cost display
Allow `marc` and `hermes` to run `nixos-rebuild` without password.
Configure `git` for root to access user's flake repository.
Set `tmpfiles` ACLs to grant `hermes` necessary permissions.
Prevent `createHome` for `marc` to avoid breaking `hermes` ACLs.
Temporarily disable `radarr` service.
2026-09-21 23:36:00 -04:00
mazex 1d4b7bf4b6 feat(hermes): configure custom kimi/moonshot provider
add custom provider `kimi-k3-global` for Moonshot API.
set default model to `kimi-k3` with vision and large context.
configure agent and auxiliary vision with max reasoning effort.
update hermes_env secret for new configuration.
2026-09-21 22:32:06 -04:00
mazex da78aea121 feat: add aichat kimi and spotify mcp services
Add Home Manager module for `aichat` CLI, integrating Moonshot/Kimi API.
Uses sops-nix for API key management.

Add `spotify-mcp-server` as a system service, integrated with Hermes.
Manages Spotify credentials via sops-nix.

Enable `nextcloud` OIDC app.
Configure `nextcloud-mcp` to restart on sops secret changes.

Enable `zitadel` service.
2026-09-21 21:42:43 -04:00
mazex 2ba5a019d7 feat(hermes): switch to moonshot kimi as default model
Configure the hermes agent to use moonshot kimi, replacing anthropic
claude sonnet. Update `hermes_env` secret. Comment out beeper mcp
server and add commented-out nextcloud mcp setup.
2026-09-21 21:42:22 -04:00
mazex b8a9c0ef87 feat(nextcloud-mcp): add nextcloud mcp service
Configure a NixOS service to run the Nextcloud MCP server as an OCI container.
Sets up environment variables and a sops secret for OAuth credentials.
2026-09-21 01:31:40 -04:00
mazex 6af189248e chore(deck): update nixpkgs for nixvim and add user tools
Pin nixvim to nixos-26.05 by updating its nixpkgs input.
Configure time zone and disable automatic-timezoned service for the deck profile.
Add numerous CLI and GUI tools for the deck user via home-manager modules.
Include direnv setup and a desktop shortcut for returning to Gaming Mode.
Update home.stateVersion and set EDITOR/VISUAL variables.
2026-09-20 23:18:34 -04:00
mazex d357a41f0d Merge branch 'master' of github.com:MarcPartensky/nixos 2026-09-21 03:08:49 +00:00
mazex 0fe311fe9d feat(switch-emu): add Nintendo Switch emulation module
Configures Eden (yuzu fork) and Ryubing (Ryujinx fork) emulators.
Includes a script and desktop entry for Mario Kart 8 Deluxe.
Sets up game directories, enables Bluetooth, and allows an optional firewall port.
2026-09-21 03:08:46 +00:00
mazex b29a9a33fb feat(eternal-terminal): enable eternal-terminal service
Opens port 2022 in the firewall and includes the service definition.
2026-09-20 22:41:05 -04:00
mazex 730c800124 eternal terminal 2026-09-21 04:37:18 +02:00
mazex 42cc0397dc zellij 2026-09-21 04:17:25 +02:00
mazex 322c08660f Merge branch 'master' of github.com:marcpartensky/nixos 2026-09-20 20:29:31 -04:00
mazex 87429e17b5 fix(nextcloud): improve reverse proxy config, disable app updates
Disable automatic app updates and the app store.
Add `overwritecondaddr` and `trusted_proxies` to ensure Nextcloud correctly handles requests when behind a reverse proxy.
2026-09-20 20:29:20 -04:00
mazex f001356e65 home: profil deck minimal 2026-09-18 01:44:06 +00:00
mazex 784c6c2459 feat(deck): add steam configuration
Integrates `steam-config-nix` for managing Steam settings.
Configures `jovian.devices.steamdeck` with auto-update and gyro DSU.
Sets up `programs.steam.config` for Proton GE and non-Steam apps.
Disables `jovian.decky-loader`.
2026-09-18 01:16:16 +00:00
mazex d055cb4561 deck friendly no auto_wallpaper 2026-09-17 12:39:35 +00:00
mazex 3c94c3f5f9 sops: add deck key 2026-09-17 02:57:41 +00:00
mazex b384aaaffc feat(systemd): disable system suspend and hibernate
This prevents the system from entering suspend, hibernation, hybrid-sleep,
and suspend-then-hibernate states.
2026-09-16 21:50:02 -04:00
mazex 0b452dfdc6 chore(sops): add deck as sops recipient
Adds a new age key for the 'deck' machine to the sops configuration.
Re-encrypts common secrets to include the new recipient.
Also updates .gitignore to ignore all 'result*' files.
2026-09-16 17:37:27 -04:00
mazex 2ab224cbe9 chore(deck): disable Steam Deck vendor drivers 2026-09-16 11:21:08 -04:00
mazex 29341b9145 chore(flake): update nixpkgs inputs and deck system config
update flake.lock for various inputs
switch deck to use jovian's nixpkgs input
fix experimental-features to list format
2026-09-16 10:14:06 -04:00
mazex a38fa9f7d7 feat(deck): add Plasma desktop and ISO build
Integrate Plasma 6 as the default desktop environment for the Steam Deck.
Introduce a new `deck-iso` system for generating an installable ISO.
Refactor `jovian` and `sddm` modules for better composability.
Include `disko`, `sops`, `users`, `networking`, `pipewire`, `xdg` modules.
Enable `zsh`, `openssh`, `rtkit`, and add `git`, `neovim`, `htop`.
2026-09-15 22:58:29 -04:00
mazex cd9b8391ab feat(deck): configure initial NixOS host for Steam Deck
Renames the 'steam' system to 'deck' in flake.nix and sets up the
initial NixOS profile for the Steam Deck. This includes disk
partitioning with disko, a basic hardware configuration, and
enables the Jovian module for Steam Deck specific optimizations.
The previous 'profiles/steam' configuration has been removed.
2026-09-15 21:41:54 -04:00
mazex 091e60b3e5 feat(steam): add system profile for Gamescope with Jovian
Introduces a dedicated NixOS system profile for Steam, integrating Jovian-NixOS for Gamescope.
This includes:
- New 'jovian' flake input and module.
- New 'steam' profile using 'jovian' as a specialisation.
- Opens port 8050 in the tower firewall.
- Sets Alacritty to open maximized in Niri.
2026-09-15 21:14:41 -04:00
mazex c689d33264 feat(niri): add output scaling for Technical Concepts monitor 2026-09-15 20:23:01 -04:00
mazex 275bb843e4 chore(nextcloud): disable bruteforce protection, add trusted IP 2026-09-15 20:08:53 -04:00
mazex 41319ffcc0 Merge branch 'master' of github.com:MarcPartensky/nixos 2026-09-13 23:21:28 +02:00
mazex d42a32487b anywhere 2026-09-13 23:21:06 +02:00
mazex 755d78049b feat(nextcloud): enable service, update port and fix paths 2026-09-13 17:20:25 -04:00
mazex 2a6b79d53c feat(discord-bot): add discord bot service
Integrates the discord bot as a new NixOS service.
This includes adding the flake input, configuring the service,
and setting up its environment variables via sops.
2026-09-13 13:29:38 -04:00
mazex 612090820e feat(hermes): add beeper mcp server configuration
Configures Hermes to connect to a Beeper MCP server.
Updates the `hermes_env` secret to include necessary credentials.
2026-09-12 23:48:01 -04:00
mazex e8372ed9f1 refactor(ssh): use settings and PascalCase for config
Adjusts SSH configuration to use the `settings` option and updates all keys
to PascalCase for consistency with standard SSH config and home-manager.
2026-09-12 23:37:41 -04:00
mazex 802314cbfb feat(kitty): add kitty terminal configuration
Sets up basic kitty configuration, including font, colors, and window settings.
2026-09-12 23:32:31 -04:00
mazex 16b6287c8a feat(hermes): add and configure agent service
Enable the hermes-agent NixOS module and service.
Configure PostgreSQL database and user for Hermes.
Set up Anthropic model integration with dependencies and API URL.
Add hermes_env secret for agent environment variables.
2026-09-12 23:15:50 -04:00
mazex 0f68834e25 refactor(adguard): update service configuration
Restructure AdGuard Home settings by nesting DNS-related options under a `dns` key.
Add `mutableSettings = false` for better NixOS management.
Update upstream and bootstrap DNS servers to Cloudflare and Quad9.
Adjust system nameservers for testing.
2026-09-12 18:51:25 -04:00
mazex d302102e32 chore(config): update timezone and user packages 2026-09-12 18:51:18 -04:00
mazex b2f4f804b2 chore(deps): update nix flake inputs 2026-09-12 18:50:58 -04:00
mazex 478e41d80e fix(geminicommit): update config format and permissions
Adjusts the generated config file to use the `[api]` section and `key` field.
Adds `umask 077` for stricter file permissions and a check for secret readability.
2026-09-12 18:50:48 -04:00
mazex 4dd2dbc26b feat: add gotify service and update zitadel/services config 2026-07-30 14:43:38 +02:00
mazex 0a4fa11446 refactor: adjust bluetooth settings and enable rtkit 2026-07-30 14:43:28 +02:00
mazex 48cf873f42 chore: update flake.lock dependencies 2026-07-29 12:27:02 +02:00
mazex 284aa5686b chore: disable oxicloud service and add postgres setup for hermes 2026-07-28 22:49:39 +02:00
mazex b65f27ac99 chore: add hermes-agent flake input and configuration 2026-07-28 22:24:47 +02:00
mazex 8e9d8b967c chore: update flake inputs and stalwart configuration 2026-07-28 20:19:12 +02:00
mazex 0329abb91c fix: correct syntax error in ssh proxyJump configuration 2026-07-28 16:41:15 +02:00
mazex 846ff3f97c feat: add nil_ls lsp server and osc52 clipboard support 2026-07-28 16:41:05 +02:00
mazex c7574e87c1 fix: remove quote from proxyJump value 2026-07-28 16:27:35 +02:00
mazex 8318b625e2 chore: toggle wireguard and headscale service comments 2026-07-16 17:06:46 +02:00
mazex cbd0aa7a3e feat: add httpie to anywhere profile packages 2026-07-16 15:01:50 +02:00
mazex 1fd2225d7d chore: update flake.lock and add tmux package 2026-07-10 01:42:35 +02:00
mazex 685f1488b5 chore: rotate vaultwarden db password 2026-07-03 17:05:06 +02:00
mazex cd581e5ac5 feat: enable vaultwarden service with secrets management 2026-07-03 16:53:38 +02:00
mazex 922aa4af93 feat: add rename and delete functionality with improved ui 2026-05-24 21:23:13 +02:00
mazex 6c719452e7 refactor: redesign droplify ui and add file listing 2026-05-24 21:12:18 +02:00
mazex 7283d384e5 feat: add droplify service and remove gotify password 2026-05-24 21:06:16 +02:00
mazex a81e454065 feat: add droplify service for html file hosting 2026-05-24 21:06:01 +02:00
mazex 103ce12db5 chore: refactor configs and add services 2026-05-24 20:42:07 +02:00
mazex 548174e784 chore: add postgres ssl certificates and stalwart bob account 2026-05-24 20:41:10 +02:00
mazex 41bc06fa99 chore: add secrets and refactor vaultwarden config 2026-05-24 16:21:54 +02:00
mazex f8a43d67b9 refactor: reorganize jupyterhub python environments and config 2026-05-24 14:34:37 +02:00
mazex 8b170a42c5 feat: add image upscaling tools and set tower hostname 2026-05-24 14:19:21 +02:00
mazex 0a26c567ec chore: add zitadel and minio secrets to tower config 2026-05-24 14:19:18 +02:00
mazex bbb6067cfa style: format macos configuration.nix 2026-05-24 14:19:03 +02:00
mazex 64e89f7735 chore: add spam and noreply email accounts to stalwart 2026-05-22 00:53:39 +02:00
mazex 102ac2f21f feat: enable stalwart mail service with credentials and config 2026-05-22 00:28:25 +02:00
mazex 0f7b882415 style: format nextcloud and services configuration files 2026-05-21 23:26:30 +02:00
mazex 7bae98b5c0 refactor: restructure stalwart mail service configuration 2026-05-21 23:26:30 +02:00
mazex b32a256db6 feat: add minio service configuration with sops secrets 2026-05-21 23:26:30 +02:00
mazex 2fe858c2b7 fix: update zitadel admin user configuration 2026-05-21 22:39:30 +02:00
mazex 1f19306a12 feat: add wireguard vpn service with encrypted secrets 2026-05-21 22:39:27 +02:00
mazex f071a0ff57 feat: enable zitadel service with postgres configuration 2026-05-21 00:39:03 +02:00
mazex a8c0f106c5 chore: update anthropic api key path to use runtime secrets 2026-05-20 23:59:10 +02:00
mazex 8b92672ad0 zitadel 2026-05-20 23:50:11 +02:00
mazex 3ffd284256 refactor: switch from sopswarden to sops and adjust ssh config 2026-05-20 00:13:08 +02:00
mazex 38a356152e chore: update portfolio-optimizer flake lock 2026-05-20 00:13:05 +02:00
mazex 44e1ac6c7a refactor: clean up newt service config and add sops mode 2026-05-20 00:12:56 +02:00
mazex 9f4e4e7e77 fix: update run recipe to use RUN environment variable 2026-05-20 00:12:50 +02:00
mazex d3bb94919f style: remove extra spaces and fix formatting 2026-05-20 00:12:46 +02:00
mazex 7d25d23d7e chore: rotate tower age encryption key 2026-05-20 00:12:32 +02:00
mazex f3d04a094e stolen laptop new sops.yaml 2026-05-19 18:21:05 +02:00
mazex 4be8942e1f fixing sops-nix common.yml 2026-05-19 18:20:13 +02:00
mazex 6c693f8570 chore(avante): switch provider to claude
Use the direct Claude API instead of the claude_code CLI tool.
2026-05-17 08:37:23 +02:00