diff --git a/flake.lock b/flake.lock
new file mode 100644
index 00000000..112b026e
--- /dev/null
+++ b/flake.lock
@@ -0,0 +1,611 @@
+{
+ "nodes": {
+ "agenix": {
+ "inputs": {
+ "nixpkgs": [
+ "nixos"
+ ]
+ },
+ "locked": {
+ "lastModified": 1646105662,
+ "narHash": "sha256-jdXCZbGZL0SWWi29GnAOFHUh/QvvP0IyaVLv1ZTDkBI=",
+ "owner": "ryantm",
+ "repo": "agenix",
+ "rev": "297cd58b418249240b9f1f155d52b1b17f292884",
+ "type": "github"
+ },
+ "original": {
+ "owner": "ryantm",
+ "repo": "agenix",
+ "type": "github"
+ }
+ },
+ "beautysh": {
+ "inputs": {
+ "flake-utils": "flake-utils",
+ "nixpkgs": "nixpkgs",
+ "poetry2nix": "poetry2nix"
+ },
+ "locked": {
+ "lastModified": 1641830469,
+ "narHash": "sha256-uhDmgNP/biOWe4FtOa6c2xZnREH+NP9rdrMm0LccRUk=",
+ "owner": "lovesegfault",
+ "repo": "beautysh",
+ "rev": "e85d9736927c0fcf2abb05cb3a2d8d9b4502a2eb",
+ "type": "github"
+ },
+ "original": {
+ "owner": "lovesegfault",
+ "repo": "beautysh",
+ "type": "github"
+ }
+ },
+ "blank": {
+ "locked": {
+ "lastModified": 1625557891,
+ "narHash": "sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4=",
+ "owner": "divnix",
+ "repo": "blank",
+ "rev": "5a5d2684073d9f563072ed07c871d577a6c614a8",
+ "type": "github"
+ },
+ "original": {
+ "owner": "divnix",
+ "repo": "blank",
+ "type": "github"
+ }
+ },
+ "bud": {
+ "inputs": {
+ "beautysh": "beautysh",
+ "devshell": [
+ "digga",
+ "devshell"
+ ],
+ "nixpkgs": [
+ "nixos"
+ ]
+ },
+ "locked": {
+ "lastModified": 1642035816,
+ "narHash": "sha256-1Lq5c1AeUv/1SK08+O704JVfDdD/zodHzA0cv0TIga8=",
+ "owner": "divnix",
+ "repo": "bud",
+ "rev": "a789d710851441ba7e7cd59be378623b1fe05688",
+ "type": "github"
+ },
+ "original": {
+ "owner": "divnix",
+ "repo": "bud",
+ "type": "github"
+ }
+ },
+ "darwin": {
+ "inputs": {
+ "nixpkgs": [
+ "nixos"
+ ]
+ },
+ "locked": {
+ "lastModified": 1645293039,
+ "narHash": "sha256-PwdDu+SkX8dreeuJ/4av1sEluNZdrpdXv8JsRKKg1Yc=",
+ "owner": "LnL7",
+ "repo": "nix-darwin",
+ "rev": "1df878b6f8351795a3bebfbe4fd2d02e1e8b29d6",
+ "type": "github"
+ },
+ "original": {
+ "owner": "LnL7",
+ "repo": "nix-darwin",
+ "type": "github"
+ }
+ },
+ "deploy": {
+ "inputs": {
+ "flake-compat": "flake-compat",
+ "nixpkgs": [
+ "nixos"
+ ],
+ "utils": "utils"
+ },
+ "locked": {
+ "lastModified": 1643787431,
+ "narHash": "sha256-8IwuVgXulRE3ZWq6z8mytarawC32pKPKR20EyDtSH+w=",
+ "owner": "serokell",
+ "repo": "deploy-rs",
+ "rev": "4154ba1aaaf7333a916384c348d867d03b6f1409",
+ "type": "github"
+ },
+ "original": {
+ "owner": "serokell",
+ "repo": "deploy-rs",
+ "type": "github"
+ }
+ },
+ "devshell": {
+ "locked": {
+ "lastModified": 1637575296,
+ "narHash": "sha256-ZY8YR5u8aglZPe27+AJMnPTG6645WuavB+w0xmhTarw=",
+ "owner": "numtide",
+ "repo": "devshell",
+ "rev": "0e56ef21ba1a717169953122c7415fa6a8cd2618",
+ "type": "github"
+ },
+ "original": {
+ "owner": "numtide",
+ "repo": "devshell",
+ "type": "github"
+ }
+ },
+ "digga": {
+ "inputs": {
+ "blank": "blank",
+ "deploy": [
+ "deploy"
+ ],
+ "devshell": "devshell",
+ "flake-compat": "flake-compat_2",
+ "flake-utils-plus": "flake-utils-plus",
+ "home-manager": [
+ "home"
+ ],
+ "latest": "latest",
+ "nixlib": [
+ "nixos"
+ ],
+ "nixos-generators": "nixos-generators",
+ "nixpkgs": [
+ "nixos"
+ ]
+ },
+ "locked": {
+ "lastModified": 1646340536,
+ "narHash": "sha256-mXNWDqHDGqGRIE7RxN6nkhQyZcikJL2HAvu55ITuC98=",
+ "owner": "divnix",
+ "repo": "digga",
+ "rev": "bfecf143c098581e0aafe1b8f9e3f2f7a402fb17",
+ "type": "github"
+ },
+ "original": {
+ "owner": "divnix",
+ "repo": "digga",
+ "type": "github"
+ }
+ },
+ "flake-compat": {
+ "flake": false,
+ "locked": {
+ "lastModified": 1641205782,
+ "narHash": "sha256-4jY7RCWUoZ9cKD8co0/4tFARpWB+57+r1bLLvXNJliY=",
+ "owner": "edolstra",
+ "repo": "flake-compat",
+ "rev": "b7547d3eed6f32d06102ead8991ec52ab0a4f1a7",
+ "type": "github"
+ },
+ "original": {
+ "owner": "edolstra",
+ "repo": "flake-compat",
+ "type": "github"
+ }
+ },
+ "flake-compat_2": {
+ "flake": false,
+ "locked": {
+ "lastModified": 1641205782,
+ "narHash": "sha256-4jY7RCWUoZ9cKD8co0/4tFARpWB+57+r1bLLvXNJliY=",
+ "owner": "edolstra",
+ "repo": "flake-compat",
+ "rev": "b7547d3eed6f32d06102ead8991ec52ab0a4f1a7",
+ "type": "github"
+ },
+ "original": {
+ "owner": "edolstra",
+ "repo": "flake-compat",
+ "type": "github"
+ }
+ },
+ "flake-compat_3": {
+ "flake": false,
+ "locked": {
+ "lastModified": 1627913399,
+ "narHash": "sha256-hY8g6H2KFL8ownSiFeMOjwPC8P0ueXpCVEbxgda3pko=",
+ "owner": "edolstra",
+ "repo": "flake-compat",
+ "rev": "12c64ca55c1014cdc1b16ed5a804aa8576601ff2",
+ "type": "github"
+ },
+ "original": {
+ "owner": "edolstra",
+ "repo": "flake-compat",
+ "type": "github"
+ }
+ },
+ "flake-utils": {
+ "locked": {
+ "lastModified": 1631561581,
+ "narHash": "sha256-3VQMV5zvxaVLvqqUrNz3iJelLw30mIVSfZmAaauM3dA=",
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "rev": "7e5bf3925f6fbdfaf50a2a7ca0be2879c4261d19",
+ "type": "github"
+ },
+ "original": {
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "type": "github"
+ }
+ },
+ "flake-utils-plus": {
+ "inputs": {
+ "flake-utils": "flake-utils_3"
+ },
+ "locked": {
+ "lastModified": 1639385028,
+ "narHash": "sha256-oqorKz3mwf7UuDJwlbCEYCB2LfcWLL0DkeCWhRIL820=",
+ "owner": "gytis-ivaskevicius",
+ "repo": "flake-utils-plus",
+ "rev": "be1be083af014720c14f3b574f57b6173b4915d0",
+ "type": "github"
+ },
+ "original": {
+ "owner": "gytis-ivaskevicius",
+ "repo": "flake-utils-plus",
+ "type": "github"
+ }
+ },
+ "flake-utils_2": {
+ "locked": {
+ "lastModified": 1644229661,
+ "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
+ "type": "github"
+ },
+ "original": {
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "type": "github"
+ }
+ },
+ "flake-utils_3": {
+ "locked": {
+ "lastModified": 1638122382,
+ "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=",
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "rev": "74f7e4319258e287b0f9cb95426c9853b282730b",
+ "type": "github"
+ },
+ "original": {
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "type": "github"
+ }
+ },
+ "flake-utils_4": {
+ "locked": {
+ "lastModified": 1638122382,
+ "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=",
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "rev": "74f7e4319258e287b0f9cb95426c9853b282730b",
+ "type": "github"
+ },
+ "original": {
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "type": "github"
+ }
+ },
+ "flake-utils_5": {
+ "locked": {
+ "lastModified": 1638122382,
+ "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=",
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "rev": "74f7e4319258e287b0f9cb95426c9853b282730b",
+ "type": "github"
+ },
+ "original": {
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "type": "github"
+ }
+ },
+ "home": {
+ "inputs": {
+ "nixpkgs": [
+ "nixos"
+ ]
+ },
+ "locked": {
+ "lastModified": 1643933536,
+ "narHash": "sha256-yRmsWAG4DnLxLIUtlaZsl0kH7rN5xSoyNRlf0YZrcH4=",
+ "owner": "nix-community",
+ "repo": "home-manager",
+ "rev": "2860d7e3bb350f18f7477858f3513f9798896831",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-community",
+ "ref": "release-21.11",
+ "repo": "home-manager",
+ "type": "github"
+ }
+ },
+ "latest": {
+ "locked": {
+ "lastModified": 1638198142,
+ "narHash": "sha256-plU9b8r4St6q4U7VHtG9V7oF8k9fIpfXl/KDaZLuY9k=",
+ "owner": "nixos",
+ "repo": "nixpkgs",
+ "rev": "8a308775674e178495767df90c419425474582a1",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nixos",
+ "ref": "nixos-unstable",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "latest_2": {
+ "locked": {
+ "lastModified": 1646254136,
+ "narHash": "sha256-8nQx02tTzgYO21BP/dy5BCRopE8OwE8Drsw98j+Qoaw=",
+ "owner": "nixos",
+ "repo": "nixpkgs",
+ "rev": "3e072546ea98db00c2364b81491b893673267827",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nixos",
+ "ref": "nixos-unstable",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "naersk": {
+ "inputs": {
+ "nixpkgs": [
+ "nixos"
+ ]
+ },
+ "locked": {
+ "lastModified": 1639947939,
+ "narHash": "sha256-pGsM8haJadVP80GFq4xhnSpNitYNQpaXk4cnA796Cso=",
+ "owner": "nmattia",
+ "repo": "naersk",
+ "rev": "2fc8ce9d3c025d59fee349c1f80be9785049d653",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nmattia",
+ "repo": "naersk",
+ "type": "github"
+ }
+ },
+ "nix-dram": {
+ "inputs": {
+ "flake-utils": "flake-utils_4",
+ "nixpkgs": [
+ "latest"
+ ]
+ },
+ "locked": {
+ "lastModified": 1644066500,
+ "narHash": "sha256-15PCSlsvYQOwJ+Jvp9evrBiun4pquPAh5VZAUO5whcw=",
+ "owner": "dramforever",
+ "repo": "nix-dram",
+ "rev": "579d5a3db2cb4726653a0916e0f210dbb84cb0a5",
+ "type": "github"
+ },
+ "original": {
+ "owner": "dramforever",
+ "repo": "nix-dram",
+ "type": "github"
+ }
+ },
+ "nixlib": {
+ "locked": {
+ "lastModified": 1641688481,
+ "narHash": "sha256-6L+EU12xLDHby7y8elgFtRKVBxix+7qV8DhVgXqrKZo=",
+ "owner": "nix-community",
+ "repo": "nixpkgs.lib",
+ "rev": "f697717b3d3a074ffc16c8c8227504f0db292886",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-community",
+ "repo": "nixpkgs.lib",
+ "type": "github"
+ }
+ },
+ "nixos": {
+ "locked": {
+ "lastModified": 1646358457,
+ "narHash": "sha256-rzvpqPRX5q5sOUbu7lhZkk9vhnIVWSARnu+R9mSE3Vc=",
+ "owner": "nixos",
+ "repo": "nixpkgs",
+ "rev": "0fc9d50c3104c8ddb11cf0c83a045eb78ad17058",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nixos",
+ "ref": "release-21.11",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "nixos-generators": {
+ "inputs": {
+ "nixlib": "nixlib",
+ "nixpkgs": "nixpkgs_3"
+ },
+ "locked": {
+ "lastModified": 1637655461,
+ "narHash": "sha256-kXZPbclN3gKwjhp2/RYFDFpAsSBwzX1iLF4EcnHZsPQ=",
+ "owner": "nix-community",
+ "repo": "nixos-generators",
+ "rev": "05a3eb158a9c7746a5d463726d7f7cccf07500e4",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-community",
+ "repo": "nixos-generators",
+ "type": "github"
+ }
+ },
+ "nixos-hardware": {
+ "locked": {
+ "lastModified": 1646398322,
+ "narHash": "sha256-p+WCAOoJLc4R6x60pLYYqAiq30PlDUYJMrXqQ3rkBCg=",
+ "owner": "nixos",
+ "repo": "nixos-hardware",
+ "rev": "a7bca8d0d8188ae9802ecc467150cf018e19b958",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nixos",
+ "repo": "nixos-hardware",
+ "type": "github"
+ }
+ },
+ "nixpkgs": {
+ "locked": {
+ "lastModified": 1633971123,
+ "narHash": "sha256-WmI4NbH1IPGFWVkuBkKoYgOnxgwSfWDgdZplJlQ93vA=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "e4ef597edfd8a0ba5f12362932fc9b1dd01a0aef",
+ "type": "github"
+ },
+ "original": {
+ "owner": "NixOS",
+ "ref": "nixos-unstable-small",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "nixpkgs_2": {
+ "locked": {
+ "lastModified": 1646943458,
+ "narHash": "sha256-qgGBWULyReIEdRg/k52Tv4Eognyk8S9360oxem+1qFY=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "b3b026509758cebbaa4e3173c1f1531102b28b64",
+ "type": "github"
+ },
+ "original": {
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "nixpkgs_3": {
+ "locked": {
+ "lastModified": 1646506091,
+ "narHash": "sha256-sWNAJE2m+HOh1jtXlHcnhxsj6/sXrHgbqVNcVRlveK4=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "3e644bd62489b516292c816f70bf0052c693b3c7",
+ "type": "github"
+ },
+ "original": {
+ "owner": "NixOS",
+ "ref": "nixpkgs-unstable",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "nur": {
+ "locked": {
+ "lastModified": 1626378135,
+ "narHash": "sha256-koC6DBYmLCrgXA+AMHVaODf1uHYPmvcFygHfy3eg6vI=",
+ "path": "/nix/store/6mfkswqi67m35qwv0vh7kpk8rypbl2rq-source",
+ "rev": "00c2ec8f0bbdf0cfb2135bde55fbae5d6b64aa6d",
+ "type": "path"
+ },
+ "original": {
+ "id": "nur",
+ "type": "indirect"
+ }
+ },
+ "nvfetcher": {
+ "inputs": {
+ "flake-compat": "flake-compat_3",
+ "flake-utils": "flake-utils_5",
+ "nixpkgs": [
+ "nixos"
+ ]
+ },
+ "locked": {
+ "lastModified": 1644123018,
+ "narHash": "sha256-xEhhLmuy4FnT4Zdkf3epPX9T3xqn59yERCsicG4IEyM=",
+ "owner": "berberman",
+ "repo": "nvfetcher",
+ "rev": "9f2cb15c4668859312b6a854d79ad753d5b98b03",
+ "type": "github"
+ },
+ "original": {
+ "owner": "berberman",
+ "repo": "nvfetcher",
+ "type": "github"
+ }
+ },
+ "poetry2nix": {
+ "inputs": {
+ "flake-utils": "flake-utils_2",
+ "nixpkgs": "nixpkgs_2"
+ },
+ "locked": {
+ "lastModified": 1633382856,
+ "narHash": "sha256-hYlet806M9xJj4yxf0g5fhDT2IEUVIMAl7sqIeZ8DUM=",
+ "owner": "nix-community",
+ "repo": "poetry2nix",
+ "rev": "705cbfa10e3d9bfed2e59e0256844ae3704dbd7e",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-community",
+ "repo": "poetry2nix",
+ "type": "github"
+ }
+ },
+ "root": {
+ "inputs": {
+ "agenix": "agenix",
+ "bud": "bud",
+ "darwin": "darwin",
+ "deploy": "deploy",
+ "digga": "digga",
+ "home": "home",
+ "latest": "latest_2",
+ "naersk": "naersk",
+ "nix-dram": "nix-dram",
+ "nixos": "nixos",
+ "nixos-hardware": "nixos-hardware",
+ "nur": "nur",
+ "nvfetcher": "nvfetcher"
+ }
+ },
+ "utils": {
+ "locked": {
+ "lastModified": 1642700792,
+ "narHash": "sha256-XqHrk7hFb+zBvRg6Ghl+AZDq03ov6OshJLiSWOoX5es=",
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "rev": "846b2ae0fc4cc943637d3d1def4454213e203cba",
+ "type": "github"
+ },
+ "original": {
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "type": "github"
+ }
+ }
+ },
+ "root": "root",
+ "version": 7
+}
diff --git a/hosts/chocolatebar/virtualisation/guest-xml.nix b/hosts/chocolatebar/virtualisation/guest-xml.nix
index d4fe2adb..2c446daf 100644
--- a/hosts/chocolatebar/virtualisation/guest-xml.nix
+++ b/hosts/chocolatebar/virtualisation/guest-xml.nix
@@ -13,8 +13,8 @@ in
- 33554432
- 33554432
+ 50331648
+ 50331648
12
@@ -96,7 +96,7 @@ in
${pkgs.qemu}/bin/qemu-system-x86_64
-
+
diff --git a/modules/paperless/default.nix b/modules/paperless/default.nix
index 8f32cc3b..9fd22ab4 100644
--- a/modules/paperless/default.nix
+++ b/modules/paperless/default.nix
@@ -6,10 +6,6 @@ let
xdg = config.home-manager.users."${psCfg.user.name}".xdg;
in
{
- imports = [
- ./scanbd.nix
- ];
-
options.pub-solar.paperless = {
enable = mkEnableOption "All you need to go paperless";
ocrLanguage = mkOption {
@@ -27,7 +23,6 @@ in
};
config = mkIf cfg.enable {
- services.scanbd.enable = true;
services.paperless-ng = {
enable = true;
consumptionDir = cfg.consumptionDir;
diff --git a/modules/paperless/scanbd.nix b/modules/paperless/scanbd.nix
deleted file mode 100644
index 2cf508d4..00000000
--- a/modules/paperless/scanbd.nix
+++ /dev/null
@@ -1,176 +0,0 @@
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-let
- configDir = "/etc/scanbd";
- saneConfigDir = "${configDir}/sane.d";
- cfg = config.pub-solar.paperless;
-
- scanbdConf = pkgs.writeText "scanbd.conf"
- ''
- global {
- debug = true
- debug-level = ${toString config.services.scanbd.debugLevel}
- user = ${config.services.scanbd.user}
- group = ${config.services.scanbd.group}
- scriptdir = ${configDir}/scripts
- pidfile = ${config.services.scanbd.pidFile}
- timeout = ${toString config.services.scanbd.timeOut}
- environment {
- device = "SCANBD_DEVICE"
- action = "SCANBD_ACTION"
- }
-
- multiple_actions = true
- action scan {
- numerical-trigger {
- from-value = 1
- to-value = 0
- }
- desc = "Scan to file"
- script = "scan.script"
- }
- ${config.services.scanbd.extraConfig}
- }
- '';
-
- scanScript = pkgs.writeScript "scanbd_scan.script"
- ''
- #! ${pkgs.bash}/bin/bash
- export PATH=${lib.makeBinPath [ pkgs.coreutils pkgs.sane-frontends pkgs.sane-backends pkgs.ghostscript pkgs.imagemagick ]}
- set -x
- date="$(date --iso-8601=seconds)"
- filename="Scan $date.pdf"
- tmpdir="$(mktemp -d)"
- exec 3>&1 1>>"/tmp/$filename.log" 2>&1
- pushd "$tmpdir"
- scanadf -d "$SCANBD_DEVICE" --resolution 300dpi
-
- # Convert any PNM images produced by the scan into a PDF with the date as a name
- convert image* -density 200 "$filename"
- chmod 0666 "$filename"
-
- # Remove temporary PNM images
- rm --verbose image*
-
- # Atomic move converted PDF to destination directory
- paperlessdir="${cfg.consumptionDir}"
- cp -pv "$filename" $paperlessdir/"$filename".tmp &&
- mv $paperlessdir/"$filename".tmp $paperlessdir/"$filename" &&
- rm "$filename"
-
- popd
- rm -r "$tmpdir"
- '';
-
-in
-
-{
-
- ###### interface
- options = {
-
- services.scanbd.enable = mkOption {
- type = types.bool;
- default = false;
- description = ''
- Enable support for scanbd (scanner button daemon).
-
-
- If scanbd is enabled, then saned must be disabled.
-
- '';
- };
-
- services.scanbd.user = mkOption {
- type = types.str;
- default = "scanner";
- example = "";
- description = ''
- scanbd daemon user name.
- '';
- };
-
- services.scanbd.group = mkOption {
- type = types.str;
- default = "scanner";
- example = "";
- description = ''
- scanbd daemon group name.
- '';
- };
-
- services.scanbd.extraConfig = mkOption {
- type = types.lines;
- default = "";
- example = ''
- device canon {
- filter = "^genesys.*"
- desc = "Canon LIDE"
- action file {
- filter = "^file.*"
- desc = "File"
- script = "copy.script"
- }
- }
- '';
- description = ''
- Extra configuration lines included verbatim in scanbd.conf.
- Use e.g. in lieu of including device-specific config templates
- under scanner.d/
- '';
- };
-
- services.scanbd.pidFile = mkOption {
- type = types.str;
- default = "/var/run/scanbd.pid";
- example = "";
- description = ''
- PID file path.
- '';
- };
-
- services.scanbd.timeOut = mkOption {
- type = types.int;
- default = 500;
- example = "";
- description = ''
- Device polling timeout (in ms).
- '';
- };
-
- services.scanbd.debugLevel = mkOption {
- type = types.int;
- default = 3;
- example = "";
- description = ''
- Debug logging (1=error, 2=warn, 3=info, 4-7=debug)
- '';
- };
-
- };
-
- ###### implementation
- config = mkIf config.services.scanbd.enable {
-
- users.groups.scanner.gid = config.ids.gids.scanner;
- users.users.scanner = {
- uid = config.ids.uids.scanner;
- group = "scanner";
- };
-
- environment.etc."scanbd/scanbd.conf".source = scanbdConf;
- environment.etc."scanbd/scripts/scan.script".source = scanScript;
- environment.etc."scanbd/scripts/test.script".source = "${pkgs.scanbd}/etc/scanbd/test.script";
-
- systemd.services.scanbd = {
- enable = true;
- description = "Scanner button polling service";
- documentation = [ "https://sourceforge.net/p/scanbd/code/HEAD/tree/releases/1.5.1/integration/systemd/README.systemd" ];
- script = "${pkgs.scanbd}/bin/scanbd -c ${configDir}/scanbd.conf -f";
- wantedBy = [ "multi-user.target" ];
- aliases = [ "dbus-de.kmux.scanbd.server.service" ];
- };
- };
-}
diff --git a/overlays/overrides.nix b/overlays/overrides.nix
index 9fd449fc..0021f752 100644
--- a/overlays/overrides.nix
+++ b/overlays/overrides.nix
@@ -24,6 +24,7 @@ channels: final: prev: {
obs-studio
obs-studio-plugins
looking-glass-client
+ itch
;
diff --git a/pkgs/default.nix b/pkgs/default.nix
index 312e685f..63fe4185 100644
--- a/pkgs/default.nix
+++ b/pkgs/default.nix
@@ -16,4 +16,6 @@ with final; {
toggle-kbd-layout = writeShellScriptBin "toggle-kbd-layout" (import ./toggle-kbd-layout.nix final);
uhk-agent = import ./uhk-agent.nix final;
wcwd = writeShellScriptBin "wcwd" (import ./wcwd.nix final);
+
+ scan2paperless = writeShellScriptBin "scan2paperless" (import ./scan2paperless.nix final);
}
diff --git a/pkgs/scan2paperless.nix b/pkgs/scan2paperless.nix
new file mode 100644
index 00000000..73aa035a
--- /dev/null
+++ b/pkgs/scan2paperless.nix
@@ -0,0 +1,3 @@
+self: with self; ''
+ export PATH=${lib.makeBinPath [ pkgs.coreutils pkgs.sane-frontends pkgs.sane-backends pkgs.ghostscript pkgs.imagemagick ]}
+''
diff --git a/users/ben/home.nix b/users/ben/home.nix
index a10b3b11..7519383d 100644
--- a/users/ben/home.nix
+++ b/users/ben/home.nix
@@ -13,6 +13,7 @@ in
home.packages = with pkgs; [
dogecoin
nodejs
+ itch
];
programs.ssh = {