feat: introduce treefmt and fmt all
This commit is contained in:
parent
80250b0179
commit
27c6c4f9fa
237 changed files with 5440 additions and 5214 deletions
|
@ -1,6 +1,10 @@
|
|||
{pkgs ? import <nixpkgs> {}}: let
|
||||
baseEnv = ["SSL_CERT_FILE=${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"];
|
||||
in rec {
|
||||
{
|
||||
pkgs ? import <nixpkgs> { },
|
||||
}:
|
||||
let
|
||||
baseEnv = [ "SSL_CERT_FILE=${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt" ];
|
||||
in
|
||||
rec {
|
||||
base = pkgs.dockerTools.buildImage rec {
|
||||
name = "base";
|
||||
|
||||
|
@ -21,59 +25,70 @@ in rec {
|
|||
interactive_base = pkgs.dockerTools.buildImage {
|
||||
name = "interactive_base";
|
||||
fromImage = base;
|
||||
contents = with pkgs; [procps zsh coreutils neovim];
|
||||
contents = with pkgs; [
|
||||
procps
|
||||
zsh
|
||||
coreutils
|
||||
neovim
|
||||
];
|
||||
|
||||
config = {Cmd = ["/bin/zsh"];};
|
||||
config = {
|
||||
Cmd = [ "/bin/zsh" ];
|
||||
};
|
||||
};
|
||||
|
||||
s3ql = let
|
||||
entrypoint = pkgs.writeScript "entrypoint" ''
|
||||
#!${pkgs.stdenv.shell}
|
||||
s3ql =
|
||||
let
|
||||
entrypoint = pkgs.writeScript "entrypoint" ''
|
||||
#!${pkgs.stdenv.shell}
|
||||
|
||||
if [ -z "$S3QL_BUCKET" ]; then
|
||||
echo S3QL_BUCKET not set
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "$S3QL_BUCKET" ]; then
|
||||
echo S3QL_BUCKET not set
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$S3QL_STORAGE_URL" ]; then
|
||||
echo S3QL_STORAGE_URL not set
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "$S3QL_STORAGE_URL" ]; then
|
||||
echo S3QL_STORAGE_URL not set
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$S3QL_CACHESIZE" ]; then
|
||||
echo S3QL_CACHESIZE not set
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "$S3QL_CACHESIZE" ]; then
|
||||
echo S3QL_CACHESIZE not set
|
||||
exit 1
|
||||
fi
|
||||
|
||||
set -x
|
||||
set -x
|
||||
|
||||
if [ "$S3QL_SKIP_FSCK" != "1" ]; then
|
||||
fsck.s3ql \
|
||||
--authfile $S3QL_AUTHINFO2 \
|
||||
if [ "$S3QL_SKIP_FSCK" != "1" ]; then
|
||||
fsck.s3ql \
|
||||
--authfile $S3QL_AUTHINFO2 \
|
||||
--log none \
|
||||
--cachedir $S3QL_CACHE_DIR \
|
||||
$S3QL_STORAGE_URL
|
||||
fi
|
||||
|
||||
exec mount.s3ql \
|
||||
--cachedir "$S3QL_CACHE_DIR" \
|
||||
--authfile "$S3QL_AUTHINFO2" \
|
||||
--cachesize "$S3QL_CACHESIZE" \
|
||||
--fg \
|
||||
--compress lzma-6 \
|
||||
--threads 4 \
|
||||
--log none \
|
||||
--cachedir $S3QL_CACHE_DIR \
|
||||
$S3QL_STORAGE_URL
|
||||
fi
|
||||
--allow-root \
|
||||
"$S3QL_STORAGE_URL" \
|
||||
/bucket
|
||||
|
||||
exec mount.s3ql \
|
||||
--cachedir "$S3QL_CACHE_DIR" \
|
||||
--authfile "$S3QL_AUTHINFO2" \
|
||||
--cachesize "$S3QL_CACHESIZE" \
|
||||
--fg \
|
||||
--compress lzma-6 \
|
||||
--threads 4 \
|
||||
--log none \
|
||||
--allow-root \
|
||||
"$S3QL_STORAGE_URL" \
|
||||
/bucket
|
||||
|
||||
# FIXME: touch .isbucket after mount
|
||||
'';
|
||||
in
|
||||
# FIXME: touch .isbucket after mount
|
||||
'';
|
||||
in
|
||||
pkgs.dockerTools.buildImage {
|
||||
name = "s3ql";
|
||||
fromImage = interactive_base;
|
||||
contents = [pkgs.s3ql pkgs.fuse];
|
||||
contents = [
|
||||
pkgs.s3ql
|
||||
pkgs.fuse
|
||||
];
|
||||
|
||||
runAsRoot = ''
|
||||
#!${pkgs.stdenv.shell}
|
||||
|
@ -84,57 +99,58 @@ in rec {
|
|||
'';
|
||||
|
||||
config = {
|
||||
Env =
|
||||
baseEnv
|
||||
++ [
|
||||
"HOME=/home/s3ql"
|
||||
"S3QL_CACHE_DIR=/var/cache/s3ql"
|
||||
"S3QL_AUTHINFO2=/etc/s3ql/authinfo2"
|
||||
"CONTAINER_ENTRYPOINT=${entrypoint}"
|
||||
];
|
||||
Cmd = [entrypoint];
|
||||
Env = baseEnv ++ [
|
||||
"HOME=/home/s3ql"
|
||||
"S3QL_CACHE_DIR=/var/cache/s3ql"
|
||||
"S3QL_AUTHINFO2=/etc/s3ql/authinfo2"
|
||||
"CONTAINER_ENTRYPOINT=${entrypoint}"
|
||||
];
|
||||
Cmd = [ entrypoint ];
|
||||
Volumes = {
|
||||
"/var/cache/s3ql" = {};
|
||||
"/etc/s3ql/authinfo2" = {};
|
||||
"/buckets" = {};
|
||||
"/tmp" = {};
|
||||
"/var/cache/s3ql" = { };
|
||||
"/etc/s3ql/authinfo2" = { };
|
||||
"/buckets" = { };
|
||||
"/tmp" = { };
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
syncthing = let
|
||||
entrypoint = pkgs.writeScript "entrypoint" ''
|
||||
#!${pkgs.stdenv.shell}
|
||||
set -x
|
||||
if [ ! -e /data/.isbucket ]; then
|
||||
echo ERROR: Bucket not mounted at /data
|
||||
exit 1
|
||||
fi
|
||||
syncthing =
|
||||
let
|
||||
entrypoint = pkgs.writeScript "entrypoint" ''
|
||||
#!${pkgs.stdenv.shell}
|
||||
set -x
|
||||
if [ ! -e /data/.isbucket ]; then
|
||||
echo ERROR: Bucket not mounted at /data
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$SYNCTHING_GUI_ADDRESS" ]; then
|
||||
echo ERROR: SYNCTHING_GUI_ADDRESS is not set
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "$SYNCTHING_GUI_ADDRESS" ]; then
|
||||
echo ERROR: SYNCTHING_GUI_ADDRESS is not set
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -w "$SYNCTHING_HOME" ]; then
|
||||
echo ERROR : SYNCTHING_HOME is not writable
|
||||
fi
|
||||
if [ ! -w "$SYNCTHING_HOME" ]; then
|
||||
echo ERROR : SYNCTHING_HOME is not writable
|
||||
fi
|
||||
|
||||
exec syncthing \
|
||||
-home $SYNCTHING_HOME \
|
||||
-gui-address=$SYNCTHING_GUI_ADDRESS \
|
||||
-no-browser
|
||||
'';
|
||||
in
|
||||
exec syncthing \
|
||||
-home $SYNCTHING_HOME \
|
||||
-gui-address=$SYNCTHING_GUI_ADDRESS \
|
||||
-no-browser
|
||||
'';
|
||||
in
|
||||
pkgs.dockerTools.buildImage {
|
||||
name = "syncthing";
|
||||
fromImage = interactive_base;
|
||||
contents = pkgs.syncthing;
|
||||
|
||||
config = {
|
||||
Env = baseEnv ++ ["SYNCTHING_HOME=/home/syncthing"];
|
||||
Cmd = [entrypoint];
|
||||
Volumes = {"/data" = {};};
|
||||
Env = baseEnv ++ [ "SYNCTHING_HOME=/home/syncthing" ];
|
||||
Cmd = [ entrypoint ];
|
||||
Volumes = {
|
||||
"/data" = { };
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue