too lazy to write but it works
This commit is contained in:
parent
4b536b9b11
commit
3a7ec9f943
6 changed files with 145 additions and 90 deletions
18
flake.lock
generated
18
flake.lock
generated
|
|
@ -25,11 +25,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1741955947,
|
||||
"narHash": "sha256-2lbURKclgKqBNm7hVRtWh0A7NrdsibD0EaWhahUVhhY=",
|
||||
"lastModified": 1742670145,
|
||||
"narHash": "sha256-xQ2F9f+ICAGBp/nNv3ddD2U4ZvzuLOci0u/5lyMXPvk=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "4e12151c9e014e2449e0beca2c0e9534b96a26b4",
|
||||
"rev": "63e77d09a133ac641a0c204e7cfb0c97e133706d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -44,11 +44,11 @@
|
|||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1742089599,
|
||||
"narHash": "sha256-1yBAFE5yEGEjSWZ8BuPt9Yknq+cFwzW6Q86gs5rMkGI=",
|
||||
"lastModified": 1742607855,
|
||||
"narHash": "sha256-lUF/tpSON29qNIqhECX/Ue4qVmI3FOvMaW4iUnK49C4=",
|
||||
"owner": "fufexan",
|
||||
"repo": "nix-gaming",
|
||||
"rev": "bbf6f68ec16cead3c29d5ba33d5c52956dfaefdf",
|
||||
"rev": "9818734e2117dac703767585d48b805fad3e7a5e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -90,11 +90,11 @@
|
|||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1741862977,
|
||||
"narHash": "sha256-prZ0M8vE/ghRGGZcflvxCu40ObKaB+ikn74/xQoNrGQ=",
|
||||
"lastModified": 1742512142,
|
||||
"narHash": "sha256-8XfURTDxOm6+33swQJu/hx6xw1Tznl8vJJN5HwVqckg=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "cdd2ef009676ac92b715ff26630164bb88fec4e0",
|
||||
"rev": "7105ae3957700a9646cc4b766f5815b23ed0c682",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
|||
|
|
@ -1,13 +1,21 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
customPkgs = import ../pkgs {inherit pkgs lib;};
|
||||
{ config, pkgs, lib, ... }:
|
||||
let
|
||||
customPkgs = import ../pkgs { inherit pkgs lib; };
|
||||
in {
|
||||
imports = [
|
||||
../modules/python.nix
|
||||
];
|
||||
python.enable = true;
|
||||
environment.systemPackages = with pkgs; [
|
||||
# Applications
|
||||
(python311.withPackages (pyPkgs: with pyPkgs; [
|
||||
requests
|
||||
pip
|
||||
virtualenv
|
||||
ipython
|
||||
]))
|
||||
python3Packages.pip
|
||||
black
|
||||
ruff
|
||||
brave # TODO: make a module to save browser stuff
|
||||
vesktop
|
||||
git
|
||||
|
|
@ -89,4 +97,7 @@ in {
|
|||
nodePackages.pnpm
|
||||
zlib.dev
|
||||
];
|
||||
environment.shellAliases = {
|
||||
python = "python3.11";
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,49 +1,49 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
let
|
||||
customPkgs = import ../pkgs { inherit pkgs lib; };
|
||||
in {
|
||||
options.custom.python = {
|
||||
enable = lib.mkEnableOption "System Python Env";
|
||||
};
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
config = lib.mkIf config.custom.python.enable {
|
||||
let
|
||||
customPkgs = pkgs.callPackage ../pkgs { inherit pkgs lib; };
|
||||
in {
|
||||
options.python = {
|
||||
enable = lib.mkEnableOption "System Python Environment";
|
||||
};
|
||||
config = lib.mkIf config.python.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
(python311.withPackages (ps: with ps; [
|
||||
virtualenv
|
||||
(torch.override { cudaSupport = true; })
|
||||
torchvision
|
||||
torchaudio
|
||||
ipython
|
||||
(python311.withPackages (pyPkgs: with pyPkgs; [
|
||||
numpy
|
||||
python-pymatting
|
||||
python-opencv-headless
|
||||
python-rembg
|
||||
i3ipc
|
||||
xlib
|
||||
pandas
|
||||
matplotlib
|
||||
scipy
|
||||
requests
|
||||
pip
|
||||
virtualenv
|
||||
ipython
|
||||
six
|
||||
psutil
|
||||
pynvml
|
||||
pyqtgraph
|
||||
pyqt6
|
||||
numpy
|
||||
pandas
|
||||
matplotlib
|
||||
scipy
|
||||
requests
|
||||
click
|
||||
typer
|
||||
rich
|
||||
pyyaml
|
||||
pytz
|
||||
onnxruntime
|
||||
pillow
|
||||
timm
|
||||
] ++ [ customPkgs.python-rembg ]))
|
||||
]))
|
||||
python3Packages.pip
|
||||
uv
|
||||
ruff
|
||||
black
|
||||
ruff
|
||||
uv
|
||||
];
|
||||
environment.variables = {
|
||||
PIP_PREFIX = "$HOME/.local";
|
||||
PYTHONPATH = "$HOME/.local/lib/python3.11/site-packages";
|
||||
};
|
||||
environment.shellAliases = {
|
||||
python = "python3.11";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,29 +1,44 @@
|
|||
{
|
||||
pkgs ? import <nixpkgs> {},
|
||||
lib ? pkgs.lib,
|
||||
}: let
|
||||
python-opencv-headless = pkgs.callPackage ./python-opencv-headless {
|
||||
inherit (pkgs) lib fetchurl;
|
||||
python311Packages = pkgs.python311.pkgs;
|
||||
};
|
||||
|
||||
python-pymatting = pkgs.callPackage ./python-pymatting {
|
||||
inherit (pkgs) lib fetchPypi;
|
||||
python311Packages = pkgs.python311.pkgs;
|
||||
};
|
||||
|
||||
python-rembg = pkgs.callPackage ./python-rembg {
|
||||
inherit (pkgs) lib fetchPypi;
|
||||
inherit python-pymatting python-opencv-headless;
|
||||
python311Packages = pkgs.python311.pkgs;
|
||||
};
|
||||
in {
|
||||
}: {
|
||||
fish-rust = pkgs.callPackage ./fish-rust {};
|
||||
python-pymatting = python-pymatting;
|
||||
python-opencv-headless = python-opencv-headless;
|
||||
python-rembg = python-rembg;
|
||||
|
||||
python-pymatting = pkgs.callPackage ./python-pymatting {
|
||||
inherit lib;
|
||||
fetchPypi = pkgs.fetchPypi;
|
||||
python311Packages = pkgs.python311Packages;
|
||||
};
|
||||
python-opencv-headless = pkgs.callPackage ./python-opencv-headless {
|
||||
inherit lib;
|
||||
fetchPypi = pkgs.fetchPypi;
|
||||
cmake = pkgs.cmake;
|
||||
pkg-config = pkgs.pkg-config;
|
||||
stdenv = pkgs.stdenv;
|
||||
makeWrapper = pkgs.makeWrapper;
|
||||
python311Packages = pkgs.python311Packages;
|
||||
};
|
||||
python-rembg = pkgs.callPackage ./python-rembg {
|
||||
inherit lib;
|
||||
fetchPypi = pkgs.fetchPypi;
|
||||
python-pymatting = pkgs.callPackage ./python-pymatting {
|
||||
inherit lib;
|
||||
fetchPypi = pkgs.fetchPypi;
|
||||
python311Packages = pkgs.python311Packages;
|
||||
};
|
||||
python-opencv-headless = pkgs.callPackage ./python-opencv-headless {
|
||||
inherit lib;
|
||||
fetchPypi = pkgs.fetchPypi;
|
||||
cmake = pkgs.cmake;
|
||||
pkg-config = pkgs.pkg-config;
|
||||
stdenv = pkgs.stdenv;
|
||||
makeWrapper = pkgs.makeWrapper;
|
||||
python311Packages = pkgs.python311Packages;
|
||||
};
|
||||
python311Packages = pkgs.python311Packages;
|
||||
};
|
||||
vivid-icons = pkgs.callPackage ./vivid-icons {
|
||||
inherit (pkgs) lib stdenv fetchFromGitHub;
|
||||
inherit lib;
|
||||
stdenv = pkgs.stdenv;
|
||||
fetchFromGitHub = pkgs.fetchFromGitHub;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,23 +1,52 @@
|
|||
{lib, python311Packages, fetchurl}:
|
||||
{ lib
|
||||
, python311Packages
|
||||
, fetchPypi
|
||||
, stdenv
|
||||
, makeWrapper
|
||||
, cmake
|
||||
, pkg-config
|
||||
}:
|
||||
|
||||
python311Packages.buildPythonPackage rec {
|
||||
pname = "opencv-python-headless";
|
||||
version = "4.9.0.80";
|
||||
format = "wheel";
|
||||
version = "4.11.0.86";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://files.pythonhosted.org/packages/71/19/3c65483a80a1d062d46ae20faf5404712d25cb1dfdcaf371efbd67c38544/opencv_python_headless-4.9.0.80-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
|
||||
sha256 = "976656362d68d9f40a5c66f83901430538002465f7db59142784f3893918f3df";
|
||||
src = fetchPypi {
|
||||
pname = "opencv-python-headless";
|
||||
inherit version;
|
||||
format = "setuptools";
|
||||
sha256 = "mW6ygspLQ+xqOXJBTeDiMx9dnNorQQkaSXOcGfuEN5g=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with python311Packages; [
|
||||
cmake
|
||||
pkg-config
|
||||
makeWrapper
|
||||
scikit-build
|
||||
];
|
||||
|
||||
buildInputs = with python311Packages; [
|
||||
scikit-build
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with python311Packages; [
|
||||
numpy
|
||||
setuptools
|
||||
];
|
||||
|
||||
dontUseCmakeConfigure = true;
|
||||
|
||||
doCheck = false;
|
||||
|
||||
pythonImportsCheck = [ "cv2" ];
|
||||
|
||||
postFixup = ''
|
||||
wrapPythonProgramsIn "$out/lib/python3.11/site-packages" "${stdenv.cc.cc.lib}"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Wrapper package for OpenCV python bindings";
|
||||
description = "Wrapper package for OpenCV python bindings (headless)";
|
||||
homepage = "https://github.com/opencv/opencv-python";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
|||
|
|
@ -1,44 +1,44 @@
|
|||
{ lib,
|
||||
python311Packages,
|
||||
fetchPypi,
|
||||
python-pymatting,
|
||||
python-opencv-headless
|
||||
{ lib
|
||||
, python311Packages
|
||||
, fetchPypi
|
||||
, python-pymatting
|
||||
, python-opencv-headless
|
||||
}:
|
||||
python311Packages.buildPythonPackage rec {
|
||||
pname = "rembg";
|
||||
version = "2.0.50";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-bMt/GbplRawFZUqoXq37zAq1dribnu/ZlIYTuUIS+DU=";
|
||||
sha256 = "bMt/GbplRawFZUqoXq37zAq1dribnu/ZlIYTuUIS+DU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with python311Packages; [
|
||||
poetry-core
|
||||
setuptools
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with python311Packages; [
|
||||
numpy
|
||||
onnxruntime
|
||||
python-opencv-headless
|
||||
pillow
|
||||
pooch
|
||||
python-pymatting
|
||||
scikit-image
|
||||
scipy
|
||||
tqdm
|
||||
aiohttp
|
||||
pytorch-bin
|
||||
] ++ [
|
||||
python-opencv-headless
|
||||
python-pymatting
|
||||
];
|
||||
|
||||
pythonRemoveDeps = [ "opencv-python-headless" ];
|
||||
dontPrecompilePages = true;
|
||||
doInstallCheck = false;
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Tool to remove image backgrounds";
|
||||
homepage = "https://github.com/danielgatis/rembg";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; ["Cobray"];
|
||||
maintainers = with maintainers; [ "Cobray" ];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue