diff options
Diffstat (limited to 'krebs/5pkgs/simple')
-rw-r--r-- | krebs/5pkgs/simple/brain/default.nix | 12 | ||||
-rw-r--r-- | krebs/5pkgs/simple/krebszones/default.nix | 36 | ||||
-rw-r--r-- | krebs/5pkgs/simple/ovh-zone/default.nix | 25 | ||||
-rw-r--r-- | krebs/5pkgs/simple/urlencode/default.nix | 22 |
4 files changed, 71 insertions, 24 deletions
diff --git a/krebs/5pkgs/simple/brain/default.nix b/krebs/5pkgs/simple/brain/default.nix new file mode 100644 index 000000000..079db825f --- /dev/null +++ b/krebs/5pkgs/simple/brain/default.nix @@ -0,0 +1,12 @@ +{ pass, writeOut, writeDash, ... }: + +writeOut "brain" { + "/bin/brain-pass".link = writeDash "brain-pass" '' + PASSWORD_STORE_DIR=$HOME/brain \ + exec ${pass}/bin/pass $@ + ''; + "/bin/brain-passmenu".link = writeDash "brain-passmenu" '' + PASSWORD_STORE_DIR=$HOME/brain \ + exec ${pass}/bin/passmenu $@ + ''; +} diff --git a/krebs/5pkgs/simple/krebszones/default.nix b/krebs/5pkgs/simple/krebszones/default.nix index 9230192bd..b54c95d88 100644 --- a/krebs/5pkgs/simple/krebszones/default.nix +++ b/krebs/5pkgs/simple/krebszones/default.nix @@ -1,25 +1,13 @@ -{ lib, pkgs,python3Packages,fetchurl, ... }: +{ pkgs, ... }: -# TODO: Prepare a diff of future and current -## ovh-zone export krebsco.de --config ~/secrets/krebs/cfg.json |sed 's/[ ]\+/ /g' | sort current -## sed 's/[ ]\+/ /g'/etc/zones/krebsco.de | sort > future -## diff future.sorted current.sorted - -python3Packages.buildPythonPackage rec { - name = "krebszones-${version}"; - version = "0.4.4"; - propagatedBuildInputs = with pkgs.python3Packages;[ - d2to1 # for setup to work - ovh - docopt - ]; - src = fetchurl { - url = "https://pypi.python.org/packages/source/k/krebszones/krebszones-${version}.tar.gz"; - sha256 = "1bzfc2b9468769j1yj93j12zdlccqbjiqfhql2larximh491sg4d"; - }; - meta = { - homepage = http://krebsco.de/; - description = "OVH Zone Upload"; - license = lib.licenses.wtfpl; - }; -} +pkgs.writeDashBin "krebszones" '' + set -efu + export OVH_ZONE_CONFIG=$HOME/.secrets/krebs/ovh-zone.conf + case $* in + import) + set -- import /etc/zones/krebsco.de krebsco.de + echo "+ krebszones $*" >&2 + ;; + esac + exec ${pkgs.ovh-zone}/bin/ovh-zone "$@" +'' diff --git a/krebs/5pkgs/simple/ovh-zone/default.nix b/krebs/5pkgs/simple/ovh-zone/default.nix new file mode 100644 index 000000000..051a14e8d --- /dev/null +++ b/krebs/5pkgs/simple/ovh-zone/default.nix @@ -0,0 +1,25 @@ +{ lib, pkgs,python3Packages,fetchurl, ... }: + +# TODO: Prepare a diff of future and current +## ovh-zone export krebsco.de --config ~/secrets/krebs/cfg.json |sed 's/[ ]\+/ /g' | sort current +## sed 's/[ ]\+/ /g'/etc/zones/krebsco.de | sort > future +## diff future.sorted current.sorted + +python3Packages.buildPythonPackage rec { + name = "ovh-zone-${version}"; + version = "0.4.4"; + propagatedBuildInputs = with pkgs.python3Packages;[ + d2to1 # for setup to work + ovh + docopt + ]; + src = fetchurl { + url = "https://pypi.python.org/packages/source/k/krebszones/krebszones-${version}.tar.gz"; + sha256 = "1bzfc2b9468769j1yj93j12zdlccqbjiqfhql2larximh491sg4d"; + }; + meta = { + homepage = http://krebsco.de/; + description = "OVH Zone Upload"; + license = lib.licenses.wtfpl; + }; +} diff --git a/krebs/5pkgs/simple/urlencode/default.nix b/krebs/5pkgs/simple/urlencode/default.nix new file mode 100644 index 000000000..afa42b83f --- /dev/null +++ b/krebs/5pkgs/simple/urlencode/default.nix @@ -0,0 +1,22 @@ +{ jq, gnused, writeBashBin, ... }: + +writeBashBin "urlencode" '' + set -efu + + decode() { + printf %b "$(${gnused}/bin/sed 's/ /+/g; s/%/\\x/g')" + } + + encode() { + ${jq}/bin/jq -Rr '@uri "\(.)"' + } + + # shellcheck disable=SC2048 + case $* in + -d) decode;; + "") encode;; + *) + echo "$0: error: your argument is invalid" >&2 + exit 1 + esac +'' |