]>
Commit | Line | Data |
---|---|---|
56cfbfb0 IB |
1 | { |
2 | description = "Backported packages"; | |
3 | ||
20bab453 | 4 | inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; |
56cfbfb0 IB |
5 | inputs.flake-utils.url = "github:numtide/flake-utils"; |
6 | ||
7 | outputs = { self, flake-utils, nixpkgs }: flake-utils.lib.eachDefaultSystem (system: | |
8 | let | |
9 | pkgs = import nixpkgs { inherit system; overlays = []; }; | |
10 | in rec { | |
11 | packages = { | |
12 | apprise = pkgs.apprise; | |
13 | bitlbee-mastodon = pkgs.bitlbee-mastodon; | |
14 | cointop = pkgs.cointop; | |
a3ac9c84 | 15 | coturn = pkgs.coturn; |
56cfbfb0 | 16 | cryptpad = pkgs.cryptpad; |
d3a43b08 | 17 | delta = pkgs.delta; |
56cfbfb0 IB |
18 | dovecot_fts-xapian = pkgs.dovecot_fts_xapian; |
19 | duply = pkgs.duply; | |
20 | fiche = pkgs.fiche; | |
bdaca01e | 21 | galene = pkgs.galene; |
d3a43b08 | 22 | hetzner = pkgs.python3Packages.hetzner; |
56cfbfb0 | 23 | influxdb2 = pkgs.influxdb2; |
def6ad99 IB |
24 | ldapvi = pkgs.ldapvi; |
25 | lego = pkgs.lego; | |
56cfbfb0 IB |
26 | mpd = pkgs.mpd; |
27 | mpd-small = pkgs.mpd-small; | |
d3a43b08 | 28 | neomutt = pkgs.neomutt; |
def6ad99 IB |
29 | opensmtpd = pkgs.opensmtpd; |
30 | pass = pkgs.pass; | |
56cfbfb0 IB |
31 | pg_activity = pkgs.pg_activity; |
32 | signald = pkgs.signald; | |
282c67a1 | 33 | ssh-to-age = pkgs.ssh-to-age; |
56cfbfb0 | 34 | stgit = pkgs.stgit; |
282c67a1 | 35 | sops = pkgs.sops; |
def6ad99 | 36 | sudo = pkgs.sudo; |
56cfbfb0 IB |
37 | telegram-cli = pkgs.telegram-cli; |
38 | woob = pkgs.python3Packages.woob; | |
39 | zrepl = pkgs.zrepl; | |
40 | }; | |
41 | legacyPackages = packages; | |
42 | apps = { | |
43 | apprise = flake-utils.lib.mkApp { drv = packages.apprise; name = "apprise"; }; | |
44 | cointop = flake-utils.lib.mkApp { drv = packages.cointop; name = "cointop"; }; | |
a3ac9c84 | 45 | coturn = flake-utils.lib.mkApp { drv = packages.coturn; name = "coturn"; }; |
56cfbfb0 | 46 | cryptpad = flake-utils.lib.mkApp { drv = packages.cryptpad; name = "cryptpad"; }; |
d3a43b08 | 47 | delta = flake-utils.lib.mkApp { drv = packages.delta; name = "delta"; }; |
56cfbfb0 IB |
48 | duply = flake-utils.lib.mkApp { drv = packages.duply; name = "duply"; }; |
49 | fiche = flake-utils.lib.mkApp { drv = packages.fiche; name = "fiche"; }; | |
bdaca01e | 50 | galene = flake-utils.lib.mkApp { drv = packages.galene; name = "galene"; }; |
d3a43b08 | 51 | hetzner = flake-utils.lib.mkApp { drv = packages.hetzner; name = "hetznerctl"; }; |
56cfbfb0 IB |
52 | influxd = flake-utils.lib.mkApp { drv = packages.influxdb2; name = "influxd"; }; |
53 | influx = flake-utils.lib.mkApp { drv = packages.influxdb2; name = "influx"; }; | |
def6ad99 IB |
54 | ldapvi = flake-utils.lib.mkApp { drv = packages.ldapvi; name = "ldapvi"; }; |
55 | lego = flake-utils.lib.mkApp { drv = packages.lego; name = "lego"; }; | |
56cfbfb0 IB |
56 | mpd = flake-utils.lib.mkApp { drv = packages.mpd; name = "mpd"; }; |
57 | mpd-small = flake-utils.lib.mkApp { drv = packages.mpd-small; name = "mpd"; }; | |
d3a43b08 | 58 | neomutt = flake-utils.lib.mkApp { drv = packages.neomutt; name = "neomutt"; }; |
def6ad99 IB |
59 | opensmtpd = flake-utils.lib.mkApp { drv = packages.opensmtpd; name = "opensmtpd"; }; |
60 | pass = flake-utils.lib.mkApp { drv = packages.pass; name = "pass"; }; | |
56cfbfb0 IB |
61 | pg_activity = flake-utils.lib.mkApp { drv = packages.pg_activity; name = "pg_activity"; }; |
62 | signald = flake-utils.lib.mkApp { drv = packages.signald; name = "signald"; }; | |
282c67a1 | 63 | ssh-to-age = flake-utils.lib.mkApp { drv = packages.ssh-to-age; name = "ssh-to-age"; }; |
56cfbfb0 | 64 | stgit = flake-utils.lib.mkApp { drv = packages.stgit; name = "stgit"; }; |
282c67a1 | 65 | sops = flake-utils.lib.mkApp { drv = packages.sops; name = "sops"; }; |
def6ad99 | 66 | sudo = flake-utils.lib.mkApp { drv = packages.sudo; name = "sudo"; }; |
56cfbfb0 IB |
67 | telegram-cli = flake-utils.lib.mkApp { drv = packages.telegram-cli; name = "telegram-cli"; }; |
68 | woob = flake-utils.lib.mkApp { drv = packages.woob; name = "woob"; }; | |
69 | zrepl = flake-utils.lib.mkApp { drv = packages.zrepl; name = "zrepl"; }; | |
70 | }; | |
71 | } | |
72 | ) // rec { | |
73 | lib = { | |
74 | overrideDeps = pkgs: package: let | |
75 | packageDeps = builtins.attrNames package.override.__functionArgs; | |
76 | in package.override (pkgs.lib.genAttrs packageDeps (n: pkgs."${n}")); | |
77 | }; | |
78 | overlays = { | |
79 | apprise = final: prev: { apprise = self.packages."${final.system}".apprise; }; | |
80 | bitlbee-mastodon = final: prev: { | |
81 | bitlbee-mastodon = lib.overrideDeps final self.packages."${final.system}".bitlbee-mastodon; | |
82 | }; | |
83 | cointop = final: prev: { cointop = self.packages."${final.system}".cointop; }; | |
a3ac9c84 | 84 | coturn = final: prev: { coturn = self.packages."${final.system}".coturn; }; |
56cfbfb0 | 85 | cryptpad = final: prev: { cryptpad = self.packages."${final.system}".cryptpad; }; |
d3a43b08 | 86 | delta = final: prev: { delta = self.packages."${final.system}".delta; }; |
56cfbfb0 IB |
87 | dovecot_fts-xapian = final: prev: { |
88 | dovecot_fts-xapian = lib.overrideDeps final self.packages."${final.system}".dovecot_fts-xapian; | |
89 | }; | |
90 | duply = final: prev: { duply = self.packages."${final.system}".duply; }; | |
91 | fiche = final: prev: { fiche = self.packages."${final.system}".fiche; }; | |
bdaca01e | 92 | galene = final: prev: { galene = self.packages."${final.system}".galene; }; |
d3a43b08 | 93 | hetzner = final: prev: { hetzner = self.packages."${final.system}".hetzner; }; |
56cfbfb0 | 94 | influxdb2 = final: prev: { influxdb2 = self.packages."${final.system}".influxdb2; }; |
def6ad99 IB |
95 | ldapvi = final: prev: { ldapvi = self.packages."${final.system}".ldapvi; }; |
96 | lego = final: prev: { lego = self.packages."${final.system}".lego; }; | |
56cfbfb0 | 97 | mpd = final: prev: { mpd = self.packages."${final.system}".mpd; }; |
d3a43b08 | 98 | neomutt = final: prev: { neomutt = self.packages."${final.system}".neomutt; }; |
def6ad99 IB |
99 | opensmtpd = final: prev: { opensmtpd = self.packages."${final.system}".opensmtpd; }; |
100 | pass = final: prev: { pass = self.packages."${final.system}".pass; }; | |
56cfbfb0 IB |
101 | pg_activity = final: prev: { pg_activity = self.packages."${final.system}".pg_activity; }; |
102 | signald = final: prev: { signald = self.packages."${final.system}".signald; }; | |
282c67a1 | 103 | ssh-to-age = final: prev: { ssh-to-age = self.packages."${final.system}".ssh-to-age; }; |
56cfbfb0 | 104 | stgit = final: prev: { stgit = self.packages."${final.system}".stgit; }; |
282c67a1 | 105 | sops = final: prev: { sops = self.packages."${final.system}".sops; }; |
def6ad99 | 106 | sudo = final: prev: { sudo = self.packages."${final.system}".sudo; }; |
56cfbfb0 IB |
107 | telegram-cli = final: prev: { telegram-cli = self.packages."${final.system}".telegram-cli; }; |
108 | woob = final: prev: { woob = self.packages."${final.system}".woob; }; | |
109 | zrepl = final: prev: { zrepl = self.packages."${final.system}".zrepl; }; | |
110 | }; | |
111 | overlay = final: prev: ({} | |
112 | // overlays.apprise final prev | |
113 | // overlays.bitlbee-mastodon final prev | |
114 | // overlays.cointop final prev | |
a3ac9c84 | 115 | // overlays.coturn final prev |
56cfbfb0 | 116 | // overlays.cryptpad final prev |
d3a43b08 | 117 | // overlays.delta final prev |
56cfbfb0 IB |
118 | // overlays.dovecot_fts-xapian final prev |
119 | // overlays.duply final prev | |
120 | // overlays.fiche final prev | |
bdaca01e | 121 | // overlays.galene final prev |
d3a43b08 | 122 | // overlays.hetzner final prev |
56cfbfb0 | 123 | // overlays.influxdb2 final prev |
def6ad99 IB |
124 | // overlays.ldapvi final prev |
125 | // overlays.lego final prev | |
56cfbfb0 | 126 | // overlays.mpd final prev |
d3a43b08 | 127 | // overlays.neomutt final prev |
def6ad99 IB |
128 | // overlays.opensmtpd final prev |
129 | // overlays.pass final prev | |
56cfbfb0 IB |
130 | // overlays.pg_activity final prev |
131 | // overlays.signald final prev | |
282c67a1 | 132 | // overlays.ssh-to-age final prev |
56cfbfb0 | 133 | // overlays.stgit final prev |
282c67a1 | 134 | // overlays.sops final prev |
def6ad99 | 135 | // overlays.sudo final prev |
56cfbfb0 IB |
136 | // overlays.telegram-cli final prev |
137 | // overlays.woob final prev | |
138 | // overlays.zrepl final prev | |
139 | ); | |
140 | ||
141 | nixosModules = { | |
a3ac9c84 | 142 | coturn = import (nixpkgs + "/nixos/modules/services/networking/coturn.nix"); |
bdaca01e | 143 | galene = import (nixpkgs + "/nixos/modules/services/web-apps/galene.nix"); |
56cfbfb0 IB |
144 | influxdb2 = import (nixpkgs + "/nixos/modules/services/databases/influxdb2.nix"); |
145 | mpd = import (nixpkgs + "/nixos/modules/services/audio/mpd.nix"); | |
146 | zrepl = import (nixpkgs + "/nixos/modules/services/backup/zrepl.nix"); | |
147 | }; | |
148 | }; | |
149 | } | |
150 |