2024-03-17 18:48:49 +00:00
|
|
|
{
|
|
|
|
lib,
|
|
|
|
stdenv,
|
|
|
|
clan-vm-manager,
|
|
|
|
mkShell,
|
|
|
|
ruff,
|
|
|
|
desktop-file-utils,
|
|
|
|
xdg-utils,
|
|
|
|
mypy,
|
|
|
|
python3,
|
2024-03-24 22:36:00 +00:00
|
|
|
gtk4,
|
|
|
|
libadwaita,
|
2024-03-17 18:48:49 +00:00
|
|
|
}:
|
2024-02-29 15:46:09 +00:00
|
|
|
|
2024-03-24 22:36:00 +00:00
|
|
|
let
|
|
|
|
devshellTestDeps =
|
2024-03-24 23:32:03 +00:00
|
|
|
clan-vm-manager.externalTestDeps
|
2024-03-24 22:36:00 +00:00
|
|
|
++ (with python3.pkgs; [
|
|
|
|
rope
|
2024-02-29 15:46:09 +00:00
|
|
|
mypy
|
2024-03-24 22:36:00 +00:00
|
|
|
ipdb
|
|
|
|
setuptools
|
|
|
|
wheel
|
|
|
|
pip
|
|
|
|
]);
|
|
|
|
in
|
|
|
|
mkShell {
|
|
|
|
inherit (clan-vm-manager) nativeBuildInputs;
|
|
|
|
buildInputs =
|
|
|
|
[
|
|
|
|
ruff
|
|
|
|
gtk4.dev # has the demo called 'gtk4-widget-factory'
|
2024-02-29 15:46:09 +00:00
|
|
|
libadwaita.devdoc # has the demo called 'adwaita-1-demo'
|
2024-03-24 22:36:00 +00:00
|
|
|
]
|
|
|
|
++ devshellTestDeps
|
|
|
|
|
|
|
|
# Dependencies for testing for linux hosts
|
|
|
|
++ (lib.optionals stdenv.isLinux [
|
|
|
|
xdg-utils # install desktop files
|
|
|
|
desktop-file-utils # verify desktop files
|
|
|
|
]);
|
|
|
|
|
|
|
|
shellHook = ''
|
2024-03-24 23:32:03 +00:00
|
|
|
export GIT_ROOT=$(git rev-parse --show-toplevel)
|
|
|
|
export PKG_ROOT=$GIT_ROOT/pkgs/clan-vm-manager
|
|
|
|
|
|
|
|
# Add clan-vm-manager command to PATH
|
|
|
|
export PATH="$PKG_ROOT/bin":"$PATH"
|
2024-03-24 22:52:30 +00:00
|
|
|
|
|
|
|
# Add clan-cli to the python path so that we can import it without building it in nix first
|
2024-03-24 23:32:03 +00:00
|
|
|
export PYTHONPATH="$GIT_ROOT/pkgs/clan-cli":"$PYTHONPATH"
|
2024-03-24 22:36:00 +00:00
|
|
|
'';
|
|
|
|
}
|