[BREAKING] Provide runtime environment systemd services from munix
These services evolve as munix evolves, so they should not be part of the system closures themselves. Mount them into /run/systemd instead. (Yes, making /run/systemd/system a symlink to RO files is unfortunate, that could be changed in the future. FS prep code is annoying too..)
This commit is contained in:
parent
604ebc1356
commit
38a96b79b3
18 changed files with 125 additions and 112 deletions
|
|
@ -1,9 +1,18 @@
|
|||
{ stdenv, writeScriptBin, symlinkJoin, makeWrapper, muvm, passt, bubblewrap, sidebus-broker, mesa, rustc }:
|
||||
{ stdenv, writeScriptBin, symlinkJoin, makeWrapper, muvm, passt, bubblewrap, sidebus-broker, wl-cross-domain-proxy, mesa, rustc }:
|
||||
|
||||
let
|
||||
munixScript = (writeScriptBin "munix" (builtins.readFile ../../munix)).overrideAttrs(old: {
|
||||
buildCommand = "${old.buildCommand}\n patchShebangs $out";
|
||||
});
|
||||
munixSystemd = stdenv.mkDerivation {
|
||||
name = "munix-systemd";
|
||||
src = ../../systemd;
|
||||
dontUnpack = true;
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp -aR $src/* $out
|
||||
'';
|
||||
};
|
||||
microActivate = stdenv.mkDerivation {
|
||||
name = "micro-activate";
|
||||
src = ../../micro-activate.rs;
|
||||
|
|
@ -19,9 +28,9 @@ let
|
|||
};
|
||||
in symlinkJoin {
|
||||
name = "munix";
|
||||
paths = [ munixScript microActivate muvm passt bubblewrap sidebus-broker ];
|
||||
paths = [ munixScript microActivate muvm passt bubblewrap sidebus-broker wl-cross-domain-proxy ];
|
||||
buildInputs = [ makeWrapper ];
|
||||
postBuild = ''
|
||||
wrapProgram $out/bin/munix --prefix PATH : $out/bin --set FALLBACK_OPENGL_DRIVER ${mesa}
|
||||
wrapProgram $out/bin/munix --prefix PATH : $out/bin --set FALLBACK_OPENGL_DRIVER ${mesa} --set MUNIX_SYSTEMD_UNITS ${munixSystemd}
|
||||
'';
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue