`just build` built 26 upstream components and our two forks. `just install`
installed the same set. Neither touched cosmic-conf or anything under config/,
which meant the recipe that is supposed to produce a desktop produced one with
no config compiler, no bar layout, no rofi theme and no power menu -- a
HyprCosmic session that comes up to a blank screen and cannot be logged out of.
So three lines, in the places the existing recipes already establish:
build cargo build --release --manifest-path cosmic-conf/Cargo.toml
install the binary to $prefix/bin, then tools/install-assets.sh
clean cosmic-conf/target
cargo directly rather than `just cosmic-conf/build-release`, because cosmic-conf
is a crate in this repository rather than a submodule and has no Justfile of its
own to delegate to.
install-assets.sh runs last and with --no-session. Last because it is the only
step whose output is worth reading: several of the files it places name
/usr/share/hyprcosmic as a literal -- a .rasi has no variables and the autostart
file is deliberately not a shell -- so a prefix other than /usr installs them
where nothing will look, and the script says which ones. --no-session because
cosmic-session/install has already placed start-hyprcosmic and
hyprcosmic.desktop by then, and installing them twice would leave it unclear
which recipe owns them.
Verified by running the two new install lines verbatim into a staging root:
eight files, the cosmic-conf binary and the seven shared assets, and no session
entry point among them.