runInVM: split out
...the ${vmName} argument was kept for compat, which is no longer necessary
This commit is contained in:
parent
6dcd2a370a
commit
dc583da67e
2 changed files with 30 additions and 24 deletions
|
|
@ -2,6 +2,7 @@
|
|||
lib,
|
||||
newScope,
|
||||
makeDesktopItem,
|
||||
writeShellScript,
|
||||
writeShellScriptBin,
|
||||
}:
|
||||
|
||||
|
|
@ -18,29 +19,34 @@ lib.makeScope newScope (self: {
|
|||
mkRunInVM = vmName: lib.getExe (self.mkRunInVMPkg vmName);
|
||||
mkRunInVMPkg =
|
||||
vmName:
|
||||
writeShellScriptBin "run-in-${vmName}" ''
|
||||
localArgs=(
|
||||
${lib.optionalString self.useSessionUnits "--user"}
|
||||
--property=Requires=${self.vmUnitPrefix}${vmName}.service
|
||||
--property=After=${self.vmUnitPrefix}${vmName}.service
|
||||
--property=SyslogIdentifier="$1 (${vmName})"
|
||||
)
|
||||
remoteArgs=(
|
||||
systemd-run
|
||||
--user
|
||||
--property=StandardError="journal+console"
|
||||
--property=StandardOutput="journal+console"
|
||||
--property=OOMScoreAdjust=${toString self.oomScoreAdjust}
|
||||
${lib.optionalString (self.waylandProxyUnit != null) ''
|
||||
--property=Requires=${self.waylandProxyUnit}
|
||||
--property=After=${self.waylandProxyUnit}
|
||||
''}
|
||||
)
|
||||
systemd-run \
|
||||
"''${localArgs[@]}" \
|
||||
ssh ${self.vmUser}@${self.vmSshPrefix}${vmName} \
|
||||
"''${remoteArgs[@]}" $@
|
||||
'';
|
||||
lib.warn "Use `\${runInVM} foobar` instead of `\${mkRunInVMPkg foobar}`" (
|
||||
writeShellScriptBin "run-in-${vmName}" "${lib.getExe self.runInVM} ${vmName} $@"
|
||||
);
|
||||
runInVM = writeShellScriptBin "run-in" ''
|
||||
vmName=$1
|
||||
shift
|
||||
localArgs=(
|
||||
${lib.optionalString self.useSessionUnits "--user"}
|
||||
--property=Requires="${self.vmUnitPrefix}$vmName".service
|
||||
--property=After="${self.vmUnitPrefix}$vmName".service
|
||||
--property=SyslogIdentifier="$1 ($vmName)"
|
||||
)
|
||||
remoteArgs=(
|
||||
systemd-run
|
||||
--user
|
||||
--property=StandardError="journal+console"
|
||||
--property=StandardOutput="journal+console"
|
||||
--property=OOMScoreAdjust=${toString self.oomScoreAdjust}
|
||||
${lib.optionalString (self.waylandProxyUnit != null) ''
|
||||
--property=Requires=${self.waylandProxyUnit}
|
||||
--property=After=${self.waylandProxyUnit}
|
||||
''}
|
||||
)
|
||||
systemd-run \
|
||||
"''${localArgs[@]}" \
|
||||
ssh "${self.vmUser}@${self.vmSshPrefix}$vmName" \
|
||||
"''${remoteArgs[@]}" $@
|
||||
'';
|
||||
|
||||
# Actual .desktop item adapters
|
||||
toVM =
|
||||
|
|
|
|||
|
|
@ -240,7 +240,7 @@ in
|
|||
[
|
||||
{
|
||||
environment.systemPackages = [
|
||||
(desktopItems.mkRunInVMPkg "browser")
|
||||
(desktopItems.runInVM)
|
||||
(pkgs.makeDesktopItem (
|
||||
desktopItems.toBrowser (
|
||||
(desktopItems.toVM "browser" {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue