add turris "schnapps" tool
in its current state this is useful for turris omnia only, but will allow us to do installs and rollback to turris os if needed.pull/3/head
parent
64898eada8
commit
2a93f24a58
|
@ -0,0 +1,19 @@
|
|||
{ config, pkgs, lib, ... } :
|
||||
{
|
||||
config = {
|
||||
programs.busybox = {
|
||||
options = {
|
||||
# schnapps is a shell script that needs
|
||||
# [ command
|
||||
# find -maxdepth -mindepth
|
||||
# head -c
|
||||
# echo -n
|
||||
ASH_TEST = "y";
|
||||
FEATURE_FIND_MAXDEPTH = "y";
|
||||
FEATURE_FANCY_HEAD = "y";
|
||||
FEATURE_FANCY_ECHO = "y";
|
||||
};
|
||||
};
|
||||
defaultProfile.packages = [ pkgs.schnapps ] ;
|
||||
};
|
||||
}
|
|
@ -92,6 +92,13 @@ in {
|
|||
run-liminix-vm = callPackage ./run-liminix-vm {};
|
||||
s6-init-bin = callPackage ./s6-init-bin {};
|
||||
s6-rc-database = callPackage ./s6-rc-database {};
|
||||
|
||||
# schnapps is written by Turris and provides a high-level interface
|
||||
# to btrfs snapshots. It may be useful on the Turris Omnia to
|
||||
# install Liminix while retaining the ability to rollback to the
|
||||
# vendor OS, or even to derisk Liminix updates on that device
|
||||
schnapps = callPackage ./schnapps {};
|
||||
|
||||
serviceFns = callPackage ./service-fns {};
|
||||
swconfig = callPackage ./swconfig {};
|
||||
systemconfig = callPackage ./systemconfig {};
|
||||
|
|
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
stdenv
|
||||
, fetchFromGitLab
|
||||
, makeWrapper
|
||||
, btrfs-progs
|
||||
, lib
|
||||
}:
|
||||
let search_path = lib.makeBinPath [btrfs-progs];
|
||||
in stdenv.mkDerivation {
|
||||
pname = "schnapps";
|
||||
version = "2.13.0";
|
||||
|
||||
src =fetchFromGitLab {
|
||||
domain = "gitlab.nic.cz";
|
||||
owner = "turris";
|
||||
repo = "schnapps";
|
||||
rev = "53ac92c765d670be4b98dba2c948859a9ac7607f";
|
||||
hash = "sha256-yVgXK+V2wrcOPLB6X6qm3hyBcWcyzNhfJjFF7YRk5Lc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
buildPhase = ":";
|
||||
installPhase = ''
|
||||
install -D schnapps.sh $out/bin/schnapps
|
||||
wrapProgram $out/bin/schnapps --prefix PATH : "${search_path}"
|
||||
'';
|
||||
}
|
Loading…
Reference in New Issue