diff --git a/default.nix b/default.nix index f16df50..1800983 100644 --- a/default.nix +++ b/default.nix @@ -1,9 +1,10 @@ -{ pkgs ? import {} }: - -let +{ + pkgs ? import {}, # just so i can use the same pinned version as the flake... - pyctr = (import (builtins.getFlake (builtins.toString ./.)).inputs.pyctr { inherit pkgs; }).pyctr; -in rec { + pyctr ? (import (builtins.getFlake (builtins.toString ./.)).inputs.pyctr { inherit pkgs; }).pyctr +}: + +rec { haccrypto = pkgs.python3Packages.callPackage ./nix/haccrypto.nix {}; mfusepy = pkgs.python3Packages.callPackage ./nix/mfusepy.nix {}; ninfs = pkgs.python3Packages.callPackage ./package.nix { inherit pyctr; haccrypto = haccrypto; mfusepy = mfusepy; }; diff --git a/flake.lock b/flake.lock index a06ac29..81726b2 100644 --- a/flake.lock +++ b/flake.lock @@ -1,30 +1,12 @@ { "nodes": { - "flake-utils": { - "inputs": { - "systems": "systems" - }, - "locked": { - "lastModified": 1731533236, - "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, "nixpkgs": { "locked": { - "lastModified": 1736657626, - "narHash": "sha256-FWlPMUzp0lkQBdhKlPqtQdqmp+/C+1MBiEytaYfrCTY=", + "lastModified": 1737110817, + "narHash": "sha256-DSenga8XjPaUV5KUFW/i3rNkN7jm9XmguW+qQ1ZJTR4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2f9e2f85cb14a46410a1399aa9ea7ecf433e422e", + "rev": "041c867bad68dfe34b78b2813028a2e2ea70a23c", "type": "github" }, "original": { @@ -36,19 +18,16 @@ }, "pyctr": { "inputs": { - "flake-utils": [ - "flake-utils" - ], "nixpkgs": [ "nixpkgs" ] }, "locked": { - "lastModified": 1736721451, - "narHash": "sha256-F+eURnmxXynO1tPhgwR9Lkz6nC4ecq+CP3EUM2MHz1k=", + "lastModified": 1737340038, + "narHash": "sha256-WExQ1nczGdtlzna3yT2+CcEzVCcrLKqjZF4fnWe3lCE=", "owner": "ihaveamac", "repo": "pyctr", - "rev": "3c12647f29f25b5cca01d0672670b6b984e5770b", + "rev": "e8bdcf4688ea4c7f485e75aa0f484658eada5461", "type": "github" }, "original": { @@ -60,25 +39,9 @@ }, "root": { "inputs": { - "flake-utils": "flake-utils", "nixpkgs": "nixpkgs", "pyctr": "pyctr" } - }, - "systems": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 997f9f6..a1d3d78 100644 --- a/flake.nix +++ b/flake.nix @@ -5,22 +5,39 @@ nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; pyctr.url = "github:ihaveamac/pyctr/master"; pyctr.inputs.nixpkgs.follows = "nixpkgs"; - pyctr.inputs.flake-utils.follows = "flake-utils"; - flake-utils.url = "github:numtide/flake-utils"; }; - outputs = inputs@{ self, nixpkgs, flake-utils, pyctr }: - - flake-utils.lib.eachDefaultSystem (system: - let pkgs = nixpkgs.legacyPackages.${system}; in { - - packages = rec { - haccrypto = pkgs.python3Packages.callPackage ./nix/haccrypto.nix {}; - mfusepy = pkgs.python3Packages.callPackage ./nix/mfusepy.nix {}; - ninfs = pkgs.python3Packages.callPackage ./package.nix { haccrypto = haccrypto; mfusepy = mfusepy; pyctr = pyctr.packages.${system}.pyctr; }; - ninfsNoGUI = ninfs.override { withGUI = false; }; - default = ninfs; - }; - } - ); + outputs = + inputs@{ + self, + nixpkgs, + pyctr, + }: + let + systems = [ + "x86_64-linux" + "i686-linux" + "x86_64-darwin" + "aarch64-darwin" + "aarch64-linux" + "armv6l-linux" + "armv7l-linux" + ]; + forAllSystems = f: nixpkgs.lib.genAttrs systems (system: f system); + in + { + legacyPackages = forAllSystems ( + system: + (import ./default.nix { + pkgs = import nixpkgs { inherit system; }; + pyctr = pyctr.packages.${system}.pyctr; + }) + // { + default = self.legacyPackages.${system}.ninfs; + } + ); + packages = forAllSystems ( + system: nixpkgs.lib.filterAttrs (_: v: nixpkgs.lib.isDerivation v) self.legacyPackages.${system} + ); + }; }