summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--flake.lock30
-rw-r--r--kartei/domi/default.nix16
-rw-r--r--kartei/kmein/default.nix25
-rw-r--r--kartei/phelix/default.nix30
-rw-r--r--krebs/2configs/mud.nix26
-rw-r--r--krebs/2configs/reaktor2.nix1
-rw-r--r--krebs/3modules/go.nix2
-rw-r--r--krebs/5pkgs/haskell/X11-aeson.nix13
-rw-r--r--krebs/5pkgs/haskell/email-header.nix46
-rw-r--r--krebs/5pkgs/haskell/kirk.nix22
-rw-r--r--krebs/5pkgs/haskell/mailaids.nix21
-rw-r--r--krebs/5pkgs/haskell/nix-serve-ng.nix30
-rw-r--r--krebs/5pkgs/haskell/purebred-email/default.nix30
-rw-r--r--krebs/5pkgs/haskell/purebred-email/untweak-mime-version-header.patch65
-rw-r--r--krebs/5pkgs/haskell/scanner.nix13
-rw-r--r--krebs/5pkgs/haskell/xmonad-aeson.nix13
-rw-r--r--krebs/5pkgs/haskell/xmonad-stockholm.nix18
-rw-r--r--krebs/5pkgs/simple/flameshot-once/config.nix416
-rw-r--r--krebs/5pkgs/simple/flameshot-once/default.nix149
-rw-r--r--krebs/5pkgs/simple/flameshot-once/flameshot/default.nix17
-rw-r--r--krebs/5pkgs/simple/flameshot-once/flameshot/flameshot-12.applauncher.patch26
-rw-r--r--krebs/5pkgs/simple/flameshot-once/flameshot/flameshot-12.history.patch28
-rw-r--r--krebs/5pkgs/simple/flameshot-once/flameshot/flameshot-12.imgur.patch43
23 files changed, 87 insertions, 993 deletions
diff --git a/flake.lock b/flake.lock
index 57993d8f1..2d9489825 100644
--- a/flake.lock
+++ b/flake.lock
@@ -10,11 +10,11 @@
"treefmt-nix": "treefmt-nix"
},
"locked": {
- "lastModified": 1732578586,
- "narHash": "sha256-kR2RwG4H32zRkyVVfDKUnoPxORb6DzztE16oc98ZzSg=",
+ "lastModified": 1737857314,
+ "narHash": "sha256-T9THCbnlj4CkKbTP+lisA5PUMoTXE7uh4FyDQzui+dc=",
"owner": "Mic92",
"repo": "buildbot-nix",
- "rev": "037344cad03e933ea370c0766b39b959820446e5",
+ "rev": "c077f430f3717d41bb303d031398058665315166",
"type": "github"
},
"original": {
@@ -31,11 +31,11 @@
]
},
"locked": {
- "lastModified": 1730504689,
- "narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=",
+ "lastModified": 1736143030,
+ "narHash": "sha256-+hu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU=",
"owner": "hercules-ci",
"repo": "flake-parts",
- "rev": "506278e768c2a08bec68eb62932193e341f55c90",
+ "rev": "b905f6fc23a9051a6e1b741e1438dbfc0634c6de",
"type": "github"
},
"original": {
@@ -56,11 +56,11 @@
]
},
"locked": {
- "lastModified": 1730903510,
- "narHash": "sha256-mnynlrPeiW0nUQ8KGZHb3WyxAxA3Ye/BH8gMjdoKP6E=",
+ "lastModified": 1736917206,
+ "narHash": "sha256-JTBWmyGf8K1Rwb+gviHIUzRJk/sITtT+72HXFkTZUjo=",
"owner": "hercules-ci",
"repo": "hercules-ci-effects",
- "rev": "b89ac4d66d618b915b1f0a408e2775fe3821d141",
+ "rev": "afd0a42e8c61ebb56899315ee4084a8b2e4ff425",
"type": "github"
},
"original": {
@@ -87,11 +87,11 @@
},
"nixpkgs": {
"locked": {
- "lastModified": 1732014248,
- "narHash": "sha256-y/MEyuJ5oBWrWAic/14LaIr/u5E0wRVzyYsouYY3W6w=",
+ "lastModified": 1737885589,
+ "narHash": "sha256-Zf0hSrtzaM1DEz8//+Xs51k/wdSajticVrATqDrfQjg=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "23e89b7da85c3640bbc2173fe04f4bd114342367",
+ "rev": "852ff1d9e153d8875a83602e03fdef8a63f0ecf8",
"type": "github"
},
"original": {
@@ -116,11 +116,11 @@
]
},
"locked": {
- "lastModified": 1730321837,
- "narHash": "sha256-vK+a09qq19QNu2MlLcvN4qcRctJbqWkX7ahgPZ/+maI=",
+ "lastModified": 1737483750,
+ "narHash": "sha256-5An1wq5U8sNycOBBg3nsDDgpwBmR9liOpDGlhliA6Xo=",
"owner": "numtide",
"repo": "treefmt-nix",
- "rev": "746901bb8dba96d154b66492a29f5db0693dbfcc",
+ "rev": "f2cc121df15418d028a59c9737d38e3a90fbaf8f",
"type": "github"
},
"original": {
diff --git a/kartei/domi/default.nix b/kartei/domi/default.nix
new file mode 100644
index 000000000..ec3c89f12
--- /dev/null
+++ b/kartei/domi/default.nix
@@ -0,0 +1,16 @@
+{ config, ... }:
+{
+ users.domi = {
+ mail = "mail@domi.de";
+ };
+ hosts.domi = {
+ owner = config.krebs.users.domi;
+ nets.wiregrill = {
+ ip4.addr = "10.244.10.108";
+ aliases = [
+ "domi.w"
+ ];
+ wireguard.pubkey = "Yy1pvM0lEwaXuOwBoFGNYhHeyYEKuR/rovE0/myWyCI=";
+ };
+ };
+}
diff --git a/kartei/kmein/default.nix b/kartei/kmein/default.nix
index 084d796a7..61ee37823 100644
--- a/kartei/kmein/default.nix
+++ b/kartei/kmein/default.nix
@@ -32,6 +32,31 @@ in
};
};
hosts = mapAttrs hostDefaults {
+ kibbeh = {
+ nets.retiolum = {
+ aliases = [
+ "kibbeh.r"
+ "kibbeh.kmein.r"
+ ];
+ ip4.addr = "10.243.2.188";
+ tinc.pubkey_ed25519 = "4fQvL3t86kqZ6fedkfjrptiLjGsqQyvs04cXbSgyxwD";
+ tinc.pubkey = ''
+ -----BEGIN RSA PUBLIC KEY-----
+ MIICCgKCAgEAlLQRY0ya5NNVAlap2R3dk5vfLySVZCIgD/CL2xfIMFpC51xLSph0
+ 1kMUqgbznYQ44rhu7VBKM/wWuITIPyT7Jd7K8OiBOyeGAyXdJacAnrUPtX3LmDwu
+ GkpeScAXz496fgHZd9mGFOgofrnrJpbyWWvpez3DGolkjzzMB5POKGYiWnuKUwLA
+ 8z5STJa5yCxwye8dnGGe0HkimfUkQgOg4/pOXPXq2sIY052yCGLOa1kemMRvFXxT
+ HAEHVVbAHC99chTj0s7uxerMDJjtWPXrda1VQJKOYB/UF58k4wbV0kspedqJ5IhQ
+ l3oIVF0Es7kvgRpUeeGTbOEL4UHd98Y9D8vaIZYaSyuGxzjcJpbdO1kqDn6iqSYw
+ vCL2Qe9dROl/h6UBt9rjab4rXablDaFdZvVBG8hsCTe1+artVj07s0JWeatM6jIf
+ BMYhduczjSqgDaIoZzeJ4MH+8RAdBHSKBOOGqIctV8+2C4uwwZdsxAXV0wI+7JZT
+ EtPCueo/yDr4a6jj6a5bG+fkzONuN2jlYTMJmYMDtlbC7UpV2ijZAXuGw43qaj8M
+ RCnNZOqzTnBmeIx21BMqExABrsei3PqGwSHpj0HSl6IrYam7hWrL/AiqH5Rmbz/3
+ FrjpTwAHxH4SbbO+KKnpdK1Bi0iy4IGLQUTDtpp6vhv41y2PgCwRubECAwEAAQ==
+ -----END RSA PUBLIC KEY-----
+ '';
+ };
+ };
ful = {
nets.retiolum = {
aliases = [
diff --git a/kartei/phelix/default.nix b/kartei/phelix/default.nix
new file mode 100644
index 000000000..9ac720ea6
--- /dev/null
+++ b/kartei/phelix/default.nix
@@ -0,0 +1,30 @@
+{ config, lib, ... }: let
+ slib = import ../../lib/pure.nix { inherit lib; };
+in {
+ users.phelix = {
+ mail = "phelix-r@unavailable.network";
+ };
+ hosts.glanix9001 = {
+ owner = config.krebs.users.phelix;
+ nets.retiolum = {
+ aliases = [ "glanix9001.phelix.r" ];
+ ip6.addr = (slib.krebs.genipv6 "retiolum" "phelix" { hostName = "glanix9001"; }).address;
+ tinc.pubkey = ''
+ -----BEGIN RSA PUBLIC KEY-----
+ MIICCgKCAgEAsi4yWZ2ZYHVFpJcy440FO25q443dAWy+nf2kIMA6wcl/oGvPxCRD
+ xw4vWKkPqU/OlSjrQrW0EHsQ9FXS9ClzVmqu5Ky6rJeKhik08E4JB15fgWkdIkBL
+ /kdqczzKrW4XiW8vv7PGt5NsgOLIcKJHCHrqnkfeUl0CdVw/halVF8FvAyxrW22s
+ cZl4r3Ul6AMIUogoH7f8rsLi07HOcFOQSFycquO2YkNineEDaw9GVnNOn4A9sisg
+ xyUorrUFNeU7PPlKOk+DHyMSBsjfykkF9blZtZUoMsByMbsNIgLGiz+u429DqrCb
+ MOg3YvwijQdrcfcyyNRJxkjaED073SGFjGww/X0rXeesFgRRIMIfnalhkOdUJBuy
+ ZLkWA2uUzO2KPiUNXhj5DeE1rkcRFjen871oeWdrx2sYubwNzSeulQ6iEl4iPtgP
+ oGPtb3c13WAekQXEPoRqPxWs1jS6U3ljZqbJioA1vxqvvAIco4PAsciSpcJ0jdUU
+ GVqkRklNli5lyRKCx4NDYTrEMdjhOXK3HTdpiSD/hcEWTUSK9mic/5uBA0ZfpS3y
+ NNvWz7srm1Bo6uzMiHyns/j5SDJkfVaFrn2LdQuFp+2hHEh0orOcn4RJB+k7q0yj
+ Y0voh0Hf/cYVLjadAIk6KEhmYBtC+7jRv+TAuCYcsIQySXu0lLs6vrMCAwEAAQ==
+ -----END RSA PUBLIC KEY-----
+ '';
+ tinc.pubkey_ed25519 = "Ed25519PublicKey = de2DF3m7byAhPEcQmfBdcTnBQLx+Nsb8wI7mFJbZQJD";
+ };
+ };
+}
diff --git a/krebs/2configs/mud.nix b/krebs/2configs/mud.nix
index a53596cc6..992f2ebdc 100644
--- a/krebs/2configs/mud.nix
+++ b/krebs/2configs/mud.nix
@@ -5,18 +5,6 @@
MUD_SERVER=''${MUD_SERVER:-127.0.0.1}
MUD_PORT=''${MUD_PORT:-8080}
- if $(${pkgs.libressl.nc}/bin/nc -z "$MUD_SERVER" "$MUD_PORT"); then
- ${nvim}/bin/nvim \
- +"let g:instant_username = \"$MUD_NICKNAME\"" \
- +":InstantJoinSession $MUD_SERVER $MUD_PORT" \
- "$@"
- else
- ${nvim}/bin/nvim \
- +"let g:instant_username = \"$MUD_NICKNAME\"" \
- +":InstantStartServer $MUD_SERVER $MUD_PORT" \
- +":InstantStartSession $MUD_SERVER $MUD_PORT" \
- "$@"
- fi
'';
nvim = pkgs.neovim.override {
# vimAlias = true;
@@ -31,7 +19,6 @@
nerdtree # file structure inside nvim
rainbow # Color parenthesis
customPlugins.hack-color
- customPlugins.instant
];
opt = [];
};
@@ -97,15 +84,6 @@
inoremap <f2> <esc>:tabn<cr>
'';
customPlugins = {
- instant = pkgs.vimUtils.buildVimPlugin {
- name = "instant";
- src = pkgs.fetchFromGitHub {
- owner = "jbyuki";
- repo = "instant.nvim";
- rev = "c02d72267b12130609b7ad39b76cf7f4a3bc9554";
- sha256 = "sha256-7Pr2Au/oGKp5kMXuLsQY4BK5Wny9L1EBdXtyS5EaZPI=";
- };
- };
hack-color = (rtp: rtp // { inherit rtp; }) (pkgs.writeTextFile (let
name = "hack";
in {
@@ -162,10 +140,6 @@ in {
];
packages = with pkgs; [
tmux
- (pkgs.writers.writeDashBin "instant_server" ''
- find ${customPlugins.instant}
- find ${customPlugins.instant.src}
- '')
mud
];
};
diff --git a/krebs/2configs/reaktor2.nix b/krebs/2configs/reaktor2.nix
index 7cc6c7550..faabf7677 100644
--- a/krebs/2configs/reaktor2.nix
+++ b/krebs/2configs/reaktor2.nix
@@ -410,7 +410,6 @@ let
bedger-balance
bing
bing-img
- hooks.sed
interrogate
say
(generators.command_hook {
diff --git a/krebs/3modules/go.nix b/krebs/3modules/go.nix
index f52394dbc..1db19e1ca 100644
--- a/krebs/3modules/go.nix
+++ b/krebs/3modules/go.nix
@@ -25,7 +25,7 @@ let
krebs.htgen.go = {
port = cfg.port;
- script = ''. ${pkgs.writeDash "go" ''
+ script = ''. ${pkgs.writers.writeDash "go" ''
set -x
case "$Method $Request_URI" in
diff --git a/krebs/5pkgs/haskell/X11-aeson.nix b/krebs/5pkgs/haskell/X11-aeson.nix
deleted file mode 100644
index 103d87faa..000000000
--- a/krebs/5pkgs/haskell/X11-aeson.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ mkDerivation, aeson, base, fetchgit, lib, X11 }:
-mkDerivation {
- pname = "X11-aeson";
- version = "1.0.0";
- src = fetchgit {
- url = "https://cgit.krebsco.de/X11-aeson";
- sha256 = "0y9nvssqpvqgl46g7nz9738l8jmpa7an8r3am3qaqcvmvzgwxh0d";
- rev = "c0a70a62513baf2b437db4ebe3e5a32e3cfa5905";
- fetchSubmodules = true;
- };
- libraryHaskellDepends = [ aeson base X11 ];
- license = lib.licenses.mit;
-}
diff --git a/krebs/5pkgs/haskell/email-header.nix b/krebs/5pkgs/haskell/email-header.nix
deleted file mode 100644
index f8ce03f39..000000000
--- a/krebs/5pkgs/haskell/email-header.nix
+++ /dev/null
@@ -1,46 +0,0 @@
-{ mkDerivation, attoparsec, base, base64-bytestring, bytestring
-, case-insensitive, containers, exceptions, fetchgit, QuickCheck
-, lib, stockholm, tasty, tasty-quickcheck, text, text-icu, time
-}:
-with stockholm.lib;
-
-let
-
- cfg = {
- "18.03" = {
- version = "0.3.0";
- rev = "7b179bd31192ead8afe7a0b6e34bcad4039deaa8";
- sha256 = "12j2n3sbvzjnw99gga7kkdygm8n3qx2lh8q26ad6a53xm5whnz59";
- };
- "20.03" = {
- version = "0.4.1-tv1";
- rev = "refs/tags/v${cfg.version}";
- sha256 = "11xjivpj495r2ss9aqljnpzzycb57cm4sr7yzmf939rzwsd3ib0x";
- };
- }.${versions.majorMinor version} or {
- version = "0.4.2-tv1";
- rev = "refs/tags/v${cfg.version}";
- sha256 = "JZfqvkbb/1t0q1iWmZHmmCN2Vr+QKTiq4LVncrG+xMU=";
- };
-
-in mkDerivation {
- pname = "email-header";
- version = cfg.version;
- src = fetchgit {
- url = "https://github.com/4z3/email-header";
- rev = cfg.rev;
- sha256 = cfg.sha256;
- };
- buildDepends = [
- attoparsec base base64-bytestring bytestring case-insensitive
- containers exceptions text text-icu time
- ];
- testDepends = [
- base bytestring case-insensitive containers QuickCheck tasty
- tasty-quickcheck text time
- ];
- jailbreak = true;
- homepage = "http://github.com/knrafto/email-header";
- description = "Parsing and rendering of email and MIME headers";
- license = lib.licenses.bsd3;
-}
diff --git a/krebs/5pkgs/haskell/kirk.nix b/krebs/5pkgs/haskell/kirk.nix
deleted file mode 100644
index d6fdec4c9..000000000
--- a/krebs/5pkgs/haskell/kirk.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-{ mkDerivation, async, base, bytestring, fetchgit, lib, network
-, optparse-applicative, text
-}:
-mkDerivation {
- pname = "kirk";
- version = "1.0.1";
- src = fetchgit {
- url = "http://cgit.krebsco.de/kirk";
- sha256 = "1acsmmc485c54axpy9bd0320j18hs261vl1vdxns4n04sxzqd7k0";
- rev = "cdf3cb373af8f9b03a9487a63eb32e0226913589";
- fetchSubmodules = true;
- };
- isLibrary = true;
- isExecutable = true;
- libraryHaskellDepends = [
- base bytestring network optparse-applicative text
- ];
- executableHaskellDepends = [
- async base network optparse-applicative text
- ];
- license = lib.licenses.mit;
-}
diff --git a/krebs/5pkgs/haskell/mailaids.nix b/krebs/5pkgs/haskell/mailaids.nix
deleted file mode 100644
index 91b4cc451..000000000
--- a/krebs/5pkgs/haskell/mailaids.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ mkDerivation, aeson, aeson-pretty, base, bytestring
-, case-insensitive, fetchgit, lens, lib, optparse-applicative
-, purebred-email, text, vector, word8
-}:
-mkDerivation {
- pname = "mailaids";
- version = "1.1.0";
- src = fetchgit {
- url = "https://cgit.krebsco.de/mailaids";
- sha256 = "0mkq3b0j28h7ydg6aaqlqnvajb8nhdc9g7rmil2d4vl5fxxaqspv";
- rev = "a25fc32eceefc10a91ef77ff2763b3f1b9324aaf";
- fetchSubmodules = true;
- };
- isLibrary = false;
- isExecutable = true;
- executableHaskellDepends = [
- aeson aeson-pretty base bytestring case-insensitive lens
- optparse-applicative purebred-email text vector word8
- ];
- license = lib.licenses.mit;
-}
diff --git a/krebs/5pkgs/haskell/nix-serve-ng.nix b/krebs/5pkgs/haskell/nix-serve-ng.nix
deleted file mode 100644
index 62e02ce82..000000000
--- a/krebs/5pkgs/haskell/nix-serve-ng.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ mkDerivation, async, base, base16, base32, bytestring, charset
-, fetchgit, http-client, http-types, lib, managed, megaparsec, mtl
-, network, nix, optparse-applicative, tasty-bench, temporary, text
-, turtle, vector, wai, wai-extra, warp, warp-tls
-, boost
-}:
-mkDerivation {
- pname = "nix-serve-ng";
- version = "1.0.1";
- src = fetchgit {
- url = "https://github.com/aristanetworks/nix-serve-ng";
- sha256 = "sha256-PkzwtjUgYuqfWtCH1nRqVRaajihN1SqMVjWmoSG/CCY=";
- rev = "9b546864f4090736f3f9069a01ea5d42cf7bab7c";
- fetchSubmodules = true;
- };
- isLibrary = false;
- isExecutable = true;
- executableHaskellDepends = [
- base base16 base32 bytestring charset http-types managed megaparsec
- mtl network optparse-applicative vector wai wai-extra warp warp-tls
- ];
- executablePkgconfigDepends = [ nix ];
- executableSystemDepends = [ boost.dev ];
- benchmarkHaskellDepends = [
- async base bytestring http-client tasty-bench temporary text turtle
- vector
- ];
- description = "A drop-in replacement for nix-serve that's faster and more stable";
- license = lib.licenses.bsd3;
-}
diff --git a/krebs/5pkgs/haskell/purebred-email/default.nix b/krebs/5pkgs/haskell/purebred-email/default.nix
deleted file mode 100644
index 62fc82183..000000000
--- a/krebs/5pkgs/haskell/purebred-email/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ mkDerivation, attoparsec, base, base64-bytestring, bytestring
-, case-insensitive, concise, deepseq, fetchgit, hedgehog, lens, lib
-, QuickCheck, quickcheck-instances, random, semigroupoids
-, stringsearch, tasty, tasty-golden, tasty-hedgehog, tasty-hunit
-, tasty-quickcheck, text, time
-}:
-mkDerivation {
- pname = "purebred-email";
- version = "0.5.1";
- src = fetchgit {
- url = "https://github.com/purebred-mua/purebred-email";
- sha256 = "0iilyy5dkbzbiazyyfjdz585c3x8b7c2piynmycm7krkc48993vw";
- rev = "7ba346e10ad1521a923bc04a4ffeca479d8dd071";
- fetchSubmodules = true;
- };
- isLibrary = true;
- isExecutable = true;
- libraryHaskellDepends = [
- attoparsec base base64-bytestring bytestring case-insensitive
- concise deepseq lens random semigroupoids stringsearch text time
- ];
- testHaskellDepends = [
- attoparsec base bytestring case-insensitive hedgehog lens
- QuickCheck quickcheck-instances random tasty tasty-golden
- tasty-hedgehog tasty-hunit tasty-quickcheck text time
- ];
- homepage = "https://github.com/purebred-mua/purebred-email";
- description = "types and parser for email messages (including MIME)";
- license = lib.licenses.agpl3Plus;
-}
diff --git a/krebs/5pkgs/haskell/purebred-email/untweak-mime-version-header.patch b/krebs/5pkgs/haskell/purebred-email/untweak-mime-version-header.patch
deleted file mode 100644
index 97baf7ac1..000000000
--- a/krebs/5pkgs/haskell/purebred-email/untweak-mime-version-header.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-diff --git a/src/Data/MIME.hs b/src/Data/MIME.hs
-index 19af53e..be8cbd4 100644
---- a/src/Data/MIME.hs
-+++ b/src/Data/MIME.hs
-@@ -810,7 +810,6 @@ multipart takeTillEnd boundary =
- -- | Sets the @MIME-Version: 1.0@ header.
- --
- instance RenderMessage MIME where
-- tweakHeaders = set (headers . at "MIME-Version") (Just "1.0")
- buildBody h z = Just $ case z of
- Part partbody -> Builder.byteString partbody
- Encapsulated msg -> buildMessage msg
-diff --git a/tests/Generator.hs b/tests/Generator.hs
-index 9e1f166..23bd122 100644
---- a/tests/Generator.hs
-+++ b/tests/Generator.hs
-@@ -64,7 +64,7 @@ exampleMailsParseSuccessfully =
- textPlain7bit :: MIMEMessage
- textPlain7bit =
- let m = createTextPlainMessage "This is a simple mail."
-- in over headers (\(Headers xs) -> Headers $ (CI.mk "Subject", "Hello there") : xs) m
-+ in over headers (\(Headers xs) -> Headers $ (CI.mk "MIME-Version", "1.0") : (CI.mk "Subject", "Hello there") : xs) m
-
- multiPartMail :: MIMEMessage
- multiPartMail =
-@@ -72,13 +72,16 @@ multiPartMail =
- to' = Single $ Mailbox Nothing (AddrSpec "bar" (DomainDotAtom $ pure "bar.com"))
- subject = "Hello there"
- p = createTextPlainMessage "This is a simple mail."
-+ & set (headers . at "MIME-Version") (Just "1.0")
- a = createAttachment
- contentTypeApplicationOctetStream
- (Just "foo.bin")
- "fileContentsASDF"
-+ & set (headers . at "MIME-Version") (Just "1.0")
- now = UTCTime (ModifiedJulianDay 123) (secondsToDiffTime 123)
- in createMultipartMixedMessage "asdf" (fromList [p, a])
-- & set (headers . at "From") (Just $ renderMailboxes [from'])
-+ & set (headers . at "MIME-Version") (Just "1.0")
-+ . set (headers . at "From") (Just $ renderMailboxes [from'])
- . set (headers . at "To") (Just $ renderAddresses [to'])
- . set (headers . at "Date") (Just $ renderRFC5422Date now)
- . set (headers . at "Subject") (Just $ T.encodeUtf8 subject)
-diff --git a/tests/Message.hs b/tests/Message.hs
-index 6711519..3e40397 100644
---- a/tests/Message.hs
-+++ b/tests/Message.hs
-@@ -29,7 +29,7 @@ import Data.Char (isPrint)
- import Data.Foldable (fold)
- import Data.List.NonEmpty (NonEmpty(..), intersperse)
-
--import Control.Lens (set, view)
-+import Control.Lens ((&), at, set, view)
- import qualified Data.ByteString as B
- import qualified Data.Text as T
-
-@@ -99,7 +99,7 @@ genMessage = Gen.choice [ genTextPlain, genMultipart, encapsulate <$> genMessage
- prop_messageRoundTrip :: Property
- prop_messageRoundTrip = property $ do
- msg <- forAll genMessage
-- parse (message mime) (renderMessage msg) === Right msg
-+ parse (message mime) (renderMessage $ msg & set (headers . at "MIME-Version") (Just "1.0")) === Right msg
-
- prop_messageFromRoundTrip :: Property
- prop_messageFromRoundTrip = property $ do
diff --git a/krebs/5pkgs/haskell/scanner.nix b/krebs/5pkgs/haskell/scanner.nix
deleted file mode 100644
index a317e575e..000000000
--- a/krebs/5pkgs/haskell/scanner.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ mkDerivation, base, fetchgit, lib }:
-mkDerivation {
- pname = "scanner";
- version = "1.0.1";
- src = fetchgit {
- url = "http://cgit.ni.krebsco.de/scanner";
- sha256 = "1lgl158axczsm4fx53fyq1d4116v91jsx4dbz66ka4k1ljqrmhgn";
- rev = "7f091a3bc152ad3974a1873b460fa1759bf8dcad";
- fetchSubmodules = true;
- };
- libraryHaskellDepends = [ base ];
- license = lib.licenses.mit;
-}
diff --git a/krebs/5pkgs/haskell/xmonad-aeson.nix b/krebs/5pkgs/haskell/xmonad-aeson.nix
deleted file mode 100644
index d27f9c783..000000000
--- a/krebs/5pkgs/haskell/xmonad-aeson.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ mkDerivation, aeson, base, fetchgit, lib, X11-aeson, xmonad }:
-mkDerivation {
- pname = "xmonad-aeson";
- version = "1.0.0";
- src = fetchgit {
- url = "https://cgit.krebsco.de/xmonad-aeson";
- sha256 = "0l1gna6p1498vzm6kj0ywj0i7775mz5n7k9nymwggvfb1pyxv3h9";
- rev = "a95f652b150f17db3f2439214a6346335d6d8d89";
- fetchSubmodules = true;
- };
- libraryHaskellDepends = [ aeson base X11-aeson xmonad ];
- license = lib.licenses.mit;
-}
diff --git a/krebs/5pkgs/haskell/xmonad-stockholm.nix b/krebs/5pkgs/haskell/xmonad-stockholm.nix
deleted file mode 100644
index c43dbe271..000000000
--- a/krebs/5pkgs/haskell/xmonad-stockholm.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ mkDerivation, base, containers, directory, fetchgit, filepath
-, lib, unix, X11, X11-xft, X11-xshape, xmonad, xmonad-contrib
-}:
-mkDerivation {
- pname = "xmonad-stockholm";
- version = "1.3.1";
- src = fetchgit {
- url = "https://cgit.krebsco.de/xmonad-stockholm";
- sha256 = "1m4kkppy143jvjzhy5aawh8q6sglpnqhiajxbdcr42j02ibf3vvq";
- rev = "89bae8aad73db8fe9e11da7d515f0b236e7fea51";
- fetchSubmodules = true;
- };
- libraryHaskellDepends = [
- base containers directory filepath unix X11 X11-xft X11-xshape
- xmonad xmonad-contrib
- ];
- license = lib.licenses.mit;
-}
diff --git a/krebs/5pkgs/simple/flameshot-once/config.nix b/krebs/5pkgs/simple/flameshot-once/config.nix
deleted file mode 100644
index 24df403aa..000000000
--- a/krebs/5pkgs/simple/flameshot-once/config.nix
+++ /dev/null
@@ -1,416 +0,0 @@
-{ config, pkgs, ... }:
-with pkgs.stockholm.lib;
-
-let
- # Encode integer to C-escaped string of bytes, little endian / LSB 0
- le = rec {
- x1 = i: let
- i0 = mod i 16;
- i1 = i / 16;
- in
- if i == 0 then
- "\\0"
- else if i < 16 then
- "\\x${elemAt hexchars i0}"
- else
- "\\x${elemAt hexchars i1}${elemAt hexchars i0}";
-
- x2 = i: let
- i0 = mod i 256;
- i1 = i / 256;
- in
- "${x1 i1}${x1 i0}";
-
- x4 = i: let
- i0 = mod i 65536;
- i1 = i / 65536;
- in
- "${x2 i1}${x2 i0}";
- };
-
- toQList = t: xs:
- assert t == "int";
- "QList<${t}>${le.x4 0}${le.x1 (length xs)}${concatMapStrings le.x4 xs}";
-in
-
-{
- options = {
- imgur = mkOption {
- default = {};
- type = types.submodule {
- options = {
- enable = mkEnableOption "imgur";
- createUrl = mkOption {
- example = "http://p.r/image";
- type = types.str;
- };
- deleteUrl = mkOption {
- example = "http://p.r/image/delete/%1";
- type = types.str;
- };
- xdg-open = mkOption {
- default = {};
- type = types.submodule {
- options = {
- enable = mkEnableOption "imgur.xdg-open" // {
- default = true;
- };
- browser = mkOption {
- default = "${pkgs.coreutils}/bin/false";
- type = types.str;
- };
- createPrefix = mkOption {
- default = config.imgur.createUrl;
- type = types.str;
- };
- deletePrefix = mkOption {
- default = removeSuffix "/%1" config.imgur.deleteUrl;
- type = types.str;
- };
- };
- };
- };
- };
- };
- };
- package = mkOption {
- type = types.package;
- default = import ./flameshot { inherit pkgs; };
- };
- settings = {
- # Options without a description are not documented in flameshot's README.
- # Compare with:
- # nix-shell -p flameshot-once.dev --run get-recognizedGeneralOptions
- General = mapAttrs (_: recursiveUpdate { default = null; }) {
- allowMultipleGuiInstances = mkOption {
- description = ''
- Allow multiple instances of `flameshot gui` to run at the same time
- '';
- type = with types; nullOr bool;
- };
- antialiasingPinZoom = mkOption {
- description = ''
- Anti-aliasing image when zoom the pinned image
- '';
- type = with types; nullOr bool;
- };
- autoCloseIdleDaemon = mkOption {
- description = ''
- Automatically close daemon when it's not needed
- '';
- type = with types; nullOr bool;
- };
- buttons = let
- buttonTypes = {
- # Generated with:
- # nix-shell -p flameshot-once.dev --run get-buttonTypes
- TYPE_PENCIL = 0;
- TYPE_DRAWER = 1;
- TYPE_ARROW = 2;
- TYPE_SELECTION = 3;
- TYPE_RECTANGLE = 4;
- TYPE_CIRCLE = 5;
- TYPE_MARKER = 6;
- TYPE_SELECTIONINDICATOR = 7;
- TYPE_MOVESELECTION = 8;
- TYPE_UNDO = 9;
- TYPE_COPY = 10;
- TYPE_SAVE = 11;
- TYPE_EXIT = 12;
- TYPE_IMAGEUPLOADER = 13;
- TYPE_OPEN_APP = 14;
- TYPE_PIXELATE = 15;
- TYPE_REDO = 16;
- TYPE_PIN = 17;
- TYPE_TEXT = 18;
- TYPE_CIRCLECOUNT = 19;
- TYPE_SIZEINCREASE = 20;
- TYPE_SIZEDECREASE = 21;
- TYPE_INVERT = 22;
- TYPE_ACCEPT = 23;
- };
- iterableButtonTypes = [
- # Generated with:
- # nix-shell -p flameshot-once.dev --run get-iterableButtonTypes
- "TYPE_ACCEPT"
- "TYPE_ARROW"
- "TYPE_CIRCLE"
- "TYPE_CIRCLECOUNT"
- "TYPE_COPY"
- "TYPE_DRAWER"
- "TYPE_EXIT"
- "TYPE_IMAGEUPLOADER"
- "TYPE_MARKER"
- "TYPE_MOVESELECTION"
- "TYPE_OPEN_APP"
- "TYPE_PENCIL"
- "TYPE_PIN"
- "TYPE_PIXELATE"
- "TYPE_RECTANGLE"
- "TYPE_REDO"
- "TYPE_SAVE"
- "TYPE_SELECTION"
- "TYPE_SIZEDECREASE"
- "TYPE_SIZEINCREASE"
- "TYPE_TEXT"
- "TYPE_UNDO"
- ];
- in mkOption {
- apply = names:
- if names != null then let
- values = map (name: buttonTypes.${name}) names;
- in
- ''@Variant(\0\0\0\x7f\0\0\0\v${toQList "int" values})''
- else
- null;
- description = ''
- Configure which buttons to show after drawing a selection
- '';
- type = with types; nullOr (listOf (enum iterableButtonTypes));
- };
- checkForUpdates = mkOption {
- type = with types; nullOr bool;
- };
- contrastOpacity = mkOption {
- description = ''
- Opacity of area outside selection
- '';
- type = with types; nullOr (boundedInt 0 255);
- };
- contrastUiColor = mkOption {
- description = ''
- Contrast UI color
- '';
- type = with types; nullOr flameshot.color;
- };
- copyAndCloseAfterUpload = mkOption {
- type = with types; nullOr bool;
- };
- copyOnDoubleClick = mkOption {
- type = with types; nullOr bool;
- };
- copyPathAfterSave = mkOption {
- description = ''
- Copy path to image after save
- '';
- type = with types; nullOr bool;
- };
- copyURLAfterUpload = mkOption {
- description = ''
- On successful upload, close the dialog and copy URL to clipboard
- '';
- type = with types; nullOr bool;
- };
- disabledTrayIcon = mkOption {
- description = ''
- Whether the tray icon is disabled
- '';
- type = with types; nullOr bool;
- };
- drawColor = mkOption {
- description = ''
- Last used color
- '';
- type = with types; nullOr flameshot.color;
- };
- drawFontSize = mkOption {
- type = with types; nullOr positive;
- };
- drawThickness = mkOption {
- description = ''
- Last used tool thickness
- '';
- type = with types; nullOr positive;
- };
- filenamePattern = mkOption {
- description = ''
- Filename pattern using C++ strftime formatting
- '';
- type =
- # This is types.filename extended by [%:][%:+]*
- with types;
- nullOr (addCheck str (test "[%:0-9A-Za-z._][%:+0-9A-Za-z._-]*"));
- };
- fontFamily = mkOption {
- type = with types; nullOr str;
- };
- historyConfirmationToDelete = mkOption {
- type = with types; nullOr bool;
- };
- ignoreUpdateToVersion = mkOption {
- description = ''
- Ignore updates to versions less than this value
- '';
- type = with types; nullOr str;
- };
- keepOpenAppLauncher = mkOption {
- description = ''
- Keep th