From f9be492c0f1a1e33d87ffe6dc8d7b8b8721f4536 Mon Sep 17 00:00:00 2001 From: Deepak Mallubhotla Date: Sat, 20 Apr 2024 12:12:29 -0500 Subject: [PATCH] nix: initial copying over of flake.nix from deepdog, might not work --- flake.nix | 89 +++++++++++++++++++++++++------------------------------ 1 file changed, 40 insertions(+), 49 deletions(-) diff --git a/flake.nix b/flake.nix index 0c89394..6771a83 100755 --- a/flake.nix +++ b/flake.nix @@ -1,55 +1,46 @@ { description = "Application packaged using poetry2nix"; - inputs.flake-utils.url = "github:numtide/flake-utils?rev=0f8662f1319ad6abf89b3380dd2722369fc51ade"; - inputs.nixpkgs.url = "github:NixOS/nixpkgs?rev=e194871435cad8ffb1d64b64fb7df3b2b8a10088"; - inputs.poetry2nix.url = "github:nix-community/poetry2nix?rev=7b71679fa7df00e1678fc3f1d1d4f5f372341b63"; + inputs.flake-utils.url = "github:numtide/flake-utils"; + inputs.nixpkgs.url = "github:NixOS/nixpkgs"; + inputs.poetry2nixSrc = { + url = "github:nix-community/poetry2nix"; + inputs.nixpkgs.follows = "nixpkgs"; + }; - outputs = { self, nixpkgs, flake-utils, poetry2nix }: - { - # Nixpkgs overlay providing the application - overlay = nixpkgs.lib.composeManyExtensions [ - poetry2nix.overlay - (final: prev: { - # The application - tantri = prev.poetry2nix.mkPoetryApplication { - overrides = [ - prev.poetry2nix.defaultPoetryOverrides - ]; - projectDir = ./.; - }; - tantriEnv = prev.poetry2nix.mkPoetryEnv { - overrides = [ - prev.poetry2nix.defaultPoetryOverrides - ]; - projectDir = ./.; - }; - }) - ]; - } // (flake-utils.lib.eachDefaultSystem (system: + outputs = { self, nixpkgs, flake-utils, poetry2nixSrc }: + flake-utils.lib.eachDefaultSystem (system: let - pkgs = import nixpkgs { - inherit system; - overlays = [ self.overlay ]; - }; - in - { - apps = { - tantri = pkgs.tantri; - }; - - defaultApp = pkgs.tantri; - devShell = pkgs.mkShell { - buildInputs = [ - pkgs.poetry - pkgs.tantriEnv - pkgs.tantri - ]; - shellHook = '' - export DO_NIX_CUSTOM=1 - ''; - packages = [ pkgs.nodejs-16_x pkgs.gnupg ]; - }; - - })); + pkgs = nixpkgs.legacyPackages.${system}; + poetry2nix = poetry2nixSrc.lib.mkPoetry2Nix { inherit pkgs; }; + in { + packages = { + tantriApp = poetry2nix.mkPoetryApplication { + projectDir = self; + python = pkgs.python39; + preferWheels = true; + }; + tantriEnv = poetry2nix.mkPoetryEnv { + projectDir = self; + python = pkgs.python39; + preferWheels = true; + overrides = poetry2nix.overrides.withDefaults (self: super: { + }); + }; + default = self.packages.${system}.tantriEnv; + }; + devShells.default = pkgs.mkShell { + inputsFrom = [ self.packages.${system}.tantriEnv ]; + buildInputs = [ + pkgs.poetry + self.packages.${system}.tantriEnv + self.packages.${system}.tantriApp + pkgs.just + ]; + shellHook = '' + export DO_NIX_CUSTOM=1 + ''; + }; + } + ); }