runsh
This commit is contained in:
parent
7fd3391cc4
commit
09baf8960f
3 changed files with 45 additions and 10 deletions
|
|
@ -10,6 +10,7 @@
|
|||
[
|
||||
./hardware.nix
|
||||
./profiles/hibernate-boot.nix
|
||||
./profiles/devshells.nix
|
||||
./profiles/samba-mount.nix
|
||||
./profiles/wireguard.nix
|
||||
./profiles/restic-server.nix
|
||||
|
|
|
|||
|
|
@ -122,16 +122,6 @@
|
|||
android-studio
|
||||
jetbrains.rider
|
||||
jetbrains.clion
|
||||
(pkgs.buildFHSEnv {
|
||||
name = "silk-fhs";
|
||||
runScript = "bash";
|
||||
targetPkgs = pkgs:
|
||||
with pkgs; [
|
||||
glfw
|
||||
assimp
|
||||
wgpu-native
|
||||
];
|
||||
})
|
||||
# jetbrains.idea-ultimate
|
||||
|
||||
# communication
|
||||
|
|
|
|||
44
hosts/nixdesk/profiles/devshells.nix
Normal file
44
hosts/nixdesk/profiles/devshells.nix
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
shells = {
|
||||
silk-fhs = "with pkgs; [glfw libGL assimp wgpu-native]";
|
||||
};
|
||||
in {
|
||||
environment.systemPackages = [
|
||||
(pkgs.writeShellApplication {
|
||||
name = "runsh";
|
||||
|
||||
runtimeInputs = [pkgs.nix];
|
||||
|
||||
text = ''
|
||||
${lib.concatMapAttrsStringSep "\n" (name: value: ''
|
||||
runshell-${name}() {
|
||||
# shellcheck disable=SC2016
|
||||
nix shell --impure --expr '(import <nixpkgs> {}).buildFHSEnv {
|
||||
name = "devshell";
|
||||
runScript = "$SHELL";
|
||||
targetPkgs = pkgs: ${value};
|
||||
}' --command devshell
|
||||
}
|
||||
'')
|
||||
shells}
|
||||
if [ -z "''${1:-}" ]; then
|
||||
echo "available shells:"
|
||||
${lib.concatMapAttrsStringSep "\n" (name: _: "echo ${name}") shells}
|
||||
exit
|
||||
fi
|
||||
|
||||
case $1 in
|
||||
${lib.concatMapAttrsStringSep "\n" (name: _: ''
|
||||
"${name}") runshell-${name} ;;
|
||||
'')
|
||||
shells}
|
||||
*) echo no such shell ;;
|
||||
esac
|
||||
'';
|
||||
})
|
||||
];
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue