Digitale bierlijst

flake.nix 1.4KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. {
  2. inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
  3. inputs.poetry2nix.url = "github:nix-community/poetry2nix";
  4. outputs = { self, nixpkgs, poetry2nix }:
  5. let
  6. supportedSystems = [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin" ];
  7. forAllSystems = nixpkgs.lib.genAttrs supportedSystems;
  8. pkgs = forAllSystems (system: nixpkgs.legacyPackages.${system});
  9. in
  10. {
  11. packages = forAllSystems (system: let
  12. inherit (poetry2nix.lib.mkPoetry2Nix { pkgs = pkgs.${system}; }) mkPoetryApplication;
  13. in {
  14. default = mkPoetryApplication { projectDir = self; };
  15. });
  16. devShells = forAllSystems (system: let
  17. inherit (poetry2nix.lib.mkPoetry2Nix { pkgs = pkgs.${system}; }) mkPoetryEnv overrides;
  18. in {
  19. default = pkgs.${system}.mkShellNoCC {
  20. packages = with pkgs.${system}; [
  21. (mkPoetryEnv {
  22. projectDir = self;
  23. extraPackages = ps: [ ps.black ps.pyside6 ps.dbus-python ];
  24. overrides = overrides.withDefaults
  25. (pyfinal: pyprev: {
  26. pyside6 = pyfinal.pkgs.python3.pkgs.pyside6;
  27. shiboken6 = pyfinal.pkgs.python3.pkgs.shiboken6;
  28. pyqt6 = pyfinal.pkgs.python3.pkgs.pyqt6;
  29. pyqt6-sip = pyfinal.pkgs.python3.pkgs.pyqt6-sip;
  30. });
  31. })
  32. poetry
  33. mypy
  34. ];
  35. };
  36. });
  37. };
  38. }