nandi/frqpublic Fork 0
a400a00
Commits
Clone
git clone https://git.rickub.com/nandi/frq.git
git clone ssh://git@rickub.com/nandi/frq.git

Host key fingerprint (ed25519): SHA256:iycHnxEyq0Q7uyVpB7JlznP0G7JrTPXLYRcAU5CSLhc — verify it before your first connect.

Follow the xorg renames, and stop wrapping nix in distrobox

The xorg package set is deprecated; the four X libs the runtime loader
path needs are now top-level attributes.

CLAUDE.md's nix rule was written from the host. Sessions run inside the
Arch container already, so the wrapper it prescribed does not resolve.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
nandi committed 2026-09-02T17:46:21-07:00 Browse files
a400a00 parent: 270bee0
modified CLAUDE.md +8 -9
@@ -2,19 +2,18 @@
22
33 ## Nix
44
5-`nix` is not installed on the host. It lives in the Arch distrobox, so run every
6-nix command through that:
5+You are already running inside the Arch distrobox, where `nix` lives, so run
6+nix commands directly — do not wrap them in `distrobox enter`:
77
88 ```bash
9-distrobox enter arch -- bash -lc 'cd <this directory> && nix build .#frq'
9+nix build .#frq
1010 ```
1111
12-The worktree path is the same inside the container as outside, so `cd "$PWD"`
13-works. A remote builder (`eu.nixbuild.net`) is already configured there; the
14-Android outputs want `--store ssh-ng://eu.nixbuild.net --eval-store auto`, for
15-the reason nix/android.nix gives at the top.
12+A remote builder (`eu.nixbuild.net`) is already configured here; the Android
13+outputs want `--store ssh-ng://eu.nixbuild.net --eval-store auto`, for the
14+reason nix/android.nix gives at the top.
1615
17-One thing that container is *not* representative of: `/etc/localtime` is a
18-regular file there rather than a symlink, so anything that reads the zone out
16+One thing this container is *not* representative of: `/etc/localtime` is a
17+regular file here rather than a symlink, so anything that reads the zone out
1918 of its path sees nothing. That is a real deployment shape, not an artefact —
2019 frq.clock handles it.
@@ -2,19 +2,18 @@
2 2
3 ## Nix3 ## Nix
4 4
5-`nix` is not installed on the host. It lives in the Arch distrobox, so run every5+You are already running inside the Arch distrobox, where `nix` lives, so run
6-nix command through that:6+nix commands directly — do not wrap them in `distrobox enter`:
7 7
8 ```bash8 ```bash
9-distrobox enter arch -- bash -lc 'cd <this directory> && nix build .#frq'9+nix build .#frq
10 ```10 ```
11 11
12-The worktree path is the same inside the container as outside, so `cd "$PWD"`12+A remote builder (`eu.nixbuild.net`) is already configured here; the Android
13-works. A remote builder (`eu.nixbuild.net`) is already configured there; the13+outputs want `--store ssh-ng://eu.nixbuild.net --eval-store auto`, for the
14-Android outputs want `--store ssh-ng://eu.nixbuild.net --eval-store auto`, for14+reason nix/android.nix gives at the top.
15-the reason nix/android.nix gives at the top.
16 15
17-One thing that container is *not* representative of: `/etc/localtime` is a16+One thing this container is *not* representative of: `/etc/localtime` is a
18-regular file there rather than a symlink, so anything that reads the zone out17+regular file here rather than a symlink, so anything that reads the zone out
19 of its path sees nothing. That is a real deployment shape, not an artefact —18 of its path sees nothing. That is a real deployment shape, not an artefact —
20 frq.clock handles it.19 frq.clock handles it.
modified flake.nix +5 -5
@@ -108,7 +108,7 @@
108108
109109 # egui reaches for these with dlopen rather than linking them, so being
110110 # in the cdylib's buildInputs is not enough — whatever starts frq has to
111- # put them on the loader path itself. Without libX11 here, vidya reports
111+ # put them on the loader path itself. Without libx11 here, vidya reports
112112 # "X11 unavailable", falls back to Wayland, and winit refuses to build a
113113 # second event loop after the failed first one.
114114 #
@@ -120,10 +120,10 @@
120120 libGL
121121 libxkbcommon
122122 wayland
123- xorg.libX11
124- xorg.libXcursor
125- xorg.libXi
126- xorg.libXrandr
123+ libx11
124+ libxcursor
125+ libxi
126+ libxrandr
127127 vulkan-loader
128128 ];
129129 in
@@ -108,7 +108,7 @@
108 108
109 # egui reaches for these with dlopen rather than linking them, so being109 # egui reaches for these with dlopen rather than linking them, so being
110 # in the cdylib's buildInputs is not enough — whatever starts frq has to110 # in the cdylib's buildInputs is not enough — whatever starts frq has to
111- # put them on the loader path itself. Without libX11 here, vidya reports111+ # put them on the loader path itself. Without libx11 here, vidya reports
112 # "X11 unavailable", falls back to Wayland, and winit refuses to build a112 # "X11 unavailable", falls back to Wayland, and winit refuses to build a
113 # second event loop after the failed first one.113 # second event loop after the failed first one.
114 #114 #
@@ -120,10 +120,10 @@
120 libGL120 libGL
121 libxkbcommon121 libxkbcommon
122 wayland122 wayland
123- xorg.libX11123+ libx11
124- xorg.libXcursor124+ libxcursor
125- xorg.libXi125+ libxi
126- xorg.libXrandr126+ libxrandr
127 vulkan-loader127 vulkan-loader
128 ];128 ];
129 in129 in