diff options
| -rw-r--r-- | flake.lock | 75 | ||||
| -rw-r--r-- | flake.nix | 8 | ||||
| -rw-r--r-- | user-profiles/feeds/module.nix | 57 |
3 files changed, 41 insertions, 99 deletions
| @@ -1,38 +1,5 @@ | |||
| 1 | { | 1 | { |
| 2 | "nodes": { | 2 | "nodes": { |
| 3 | "beam": { | ||
| 4 | "flake": false, | ||
| 5 | "locked": { | ||
| 6 | "lastModified": 1601074876, | ||
| 7 | "narHash": "sha256-8nTuBP/vD0L/qMo4h3XNrGZvpIwXuMVdj40j5gvHU6w=", | ||
| 8 | "owner": "haskell-beam", | ||
| 9 | "repo": "beam", | ||
| 10 | "rev": "efd464b079755a781c2bb7a2fc030d6c141bbb8a", | ||
| 11 | "type": "github" | ||
| 12 | }, | ||
| 13 | "original": { | ||
| 14 | "owner": "haskell-beam", | ||
| 15 | "repo": "beam", | ||
| 16 | "rev": "efd464b079755a781c2bb7a2fc030d6c141bbb8a", | ||
| 17 | "type": "github" | ||
| 18 | } | ||
| 19 | }, | ||
| 20 | "flake-utils": { | ||
| 21 | "locked": { | ||
| 22 | "lastModified": 1619345332, | ||
| 23 | "narHash": "sha256-qHnQkEp1uklKTpx3MvKtY6xzgcqXDsz5nLilbbuL+3A=", | ||
| 24 | "owner": "numtide", | ||
| 25 | "repo": "flake-utils", | ||
| 26 | "rev": "2ebf2558e5bf978c7fb8ea927dfaed8fefab2e28", | ||
| 27 | "type": "github" | ||
| 28 | }, | ||
| 29 | "original": { | ||
| 30 | "owner": "numtide", | ||
| 31 | "repo": "flake-utils", | ||
| 32 | "rev": "2ebf2558e5bf978c7fb8ea927dfaed8fefab2e28", | ||
| 33 | "type": "github" | ||
| 34 | } | ||
| 35 | }, | ||
| 36 | "home-manager": { | 3 | "home-manager": { |
| 37 | "inputs": { | 4 | "inputs": { |
| 38 | "nixpkgs": [ | 5 | "nixpkgs": [ |
| @@ -54,30 +21,6 @@ | |||
| 54 | "type": "github" | 21 | "type": "github" |
| 55 | } | 22 | } |
| 56 | }, | 23 | }, |
| 57 | "imm": { | ||
| 58 | "inputs": { | ||
| 59 | "beam": "beam", | ||
| 60 | "flake-utils": "flake-utils", | ||
| 61 | "nixpkgs": [ | ||
| 62 | "nixpkgs" | ||
| 63 | ], | ||
| 64 | "rss-conduit": "rss-conduit" | ||
| 65 | }, | ||
| 66 | "locked": { | ||
| 67 | "lastModified": 1620393248, | ||
| 68 | "narHash": "sha256-PG22caLQmAGhLZP49HsazuNd8IFKKaTuhXIQBD8v4Fs=", | ||
| 69 | "owner": "k0ral", | ||
| 70 | "repo": "imm", | ||
| 71 | "rev": "5033879667264cb44cee65671a66f6aa43f249e7", | ||
| 72 | "type": "github" | ||
| 73 | }, | ||
| 74 | "original": { | ||
| 75 | "owner": "k0ral", | ||
| 76 | "ref": "master", | ||
| 77 | "repo": "imm", | ||
| 78 | "type": "github" | ||
| 79 | } | ||
| 80 | }, | ||
| 81 | "nixpkgs": { | 24 | "nixpkgs": { |
| 82 | "locked": { | 25 | "locked": { |
| 83 | "lastModified": 1629458213, | 26 | "lastModified": 1629458213, |
| @@ -97,28 +40,10 @@ | |||
| 97 | "root": { | 40 | "root": { |
| 98 | "inputs": { | 41 | "inputs": { |
| 99 | "home-manager": "home-manager", | 42 | "home-manager": "home-manager", |
| 100 | "imm": "imm", | ||
| 101 | "nixpkgs": "nixpkgs", | 43 | "nixpkgs": "nixpkgs", |
| 102 | "sops-nix": "sops-nix" | 44 | "sops-nix": "sops-nix" |
| 103 | } | 45 | } |
| 104 | }, | 46 | }, |
| 105 | "rss-conduit": { | ||
| 106 | "flake": false, | ||
| 107 | "locked": { | ||
| 108 | "lastModified": 1606053577, | ||
| 109 | "narHash": "sha256-Md9YmKiDPJoV6hDbI5fBz1cSZPJoKiIC4WqyB0Y36XA=", | ||
| 110 | "owner": "k0ral", | ||
| 111 | "repo": "rss-conduit", | ||
| 112 | "rev": "c1fec73d715fd1c9a95a155e87ba469887b8e543", | ||
| 113 | "type": "github" | ||
| 114 | }, | ||
| 115 | "original": { | ||
| 116 | "owner": "k0ral", | ||
| 117 | "repo": "rss-conduit", | ||
| 118 | "rev": "c1fec73d715fd1c9a95a155e87ba469887b8e543", | ||
| 119 | "type": "github" | ||
| 120 | } | ||
| 121 | }, | ||
| 122 | "sops-nix": { | 47 | "sops-nix": { |
| 123 | "inputs": { | 48 | "inputs": { |
| 124 | "nixpkgs": [ | 49 | "nixpkgs": [ |
| @@ -22,14 +22,6 @@ | |||
| 22 | ref = "master"; | 22 | ref = "master"; |
| 23 | inputs.nixpkgs.follows = "nixpkgs"; | 23 | inputs.nixpkgs.follows = "nixpkgs"; |
| 24 | }; | 24 | }; |
| 25 | |||
| 26 | imm = { | ||
| 27 | type = "github"; | ||
| 28 | owner = "k0ral"; | ||
| 29 | repo = "imm"; | ||
| 30 | ref = "master"; | ||
| 31 | inputs.nixpkgs.follows = "nixpkgs"; | ||
| 32 | }; | ||
| 33 | }; | 25 | }; |
| 34 | 26 | ||
| 35 | outputs = { self, nixpkgs, home-manager, sops-nix, ... }@inputs: | 27 | outputs = { self, nixpkgs, home-manager, sops-nix, ... }@inputs: |
diff --git a/user-profiles/feeds/module.nix b/user-profiles/feeds/module.nix index 992bfe37..1face90e 100644 --- a/user-profiles/feeds/module.nix +++ b/user-profiles/feeds/module.nix | |||
| @@ -7,30 +7,55 @@ let | |||
| 7 | 7 | ||
| 8 | configPath = "${config.xdg.configHome}/feeds/notmuchrc"; | 8 | configPath = "${config.xdg.configHome}/feeds/notmuchrc"; |
| 9 | databasePath = "${config.xdg.dataHome}/feeds"; | 9 | databasePath = "${config.xdg.dataHome}/feeds"; |
| 10 | 10 | ||
| 11 | imm = flakeInputs.imm.defaultPackage.${system}.overrideAttrs (oldAttrs: { | 11 | imm = |
| 12 | buildInputs = | 12 | let |
| 13 | let | 13 | hlib = pkgs.haskell.lib; |
| 14 | oldDepends = filter (attr: if attr ? name then builtins.match "(uri-bytestring|atom-conduit)(-.*)?" attr.name == null else true) (oldAttrs.buildInputs or []); | 14 | haskellPackages = pkgs.haskellPackages.override { |
| 15 | newDepends = [ | 15 | overrides = finalHaskell: prevHaskell: { |
| 16 | (pkgs.haskellPackages.callCabal2nix "uri-bytestring" (pkgs.fetchFromGitHub { | 16 | uri-bytestring = finalHaskell.callCabal2nix "uri-bytestring" (pkgs.fetchFromGitHub { |
| 17 | owner = "gkleen"; | 17 | owner = "gkleen"; |
| 18 | repo = "uri-bytestring"; | 18 | repo = "uri-bytestring"; |
| 19 | rev = "5f7f32c8274bc4d1b81d99582f5148fe3e8b637e"; | 19 | rev = "5f7f32c8274bc4d1b81d99582f5148fe3e8b637e"; |
| 20 | sha256 = "XLanwyCDIlMuOkpE5LbTNOBfL+1kZX+URfj9Bhs1Nsc="; | 20 | sha256 = "XLanwyCDIlMuOkpE5LbTNOBfL+1kZX+URfj9Bhs1Nsc="; |
| 21 | fetchSubmodules = true; | 21 | fetchSubmodules = true; |
| 22 | }) {}) | 22 | }) {}; |
| 23 | (pkgs.haskellPackages.callCabal2nix "atom-conduit" (pkgs.fetchFromGitHub { | 23 | atom-conduit = finalHaskell.callCabal2nix "atom-conduit" (pkgs.fetchFromGitHub { |
| 24 | owner = "gkleen"; | 24 | owner = "gkleen"; |
| 25 | repo = "atom-conduit"; | 25 | repo = "atom-conduit"; |
| 26 | rev = "af33d1162d84f1fca00fe92a2e47f0a1a5275b4b"; | 26 | rev = "022f0182a02373f87c06a0a09817c8c41efe2425"; |
| 27 | sha256 = "FbfA4cvF0Z9Q4ethJmXWAQmWdFZNds7XRIMWFXc+ByA="; | 27 | sha256 = "8yEyh3ymqkoM/YP+eBqPq1I5ofzj0Qn7ojL7IWx1DPo="; |
| 28 | fetchSubmodules = true; | ||
| 29 | }) {}; | ||
| 30 | rss-conduit = finalHaskell.callCabal2nix "rss-condit" (pkgs.fetchFromGitHub { | ||
| 31 | owner = "gkleen"; | ||
| 32 | repo = "rss-conduit"; | ||
| 33 | rev = "dbb0960a8d3dc519f1607aa0223b3a25a49282ef"; | ||
| 34 | sha256 = "Md1XApZWkdv4JvNoaVnjz0S85LbEC6w9U3PUcwXfu94="; | ||
| 35 | fetchSubmodules = true; | ||
| 36 | }) {}; | ||
| 37 | beam-core = hlib.doJailbreak (finalHaskell.callCabal2nix "beam-core" "${beamSrc}/beam-core" {}); | ||
| 38 | beam-migrate = hlib.doJailbreak (finalHaskell.callCabal2nix "beam-migrate" "${beamSrc}/beam-migrate" {}); | ||
| 39 | beam-sqlite = hlib.doJailbreak (finalHaskell.callCabal2nix "beam-sqlite" "${beamSrc}/beam-sqlite" {}); | ||
| 40 | |||
| 41 | imm = finalHaskell.callCabal2nix "imm" (pkgs.fetchFromGitHub { | ||
| 42 | owner = "k0ral"; | ||
| 43 | repo = "imm"; | ||
| 44 | rev = "5033879667264cb44cee65671a66f6aa43f249e7"; | ||
| 45 | sha256 = "PG22caLQmAGhLZP49HsazuNd8IFKKaTuhXIQBD8v4Fs="; | ||
| 28 | fetchSubmodules = true; | 46 | fetchSubmodules = true; |
| 29 | }) {}) | 47 | }) {}; |
| 30 | ]; | 48 | }; |
| 31 | in oldDepends ++ newDepends; | 49 | }; |
| 32 | }); | 50 | beamSrc = pkgs.fetchFromGitHub { |
| 33 | immWrapped = pkgs.runCommand "${imm.name}-wrapped-${config.home.username}" | 51 | owner = "haskell-beam"; |
| 52 | repo = "beam"; | ||
| 53 | rev = "efd464b079755a781c2bb7a2fc030d6c141bbb8a"; | ||
| 54 | sha256 = "8nTuBP/vD0L/qMo4h3XNrGZvpIwXuMVdj40j5gvHU6w="; | ||
| 55 | fetchSubmodules = true; | ||
| 56 | }; | ||
| 57 | in haskellPackages.imm; | ||
| 58 | immWrapped = pkgs.runCommand "${imm.name}-wrapped-${config.home.username}" | ||
| 34 | { nativeBuildInputs = with pkgs; [ makeWrapper imm ]; | 59 | { nativeBuildInputs = with pkgs; [ makeWrapper imm ]; |
| 35 | } '' | 60 | } '' |
| 36 | mkdir -p $out/bin | 61 | mkdir -p $out/bin |
