Set up project

This commit is contained in:
Joscha 2024-02-22 22:48:17 +01:00
parent c7c9a00f0d
commit 322bf46a6c
5 changed files with 248 additions and 0 deletions

37
flake.nix Normal file
View file

@ -0,0 +1,37 @@
{
description = "FUSE-based euphoria.leet.nu client";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
poetry2nix.url = "github:nix-community/poetry2nix";
poetry2nix.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = { self, nixpkgs, flake-utils, poetry2nix }:
flake-utils.lib.eachDefaultSystem (system:
let
pkgs = nixpkgs.legacyPackages.${system};
p2n = poetry2nix.lib.mkPoetry2Nix { inherit pkgs; };
in
{
packages.default = p2n.mkPoetryApplication {
projectDir = ./.;
overrides = p2n.defaultPoetryOverrides.extend (self: super: {
# https://github.com/nix-community/poetry2nix/blob/master/docs/edgecases.md#modulenotfounderror-no-module-named-packagename
# https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/python-modules/fuse-python/default.nix
fuse-python = super.fuse-python.overridePythonAttrs (old: {
nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.pkg-config ];
buildInputs = (old.buildInputs or [ ]) ++ [ super.setuptools pkgs.fuse ];
});
});
};
devShells.default = pkgs.mkShell {
inputsFrom = [ self.packages.${system}.default ];
packages = [ pkgs.poetry ];
};
});
}