Skip to content

T11: NixOS production module #17

Description

@jonocodes

Parent

#6

What to build

A production NixOS module at packaging/nixos/deckd.nix that provides a complete, declarative setup for running deckd. Supersedes the spike module (packaging/nixos/deckd-spike.nix).

The module provides:

  • services.udev.extraRules for /dev/uinput access
  • users.users.<name>.extraGroups = ["input"]
  • systemd.user.services.deckd pointing at the installed package, serving the built client dist

Verify on a clean NixOS machine (or a fresh VM) that importing the module and enabling the service produces a working daemon reachable from a browser.

Acceptance criteria

  • packaging/nixos/deckd.nix exists and is importable
  • Enabling the module starts the daemon as a user service on login
  • The udev rule is installed and /dev/uinput is accessible to the daemon user after reboot
  • The built client is served by the daemon (no separate web server needed)
  • Clean-machine test: import module, rebuild, reboot, verify just check-uinput passes and deckctl status returns ok
  • The spike module (packaging/nixos/deckd-spike.nix) is retired with a comment pointing to the new module

Blocked by

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    low-priorityAcknowledged but parked; not in active queuemilestoneMilestone work item (post-spike)ready-for-agentFully specified, ready for an AFK agent

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions