summaryrefslogtreecommitdiff
path: root/packages.nix
diff options
context:
space:
mode:
authorIsabella Bastaja <isabella@sorre.xyz>2026-03-27 15:45:07 +0100
committerIsabella Bastaja <isabella@sorre.xyz>2026-03-27 15:45:07 +0100
commitb05d6bb1acfa12ee837029a21daba28006807a7b (patch)
tree852d2bed37cc9c27182b3e55fdbfb5554b1b5bb1 /packages.nix
parent0dd88c810d36622af88bd560308468c5c32db493 (diff)
desperation
Diffstat (limited to 'packages.nix')
-rw-r--r--packages.nix66
1 files changed, 66 insertions, 0 deletions
diff --git a/packages.nix b/packages.nix
new file mode 100644
index 0000000..2a89954
--- /dev/null
+++ b/packages.nix
@@ -0,0 +1,66 @@
+{
+ # self,
+ pkgs ? import <nixpkgs> { },
+ wrapper-manager,
+ # system,
+}:
+let
+ recursiveMerge =
+ with pkgs.lib;
+ attrList:
+ let
+ f =
+ attrPath:
+ zipAttrsWith (
+ n: values:
+ if tail values == [ ] then
+ head values
+ else if all isList values then
+ unique (concatLists values)
+ else if all isAttrs values then
+ f (attrPath ++ [ n ]) values
+ else
+ last values
+ );
+ in
+ f [ ] attrList;
+ callPackage = pkgs.lib.callPackageWith (recursiveMerge [
+ pkgs
+ packages
+ ]);
+ packages = {
+ python3Packages = {
+ ascii = callPackage ./pkgs/python3Packages/ascii.nix { };
+ pyease-grpc = callPackage ./pkgs/python3Packages/pyease-grpc.nix { };
+ pyexecjs = callPackage ./pkgs/python3Packages/pyexecjs.nix { };
+ };
+
+ sorremacs = callPackage ./pkgs/sorremacs { };
+ lightnovel-crawler = callPackage ./pkgs/lightnovel-crawler.nix { };
+ }
+ // wrappers;
+
+ wm-eval = wrapper-manager.lib {
+ inherit pkgs;
+ modules = [
+ ./wrappers/gallery-dl
+ ./wrappers/jujutsu
+ ];
+ };
+ wrappers = wm-eval.config.build.packages;
+
+ # archpkgs = import ./archpkgs.nix {
+ # inherit
+ # self
+ # pkgs
+ # wrappers
+ # system
+ # ;
+ # };
+in
+{
+ lib = import ./lib { inherit pkgs; };
+ modules = import ./modules;
+ overlays = import ./overlays;
+}
+// packages