diff options
Diffstat (limited to 'krebs/5pkgs/simple')
-rw-r--r-- | krebs/5pkgs/simple/github-hosts-sync/default.nix | 39 | ||||
-rwxr-xr-x | krebs/5pkgs/simple/github-hosts-sync/src/hosts-sync | 33 | ||||
-rw-r--r-- | krebs/5pkgs/simple/prison-break/default.nix | 20 | ||||
-rw-r--r-- | krebs/5pkgs/simple/prison-break/straight-plugin.nix | 22 |
4 files changed, 50 insertions, 64 deletions
diff --git a/krebs/5pkgs/simple/github-hosts-sync/default.nix b/krebs/5pkgs/simple/github-hosts-sync/default.nix index cdfed468c..fbc48fa3f 100644 --- a/krebs/5pkgs/simple/github-hosts-sync/default.nix +++ b/krebs/5pkgs/simple/github-hosts-sync/default.nix @@ -1,37 +1,32 @@ { pkgs, stdenv, ... }: -stdenv.mkDerivation { - name = "github-hosts-sync"; +stdenv.mkDerivation rec { + name = "github-hosts-sync-${version}"; + version = "2.0.0"; - src = pkgs.painload; + src = ./src; phases = [ "unpackPhase" "installPhase" ]; - installPhase = - let - ca-bundle = "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"; - path = stdenv.lib.makeBinPath (with pkgs; [ - coreutils - findutils - git - gnugrep - gnused - nettools - openssh - socat - ]); - in + installPhase = let + ca-bundle = "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"; + path = stdenv.lib.makeBinPath [ + pkgs.git + pkgs.nettools + pkgs.openssh + pkgs.rsync + ]; + in '' mkdir -p $out/bin - sed \ - 's,^main() {$,&\n export PATH=${path} GIT_SSL_CAINFO=${ca-bundle},' \ - < ./retiolum/scripts/github_hosts_sync/hosts-sync \ - > $out/bin/github-hosts-sync + cp hosts-sync $out/bin/github-hosts-sync - chmod +x $out/bin/github-hosts-sync + sed -i \ + '1s,$,\nPATH=${path}''${PATH+:$PATH} GIT_SSL_CAINFO=${ca-bundle},' \ + $out/bin/github-hosts-sync ''; } diff --git a/krebs/5pkgs/simple/github-hosts-sync/src/hosts-sync b/krebs/5pkgs/simple/github-hosts-sync/src/hosts-sync new file mode 100755 index 000000000..a8973e72b --- /dev/null +++ b/krebs/5pkgs/simple/github-hosts-sync/src/hosts-sync @@ -0,0 +1,33 @@ +#! /bin/sh +set -efu +exec >&2 + +hosts_srcdir=$GITHUB_HOST_SYNC_SRCDIR +hosts_worktree=${GITHUB_HOST_SYNC_WORKTREE-/tmp/hosts} +hosts_url=${GITHUB_HOST_SYNC_URL-git@github.com:krebs/hosts.git} +user_mail=${GITHUB_HOST_SYNC_USER_MAIL-$LOGNAME@$(hostname)} +user_name=${GITHUB_HOST_SYNC_USER_NAME-$LOGNAME} + +test -d "$hosts_worktree" || git clone "$hosts_url" "$hosts_worktree" + +cd "$hosts_worktree" + +git pull + +rsync \ + --chmod D755,F644 \ + --delete-excluded \ + --filter 'protect .git' \ + --recursive \ + --verbose \ + "$hosts_srcdir/" \ + . + +git add . + +if test -n "$(git status --porcelain)"; then + git config user.email "$user_mail" + git config user.name "$user_name" + git commit -m bump + git push +fi diff --git a/krebs/5pkgs/simple/prison-break/default.nix b/krebs/5pkgs/simple/prison-break/default.nix deleted file mode 100644 index 051a46184..000000000 --- a/krebs/5pkgs/simple/prison-break/default.nix +++ /dev/null @@ -1,20 +0,0 @@ -{pkgs, fetchFromGitHub}: -with pkgs.python3.pkgs; - -buildPythonPackage rec { - pname = "prison-break"; - version = "1.0.0"; - src = fetchFromGitHub { - owner = "makefu"; - repo = pname; - rev = "1.0.0"; - sha256 = "0ab42z6qr42vz4fc077irn9ykrrylagx1dzlw8dqcanf49dxd961"; - }; - propagatedBuildInputs = [ - docopt - requests - beautifulsoup4 - (callPackage ./straight-plugin.nix {}) - ]; - checkInputs = [ black ]; -} diff --git a/krebs/5pkgs/simple/prison-break/straight-plugin.nix b/krebs/5pkgs/simple/prison-break/straight-plugin.nix deleted file mode 100644 index 606c60b5d..000000000 --- a/krebs/5pkgs/simple/prison-break/straight-plugin.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ lib -, buildPythonPackage -, fetchPypi -}: - -buildPythonPackage rec { - pname = "straight-plugin"; - version = "1.5.0"; - - src = fetchPypi { - pname = "straight.plugin"; - inherit version; - sha256 = "818a7641068932ed6436d0af0a3bb77bbbde29df0a7142c8bd1a249e7c2f0d38"; - }; - - meta = with lib; { - description = "A simple namespaced plugin facility"; - homepage = https://github.com/ironfroggy/straight.plugin; - license = licenses.mit; - maintainers = [ maintainers.makefu ]; - }; -} |