summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--flake.lock75
-rw-r--r--flake.nix8
-rw-r--r--user-profiles/feeds/module.nix57
3 files changed, 41 insertions, 99 deletions
diff --git a/flake.lock b/flake.lock
index 0c335787..c13ae8c1 100644
--- a/flake.lock
+++ b/flake.lock
@@ -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": [
diff --git a/flake.nix b/flake.nix
index 6d4f4217..eb6f1fda 100644
--- a/flake.nix
+++ b/flake.nix
@@ -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