feat(users/Profpatsch/nix-home): add terminal-emulator to ~/bin

This is an ad-hoc way of adding “well known” executables to my
user directory for now. It’s not pretty, it is what it is.

Change-Id: I93ee1d75b48536692da86485f0ac517aa1935ec4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5335
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
This commit is contained in:
Profpatsch 2022-02-28 13:53:28 +01:00
parent fd519c825f
commit 72b46e8fe8

View file

@ -13,6 +13,7 @@ let
runStow =
{
# “stow package” to stow (see manpage)
# TODO: allow this function to un-stow multiple packages!
stowPackage
, # “target directory” to stow in (see manpage)
targetDir
@ -139,33 +140,64 @@ let
}))
];
scriptsStow =
lib.pipe { } [
(_: makeStowDir [{
stowPackage = "scripts";
originalDir = pkgs.linkFarm "scripts-farm"
([
{
name = "scripts/ytextr";
path = depot.users.Profpatsch.ytextr;
}
]
++
(lib.pipe depot.users.Profpatsch.aliases [
readTreeNamespaceDrvs
(map ({ name, drv }: {
name = "scripts/${name}";
path = drv;
}))
]));
}])
(d: runStow {
stowDir = d;
stowPackage = "scripts";
targetDir = "/home/philip";
stowDirOriginPath = "/home/philip/.local/share/nix-home/stow-origin";
})
];
terminalEmulatorStow =
lib.pipe { } [
(_: makeStowDir [{
stowPackage = "terminal-emulator";
originalDir = pkgs.linkFarm "terminal-emulator-farm"
([
{
name = "bin/terminal-emulator";
path = depot.users.Profpatsch.alacritty;
}
]);
}])
(d: runStow {
stowDir = d;
stowPackage = "terminal-emulator";
targetDir = "/home/philip";
# TODO: this should only be done once, in a single runStow instead of multiple
stowDirOriginPath = "/home/philip/.local/share/nix-home/stow-origin-terminal-emulator";
})
];
in
# TODO: temp setup
lib.pipe { } [
(_: makeStowDir [{
stowPackage = "scripts";
originalDir = pkgs.linkFarm "scripts-farm"
([
{
name = "scripts/ytextr";
path = depot.users.Profpatsch.ytextr;
}
]
++
(lib.pipe depot.users.Profpatsch.aliases [
readTreeNamespaceDrvs
(map ({ name, drv }: {
name = "scripts/${name}";
path = drv;
}))
]));
}])
(d: runStow {
stowDir = d;
stowPackage = "scripts";
targetDir = "/home/philip";
stowDirOriginPath = "/home/philip/.local/share/nix-home/stow-origin";
})
# TODO: run multiple stows with runStow?
# TODO: temp setup
depot.nix.writeExecline "nix-home" { } [
"if"
[ scriptsStow ]
terminalEmulatorStow
]