diff --git a/.gitignore b/.gitignore index f7e12a2..a6708ef 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,5 @@ **/.#* .pre-commit-config.yaml + +*.AppImage diff --git a/flake.nix b/flake.nix index 3889e00..52324b6 100644 --- a/flake.nix +++ b/flake.nix @@ -67,9 +67,30 @@ }; packages = { + default = config.packages.k8s-gitlab-borg; + + k8s-gitlab-borg = with pkgs.poetry2nix; + mkPoetryApplication { + projectDir = cleanPythonSources {src = ./.;}; + + nativeBuildInputs = with pkgs; [makeWrapper]; + + postInstall = '' + wrapProgram $out/bin/k8s-gitlab-borg \ + ${pkgs.lib.escapeShellArgs [ + "--prefix" + "PATH" + ":" + (pkgs.lib.makeBinPath (with pkgs; [borgbackup])) + ]} + ''; + + meta.mainProgram = "k8s-gitlab-borg"; + }; }; overlayAttrs = { + inherit (config.packages) k8s-gitlab-borg; }; }; diff --git a/k8s_gitlab_borg/__init__.py b/k8s_gitlab_borg/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/k8s_gitlab_borg/__main__.py b/k8s_gitlab_borg/__main__.py new file mode 100644 index 0000000..4e06bb5 --- /dev/null +++ b/k8s_gitlab_borg/__main__.py @@ -0,0 +1,13 @@ +# SPDX-FileCopyrightText: 2023 Gregor Kleen +# +# SPDX-License-Identifier: GPL-3.0-or-later + +import os, sys + + +def main(): + pass + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/poetry.lock b/poetry.lock new file mode 100644 index 0000000..2ddd539 --- /dev/null +++ b/poetry.lock @@ -0,0 +1,8 @@ +package = [] + +[metadata] +lock-version = "1.1" +python-versions = "^3.10" +content-hash = "53f2eabc9c26446fbcc00d348c47878e118afc2054778c3c803a0a8028af27d9" + +[metadata.files] diff --git a/poetry.lock.license b/poetry.lock.license new file mode 100644 index 0000000..2072054 --- /dev/null +++ b/poetry.lock.license @@ -0,0 +1,3 @@ +SPDX-FileCopyrightText: 2023 Gregor Kleen + +SPDX-License-Identifier: CC0-1.0 diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..ee4ef2b --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,21 @@ +# SPDX-FileCopyrightText: 2023 Gregor Kleen +# +# SPDX-License-Identifier: GPL-3.0-or-later + +[tool.poetry] +name = "k8s-gitlab-borg" +version = "0.0.0" +description = "" +authors = ["Gregor Kleen "] + +[tool.poetry.dependencies] +python = "^3.10" + + +[tool.poetry.scripts] +k8s-gitlab-borg = "k8s_gitlab_borg.__main__:main" + + +[build-system] +requires = ["poetry-core"] +build-backend = "poetry.core.masonry.api"