Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 66 additions & 0 deletions pkgs/by-name/si/sideband/package.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
{
lib,
python3Packages,
fetchFromGitHub,
versionCheckHook,
}:

python3Packages.buildPythonApplication rec {
pname = "sideband";
version = "1.3.0";
pyproject = true;

src = fetchFromGitHub {
owner = "markqvist";
repo = "Sideband";
tag = version;
hash = "sha256-tTduoP6Gh/8uy1a/qp8ohGpdDmsS61sNyaAQjdvvvb8=";
};

build-system = with python3Packages; [
setuptools
];

pythonRelaxDeps = [
"numpy"
];

dependencies =
with python3Packages;
[
rns
lxmf
kivy
pillow
qrcode
materialyoucolor
ffpyplayer
sh
numpy
mistune
beautifulsoup4
]
++ lib.optionals stdenv.hostPlatform.isLinux [
pycodec2
pyaudio
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
pyobjus
];

pythonImportsCheck = [ "sbapp" ];

nativeCheckInputs = [
versionCheckHook
];
versionCheckProgramArg = [ "--version" ];

meta = {
description = "LXMF client allowing you to communicate with people or LXMF-compatible systems over Reticulum networks";
homepage = "https://github.com/markqvist/Sideband";
changelog = "https://github.com/markqvist/Sideband/releases/tag/${version}";
license = lib.licenses.cc-by-nc-sa-40;
maintainers = with lib.maintainers; [ GaetanLepage ];
mainProgram = "sideband";
};
}
63 changes: 63 additions & 0 deletions pkgs/development/python-modules/ffpyplayer/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
pkg-config,

# build-system
cython,
setuptools,

# buildInputs
SDL2,
# ffpyplayer is not compatible with ffmpeg 7
# https://github.com/matham/ffpyplayer/issues/166
ffmpeg_6,
}:

buildPythonPackage rec {
pname = "ffpyplayer";
version = "4.5.2";
pyproject = true;

src = fetchFromGitHub {
owner = "matham";
repo = "ffpyplayer";
tag = "v${version}";
hash = "sha256-8NBTVN+MPeJfDHuzF45qIK46q5VbiwxipAvjgqdiWrw=";
};

build-system = [
cython
setuptools
];

nativeBuildInputs = [
pkg-config
];

buildInputs = [
(lib.getDev SDL2)
(lib.getDev ffmpeg_6)
];

env = {
NIX_CFLAGS_COMPILE = toString ([
"-Wno-error=implicit-function-declaration"
"-Wno-error=incompatible-pointer-types"
]);
};

pythonImportsCheck = [ "ffpyplayer" ];

# No proper test suite
doCheck = false;

meta = {
description = "A cython implementation of an ffmpeg based player";
homepage = "https://github.com/matham/ffpyplayer";
changelog = "https://github.com/matham/ffpyplayer/releases/tag/v${version}";
license = lib.licenses.lgpl3Only;
maintainers = with lib.maintainers; [ GaetanLepage ];
};
}
67 changes: 67 additions & 0 deletions pkgs/development/python-modules/pycodec2/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,

# build-system
cython,
numpy,
setuptools,

# buildInputs
codec2,

pytestCheckHook,
}:

buildPythonPackage rec {
pname = "pycodec2";
version = "4.0.0";
pyproject = true;

src = fetchFromGitHub {
owner = "gregorias";
repo = "pycodec2";
tag = "v${version}";
hash = "sha256-5BEJ8q+Onh3eITSmEk2PoNrVViVISULZsiI2cCl24b0=";
};

postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail "numpy==2.1.*" "numpy"
'';

build-system = [
cython
numpy
setuptools
];

buildInputs = [
codec2
];

dependencies = [
numpy
];

pythonImportsCheck = [ "pycodec2" ];

nativeCheckInputs = [
pytestCheckHook
];

preCheck = ''
rm -rf pycodec2
'';

# The only test fails with a cryptic AssertionError
doCheck = false;

meta = {
description = "Python's interface to codec 2";
homepage = "https://github.com/gregorias/pycodec2";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ GaetanLepage ];
};
}
53 changes: 53 additions & 0 deletions pkgs/development/python-modules/pyobjus/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,

# build-system
cython,
setuptools,

# buildInputs
libffi,
pytestCheckHook,
}:

buildPythonPackage rec {
pname = "pyobjus";
version = "1.2.3";
pyproject = true;

src = fetchFromGitHub {
owner = "kivy";
repo = "pyobjus";
tag = "v${version}";
hash = "sha256-8abbxskM3uNNLVKP4Hp6xA9Z45pNNJQKShu+4lj1+4A=";
};

build-system = [
cython
setuptools
];

buildInputs = [
libffi
];

pythonImportsCheck = [ "pyobjus" ];

preCheck = ''
rm -rf pyobjus
'';

nativeCheckInputs = [
pytestCheckHook
];

meta = {
description = "Access Objective-C classes from Python";
homepage = "https://github.com/kivy/pyobjus";
changelog = "https://github.com/kivy/pyobjus/releases/tag/v${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ GaetanLepage ];
};
}
6 changes: 6 additions & 0 deletions pkgs/top-level/python-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -4575,6 +4575,8 @@ self: super: with self; {

ffmpy = callPackage ../development/python-modules/ffmpy { };

ffpyplayer = callPackage ../development/python-modules/ffpyplayer { };

fhir-py = callPackage ../development/python-modules/fhir-py { };

fiblary3-fork = callPackage ../development/python-modules/fiblary3-fork { };
Expand Down Expand Up @@ -10589,6 +10591,8 @@ self: super: with self; {

pycketcasts = callPackage ../development/python-modules/pycketcasts { };

pycodec2 = callPackage ../development/python-modules/pycodec2 { };

pycolorecho = callPackage ../development/python-modules/pycolorecho { };

pycomm3 = callPackage ../development/python-modules/pycomm3 { };
Expand Down Expand Up @@ -10702,6 +10706,8 @@ self: super: with self; {

pynx584 = callPackage ../development/python-modules/pynx584 { };

pyobjus = callPackage ../development/python-modules/pyobjus { };

pyogrio = callPackage ../development/python-modules/pyogrio { };

pyorthanc = callPackage ../development/python-modules/pyorthanc { };
Expand Down