diff --git a/.gitignore b/.gitignore index 0294920..1930c82 100644 --- a/.gitignore +++ b/.gitignore @@ -159,4 +159,9 @@ cython_debug/ # option (not recommended) you can uncomment the following to ignore the entire idea folder. #.idea/ +# nix +/.pre-commit-config.yaml +/result* + +# project specific redbot-data/ diff --git a/flake.lock b/flake.lock index 6b66cc9..73ff1d6 100644 --- a/flake.lock +++ b/flake.lock @@ -21,11 +21,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1681202837, - "narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=", + "lastModified": 1685518550, + "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=", "owner": "numtide", "repo": "flake-utils", - "rev": "cfacdce06f30d2b68473a46042957675eebb3401", + "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef", "type": "github" }, "original": { @@ -39,11 +39,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1681202837, - "narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=", + "lastModified": 1685518550, + "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=", "owner": "numtide", "repo": "flake-utils", - "rev": "cfacdce06f30d2b68473a46042957675eebb3401", + "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef", "type": "github" }, "original": { @@ -53,12 +53,15 @@ } }, "flake-utils_3": { + "inputs": { + "systems": "systems_3" + }, "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "lastModified": 1685518550, + "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=", "owner": "numtide", "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef", "type": "github" }, "original": { @@ -90,11 +93,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1684049129, - "narHash": "sha256-7WB9LpnPNAS8oI7hMoHeKLNhRX7k3CI9uWBRSfmOCCE=", + "lastModified": 1686319658, + "narHash": "sha256-tGWdoUAqKnE866mYFlEfc2a99kxFy31hOQJH5YQKrTQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "0470f36b02ef01d4f43c641bbf07020bcab71bf1", + "rev": "ae766d59b07c450e0f1de8a1bfd6529089f40849", "type": "github" }, "original": { @@ -106,16 +109,16 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1678872516, - "narHash": "sha256-/E1YwtMtFAu2KUQKV/1+KFuReYPANM2Rzehk84VxVoc=", + "lastModified": 1685801374, + "narHash": "sha256-otaSUoFEMM+LjBI1XL/xGB5ao6IwnZOXc47qhIgJe8U=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9b8e5abb18324c7fe9f07cb100c3cd4a29cda8b8", + "rev": "c37ca420157f4abc31e26f436c1145f8951ff373", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-22.11", + "ref": "nixos-23.05", "repo": "nixpkgs", "type": "github" } @@ -128,11 +131,11 @@ ] }, "locked": { - "lastModified": 1683715241, - "narHash": "sha256-KUSaXa0WA3fHI2vyTXCqmBsDD6zWDEp1qsEVIJw67f8=", + "lastModified": 1686140708, + "narHash": "sha256-CKTahDFlhx07OQb4Afj+4/cNaxIWfxb8VGUlllUgoPY=", "owner": "nix-community", "repo": "poetry2nix", - "rev": "2bd1cf7ca40e3f48d25a0300adbf541e7c10a5ac", + "rev": "d91e2dd14caf4d09240bedf69a778c88f356ebda", "type": "github" }, "original": { @@ -152,11 +155,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1682596858, - "narHash": "sha256-Hf9XVpqaGqe/4oDGr30W8HlsWvJXtMsEPHDqHZA6dDg=", + "lastModified": 1686213770, + "narHash": "sha256-Re6xXLEqQ/HRnThryumyGzEf3Uv0Pl4cuG50MrDofP8=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "fb58866e20af98779017134319b5663b8215d912", + "rev": "182af51202998af5b64ddecaa7ff9be06425399b", "type": "github" }, "original": { @@ -202,6 +205,21 @@ "repo": "default", "type": "github" } + }, + "systems_3": { + "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 39dda7c..42abd88 100644 --- a/flake.nix +++ b/flake.nix @@ -1,6 +1,4 @@ { - description = "farbenfroh - web app for faerber"; - inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; @@ -8,14 +6,16 @@ url = "github:nix-community/poetry2nix"; inputs.nixpkgs.follows = "nixpkgs"; }; - pre-commit-hooks.url = "github:cachix/pre-commit-hooks.nix"; - pre-commit-hooks.inputs.nixpkgs.follows = "nixpkgs"; + pre-commit-hooks = { + url = "github:cachix/pre-commit-hooks.nix"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; outputs = { self, - flake-utils, nixpkgs, + flake-utils, poetry2nix, pre-commit-hooks, }: @@ -23,21 +23,44 @@ ( system: let pkgs = nixpkgs.legacyPackages.${system}; - inherit (poetry2nix.legacyPackages.${system}) mkPoetryApplication; in { - packages = rec { - catppuccin-cogs = mkPoetryApplication { - # pname = "catppuccin-cogs"; - # src = ./.; - # projectDir = ./.; - # python = pkgs.python311; - # doCheck = false; - projectDir = self; - }; - default = catppuccin-cogs; + packages.default = pkgs.poetry2nix.mkPoetryApplication { + projectDir = ./.; + python = pkgs.python310; + overrides = pkgs.poetry2nix.overrides.withDefaults (final: prev: { + attrs = prev.pkgs.python3Packages.buildPythonPackage { + pname = "attrs"; + version = "23.1.0"; + src = prev.pkgs.fetchurl { + url = "https://files.pythonhosted.org/packages/f0/eb/fcb708c7bf5056045e9e98f62b93bd7467eb718b0202e7698eb11d66416c/attrs-23.1.0-py3-none-any.whl"; + sha256 = "012x6glahfkg28ncs726dcnbm76gib3j1861d8jv8byw5i9b8a0z"; + }; + format = "wheel"; + doCheck = false; + }; + + red-commons = prev.pkgs.python3Packages.buildPythonPackage { + pname = "Red-Commons"; + version = "1.0.0"; + src = prev.pkgs.fetchurl { + url = "https://files.pythonhosted.org/packages/39/7a/4afb80e4aa69fec9736159d2571db76e3546c6e3b4e8deefe0e55114526c/red_commons-1.0.0-py3-none-any.whl"; + sha256 = "0i5g4p5p5na27064x5vlh96iq85i1a0n12rzw2lckqp8pw5bf1vh"; + }; + format = "wheel"; + doCheck = false; + }; + + orjson = prev.orjson.override (old: { + preferWheel = false; + cargoDeps = old.cargoDeps.overrideAttrs (_: { + hash = "sha256-OAF1qyHLy8c1o7FNKMwzuumq1bA7x1mFzSAS/Ml7M34="; + }); + }); + }); }; devShells.default = pkgs.mkShell { + inherit (self.checks.${system}.pre-commit-check) shellHook; packages = [ poetry2nix.packages.${system}.poetry ]; @@ -46,10 +69,9 @@ checks = { pre-commit-check = pre-commit-hooks.lib.${system}.run { src = ./.; - hooks = { - black.enable = true; - isort.enable = true; - }; + hooks.black.enable = true; + hooks.isort.enable = true; + hooks.pyright.enable = true; }; }; } diff --git a/pyproject.toml b/pyproject.toml index 4002fb6..06463ba 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -9,7 +9,6 @@ readme = "README.md" [tool.poetry.dependencies] python = ">=3.8.1,<3.12" red-discordbot = ">=3.5.2,<=3.6.0" -humanfriendly = "*" [build-system] requires = ["poetry-core"]