push sheeet
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s

This commit is contained in:
Dark Steveneq
2025-10-09 14:15:47 +02:00
commit 646b892680
49168 changed files with 5897842 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
--- a/cmake/python.cmake
+++ b/cmake/python.cmake
@@ -322,7 +322,6 @@
file(GENERATE OUTPUT ${PYTHON_PROJECT_DIR}/linear_solver/__init__.py CONTENT "")
file(GENERATE OUTPUT ${PYTHON_PROJECT_DIR}/linear_solver/python/__init__.py CONTENT "")
if(BUILD_MATH_OPT)
- file(GENERATE OUTPUT ${PYTHON_PROJECT_DIR}/../pybind11_abseil/__init__.py CONTENT "")
file(GENERATE OUTPUT ${PYTHON_PROJECT_DIR}/math_opt/__init__.py CONTENT "")
file(GENERATE OUTPUT ${PYTHON_PROJECT_DIR}/math_opt/core/__init__.py CONTENT "")
file(GENERATE OUTPUT ${PYTHON_PROJECT_DIR}/math_opt/core/python/__init__.py CONTENT "")
@@ -635,9 +634,6 @@
COMMAND ${CMAKE_COMMAND} -E
$<IF:$<BOOL:${BUILD_MATH_OPT}>,copy,true>
$<TARGET_FILE:math_opt_pybind11> ${PYTHON_PROJECT}/math_opt/core/python
- COMMAND ${CMAKE_COMMAND} -E
- $<IF:$<BOOL:${BUILD_MATH_OPT}>,copy,true>
- $<TARGET_FILE:status_py_extension_stub> ${PYTHON_PROJECT}/../pybind11_abseil
COMMAND ${CMAKE_COMMAND} -E
$<IF:$<TARGET_EXISTS:pdlp_pybind11>,copy,true>
$<$<TARGET_EXISTS:pdlp_pybind11>:$<TARGET_FILE:pdlp_pybind11>> ${PYTHON_PROJECT}/pdlp/python
@@ -696,7 +692,6 @@
COMMAND ${stubgen_EXECUTABLE} -p ortools.constraint_solver.pywrapcp --output .
COMMAND ${stubgen_EXECUTABLE} -p ortools.linear_solver.pywraplp --output .
COMMAND ${stubgen_EXECUTABLE} -p ortools.linear_solver.python.model_builder_helper --output .
- COMMAND ${stubgen_EXECUTABLE} -p pybind11_abseil.status --output .
COMMAND ${stubgen_EXECUTABLE} -p ortools.math_opt.core.python.solver --output .
COMMAND ${stubgen_EXECUTABLE} -p ortools.pdlp.python.pdlp --output .
COMMAND ${stubgen_EXECUTABLE} -p ortools.sat.python.cp_model_helper --output .
--- a/ortools/python/setup.py.in
+++ b/ortools/python/setup.py.in
@@ -83,10 +83,6 @@
'*.pyi',
'py.typed'
],
- 'pybind11_abseil':[
- '$<TARGET_FILE_NAME:status_py_extension_stub>',
- '*.pyi'
- ],
'@PYTHON_PROJECT@.math_opt':['*.pyi'],
'@PYTHON_PROJECT@.math_opt.core.python':[
'$<TARGET_FILE_NAME:math_opt_pybind11>',

View File

@@ -0,0 +1,194 @@
{
abseil-cpp_202407,
bzip2,
cbc,
cmake,
eigen,
ensureNewerSourcesForZipFilesHook,
fetchFromGitHub,
fetchpatch,
gtest,
gbenchmark,
glpk,
highs,
lib,
pkg-config,
protobuf_29,
python3,
re2,
stdenv,
swig,
unzip,
zlib,
scipopt-scip,
withScip ? true,
}:
let
# OR-Tools strictly requires specific versions of abseil-cpp and
# protobuf. Do not un-pin these, even if you're upgrading them to
# what might happen to be the latest version at the current moment;
# future upgrades *will* break the build.
abseil-cpp = abseil-cpp_202407;
protobuf = protobuf_29.override { inherit abseil-cpp; };
python-protobuf = python3.pkgs.protobuf5.override { inherit protobuf; };
pybind11-protobuf = python3.pkgs.pybind11-protobuf.override { protobuf_29 = protobuf; };
in
stdenv.mkDerivation (finalAttrs: {
pname = "or-tools";
version = "9.12";
src = fetchFromGitHub {
owner = "google";
repo = "or-tools";
tag = "v${finalAttrs.version}";
hash = "sha256-5rFeAK51+BfjIyu/5f5ptaKMD7Hd20yHa2Vj3O3PkLU=";
};
patches = [
# Rebased from https://build.opensuse.org/public/source/science/google-or-tools/0001-Do-not-try-to-copy-pybind11_abseil-status-extension-.patch?rev=19
./0001-Do-not-try-to-copy-pybind11_abseil-status-extension-.patch
(fetchpatch {
name = "0001-Revert-python-Fix-python-install-on-windows-breaks-L.patch";
url = "https://build.opensuse.org/public/source/science/google-or-tools/0001-Revert-python-Fix-python-install-on-windows-breaks-L.patch?rev=19";
hash = "sha256-BNB3KlgjpWcZtb9e68Jkc/4xC4K0c+Iisw0eS6ltYXE=";
})
(fetchpatch {
name = "0001-Fix-up-broken-CMake-rules-for-bundled-pybind-stuff.patch";
url = "https://build.opensuse.org/public/source/science/google-or-tools/0001-Fix-up-broken-CMake-rules-for-bundled-pybind-stuff.patch?rev=19";
hash = "sha256-r38ZbRkEW1ZvJb0Uf56c0+HcnfouZZJeEYlIK7quSjQ=";
})
(fetchpatch {
name = "math_opt-only-run-SCIP-tests-if-enabled.patch";
url = "https://github.com/google/or-tools/commit/b5a2f8ac40dd4bfa4359c35570733171454ec72b.patch";
hash = "sha256-h96zJkqTtwfBd+m7Lm9r/ks/n8uvY4iSPgxMZe8vtXI=";
})
];
# or-tools normally attempts to build Protobuf for the build platform when
# cross-compiling. Instead, just tell it where to find protoc.
postPatch = ''
echo "set(PROTOC_PRG $(type -p protoc))" > cmake/host.cmake
''
# Patches from OpenSUSE:
# https://build.opensuse.org/projects/science/packages/google-or-tools/files/google-or-tools.spec?expand=1
+ ''
sed -i -e '/CMAKE_DEPENDENT_OPTION(INSTALL_DOC/ s/BUILD_CXX AND BUILD_DOC/BUILD_CXX/' CMakeLists.txt
find . -iname \*CMakeLists.txt -exec sed -i -e 's/pybind11_native_proto_caster/pybind11_protobuf::pybind11_native_proto_caster/' '{}' \;
sed -i -e 's/TARGET pybind11_native_proto_caster/TARGET pybind11_protobuf::pybind11_native_proto_caster/' cmake/check_deps.cmake
sed -i -e "/protobuf/ { s/.*,/'protobuf >= 5.26',/ }" ortools/python/setup.py.in
'';
cmakeFlags = [
(lib.cmakeBool "BUILD_DEPS" false)
(lib.cmakeBool "BUILD_PYTHON" true)
(lib.cmakeBool "BUILD_pybind11" false)
(lib.cmakeFeature "CMAKE_INSTALL_BINDIR" "bin")
(lib.cmakeFeature "CMAKE_INSTALL_INCLUDEDIR" "include")
(lib.cmakeFeature "CMAKE_INSTALL_LIBDIR" "lib")
(lib.cmakeBool "FETCH_PYTHON_DEPS" false)
(lib.cmakeBool "USE_GLPK" true)
(lib.cmakeBool "USE_SCIP" withScip)
(lib.cmakeFeature "Python3_EXECUTABLE" "${python3.pythonOnBuildForHost.interpreter}")
]
++ lib.optionals withScip [
# scip code parts require setting this unfortunately…
(lib.cmakeFeature "CMAKE_CXX_FLAGS" "-Wno-error=format-security")
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
(lib.cmakeBool "CMAKE_MACOSX_RPATH" false)
];
strictDeps = true;
nativeBuildInputs = [
cmake
ensureNewerSourcesForZipFilesHook
pkg-config
python3.pythonOnBuildForHost
swig
unzip
]
++ (with python3.pythonOnBuildForHost.pkgs; [
pip
mypy-protobuf
mypy
]);
buildInputs = [
abseil-cpp
bzip2
cbc
eigen
glpk
gbenchmark
gtest
highs
python3.pkgs.absl-py
python3.pkgs.pybind11
python3.pkgs.pybind11-abseil
pybind11-protobuf
python3.pkgs.pytest
python3.pkgs.scipy
python3.pkgs.setuptools
python3.pkgs.wheel
re2
zlib
];
propagatedBuildInputs = [
abseil-cpp
highs
protobuf
python-protobuf
python3.pkgs.immutabledict
python3.pkgs.numpy
python3.pkgs.pandas
]
++ lib.optionals withScip [
# Needed for downstream cmake consumers to not need to set SCIP_ROOT explicitly
scipopt-scip
];
nativeCheckInputs = [
python3.pkgs.matplotlib
python3.pkgs.pandas
python3.pkgs.pytest
python3.pkgs.scipy
python3.pkgs.svgwrite
python3.pkgs.virtualenv
];
# some tests fail on aarch64-linux and hang on darwin
doCheck = stdenv.hostPlatform.isx86_64 && stdenv.hostPlatform.isLinux;
preCheck = ''
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/lib
'';
# This extra configure step prevents the installer from littering
# $out/bin with sample programs that only really function as tests,
# and disables the upstream installation of a zipped Python egg that
# cant be imported with our Python setup.
installPhase = ''
cmake . -DBUILD_EXAMPLES=OFF -DBUILD_PYTHON=OFF -DBUILD_SAMPLES=OFF
cmake --install .
pip install --prefix="$python" python/
'';
outputs = [
"out"
"python"
];
meta = {
homepage = "https://github.com/google/or-tools";
license = lib.licenses.asl20;
description = ''
Google's software suite for combinatorial optimization.
'';
mainProgram = "fzn-cp-sat";
maintainers = with lib.maintainers; [ andersk ];
platforms = with lib.platforms; linux ++ darwin;
};
})

View File

@@ -0,0 +1,208 @@
{
lib,
stdenv,
fetchurl,
autoPatchelfHook,
fixDarwinDylibNames,
unzip,
_7zz,
libaio,
makeWrapper,
odbcSupport ? true,
unixODBC,
}:
assert odbcSupport -> unixODBC != null;
let
inherit (lib) optional optionals optionalString;
throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
# assemble list of components
components = [
"basic"
"sdk"
"sqlplus"
"tools"
]
++ optional odbcSupport "odbc";
# determine the version number, there might be different ones per architecture
version =
{
x86_64-linux = "21.10.0.0.0";
aarch64-linux = "19.10.0.0.0";
x86_64-darwin = "19.8.0.0.0";
aarch64-darwin = "23.3.0.23.09";
}
.${stdenv.hostPlatform.system} or throwSystem;
directory =
{
x86_64-linux = "2110000";
aarch64-linux = "191000";
x86_64-darwin = "198000";
aarch64-darwin = "233023";
}
.${stdenv.hostPlatform.system} or throwSystem;
# hashes per component and architecture
hashes =
{
x86_64-linux = {
basic = "sha256-uo0QBOmx7TQyroD+As60IhjEkz//+0Cm1tWvLI3edaE=";
sdk = "sha256-TIBFi1jHLJh+SUNFvuL7aJpxh61hG6gXhFIhvdPgpts=";
sqlplus = "sha256-mF9kLjhZXe/fasYDfmZrYPL2CzAp3xDbi624RJDA4lM=";
tools = "sha256-ay8ynzo1fPHbCg9GoIT5ja//iZPIZA2yXI/auVExiRY=";
odbc = "sha256-3M6/cEtUrIFzQay8eHNiLGE+L0UF+VTmzp4cSBcrzlk=";
};
aarch64-linux = {
basic = "sha256-DNntH20BAmo5kOz7uEgW2NXaNfwdvJ8l8oMnp50BOsY=";
sdk = "sha256-8VpkNyLyFMUfQwbZpSDV/CB95RoXfaMr8w58cRt/syw=";
sqlplus = "sha256-iHcyijHhAvjsAqN9R+Rxo2R47k940VvPbScc2MWYn0Q=";
tools = "sha256-4QY0EwcnctwPm6ZGDZLudOFM4UycLFmRIluKGXVwR0M=";
odbc = "sha256-T+RIIKzZ9xEg/E72pfs5xqHz2WuIWKx/oRfDrQbw3ms=";
};
x86_64-darwin = {
basic = "sha256-V+1BmPOhDYPNXdwkcsBY1MOwt4Yka66/a7/HORzBIIc=";
sdk = "sha256-D6iuTEQYqmbOh1z5LnKN16ga6vLmjnkm4QK15S/Iukw=";
sqlplus = "sha256-08uoiwoKPZmTxLZLYRVp0UbN827FXdhOukeDUXvTCVk=";
tools = "sha256-1xFFGZapFq9ogGQ6ePSv4PrXl5qOAgRZWAp4mJ5uxdU=";
odbc = "sha256-S6+5P4daK/+nXwoHmOkj4DIkHtwdzO5GOkCCI612bRY=";
};
aarch64-darwin = {
basic = "sha256-G83bWDhw9wwjLVee24oy/VhJcCik7/GtKOzgOXuo1/4=";
sdk = "sha256-PerfzgietrnAkbH9IT7XpmaFuyJkPHx0vl4FCtjPzLs=";
sqlplus = "sha256-khOjmaExAb3rzWEwJ/o4XvRMQruiMw+UgLFtsOGn1nY=";
tools = "sha256-gA+SbgXXpY12TidpnjBzt0oWQ5zLJg6wUpzpSd/N5W4=";
odbc = "sha256-JzoSdH7mJB709cdXELxWzpgaNTjOZhYH/wLkdzKA2N0=";
};
}
.${stdenv.hostPlatform.system} or throwSystem;
# rels per component and architecture, optional
rels =
{
aarch64-darwin = {
basic = "1";
tools = "1";
};
}
.${stdenv.hostPlatform.system} or { };
# convert platform to oracle architecture names
arch =
{
x86_64-linux = "linux.x64";
aarch64-linux = "linux.arm64";
x86_64-darwin = "macos.x64";
aarch64-darwin = "macos.arm64";
}
.${stdenv.hostPlatform.system} or throwSystem;
shortArch =
{
x86_64-linux = "linux";
aarch64-linux = "linux";
x86_64-darwin = "mac";
aarch64-darwin = "mac";
}
.${stdenv.hostPlatform.system} or throwSystem;
suffix =
{
aarch64-darwin = ".dmg";
}
.${stdenv.hostPlatform.system} or "dbru.zip";
# calculate the filename of a single zip file
srcFilename =
component: arch: version: rel:
"instantclient-${component}-${arch}-${version}" + (optionalString (rel != "") "-${rel}") + suffix;
# fetcher for the non clickthrough artifacts
fetcher =
srcFilename: hash:
fetchurl {
url = "https://download.oracle.com/otn_software/${shortArch}/instantclient/${directory}/${srcFilename}";
sha256 = hash;
};
# assemble srcs
srcs = map (
component:
(fetcher (srcFilename component arch version rels.${component} or "") hashes.${component} or "")
) components;
isDarwinAarch64 = stdenv.hostPlatform.system == "aarch64-darwin";
pname = "oracle-instantclient";
extLib = stdenv.hostPlatform.extensions.sharedLibrary;
in
stdenv.mkDerivation {
inherit pname version srcs;
buildInputs = [
(lib.getLib stdenv.cc.cc)
]
++ optional stdenv.hostPlatform.isLinux libaio
++ optional odbcSupport unixODBC;
nativeBuildInputs = [
makeWrapper
(if isDarwinAarch64 then _7zz else unzip)
]
++ optional stdenv.hostPlatform.isLinux autoPatchelfHook
++ optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
outputs = [
"out"
"dev"
"lib"
];
unpackCmd = if isDarwinAarch64 then "7zz x $curSrc -aoa -oinstantclient" else "unzip $curSrc";
installPhase = ''
mkdir -p "$out/"{bin,include,lib,"share/java","share/${pname}-${version}/demo/"} $lib/lib
install -Dm755 {adrci,genezi,uidrvci,sqlplus,exp,expdp,imp,impdp} $out/bin
# cp to preserve symlinks
cp -P *${extLib}* $lib/lib
install -Dm644 *.jar $out/share/java
install -Dm644 sdk/include/* $out/include
install -Dm644 sdk/demo/* $out/share/${pname}-${version}/demo
# provide alias
ln -sfn $out/bin/sqlplus $out/bin/sqlplus64
'';
postFixup = optionalString stdenv.hostPlatform.isDarwin ''
for exe in "$out/bin/"* ; do
if [ ! -L "$exe" ]; then
install_name_tool -add_rpath "$lib/lib" "$exe"
fi
done
'';
meta = with lib; {
description = "Oracle instant client libraries and sqlplus CLI";
longDescription = ''
Oracle instant client provides access to Oracle databases (OCI,
OCCI, Pro*C, ODBC or JDBC). This package includes the sqlplus
command line SQL client.
'';
sourceProvenance = with sourceTypes; [ binaryBytecode ];
license = licenses.unfree;
platforms = [
"x86_64-linux"
"aarch64-linux"
"x86_64-darwin"
"aarch64-darwin"
];
maintainers = with maintainers; [ dylanmtaylor ];
hydraPlatforms = [ ];
};
}

View File

@@ -0,0 +1,54 @@
{
lib,
stdenvNoCC,
fetchFromGitHub,
gtk3,
plasma5Packages,
hicolor-icon-theme,
}:
stdenvNoCC.mkDerivation rec {
pname = "oranchelo-icon-theme";
version = "0.9.0";
src = fetchFromGitHub {
owner = "OrancheloTeam";
repo = "oranchelo-icon-theme";
rev = "v${version}";
sha256 = "sha256-IDsZj/X9rFSdDpa3bL6IPEPCRe5GustPteDxSbfz+SA=";
};
nativeBuildInputs = [
gtk3
];
propagatedBuildInputs = [
plasma5Packages.breeze-icons
hicolor-icon-theme
];
dontDropIconThemeCache = true;
makeFlags = [
"DESTDIR=$(out)"
"PREFIX="
];
postInstall = ''
# space in icon name causes gtk-update-icon-cache to fail
mv "$out/share/icons/Oranchelo/apps/scalable/ grsync.svg" "$out/share/icons/Oranchelo/apps/scalable/grsync.svg"
for theme in $out/share/icons/*; do
gtk-update-icon-cache "$theme"
done
'';
dontCheckForBrokenSymlinks = true;
meta = with lib; {
description = "Oranchelo icon theme";
homepage = "https://github.com/OrancheloTeam/oranchelo-icon-theme";
license = licenses.gpl3Only;
platforms = platforms.linux;
maintainers = with maintainers; [ _414owen ];
};
}

View File

@@ -0,0 +1,59 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
tailwindcss,
oniguruma,
stdenv,
}:
rustPlatform.buildRustPackage rec {
pname = "oranda";
version = "0.6.5";
src = fetchFromGitHub {
owner = "axodotdev";
repo = "oranda";
rev = "v${version}";
hash = "sha256-FVd8NQVtzlZsDY40ZMJDdaX+6Q5jUxZHUq2v+kDFVOk=";
};
cargoHash = "sha256-wPYgAbaoUVJoZT1nRCBsPziszkAubImZEKGrC2RAkEA=";
nativeBuildInputs = [
pkg-config
tailwindcss
];
buildInputs = [
oniguruma
];
# requires internet access
checkFlags = [
"--skip=build"
"--skip=integration"
];
env = {
RUSTONIG_SYSTEM_LIBONIG = true;
ORANDA_USE_TAILWIND_BINARY = true;
}
// lib.optionalAttrs stdenv.hostPlatform.isDarwin {
# without this, tailwindcss fails with OpenSSL configuration error
OPENSSL_CONF = "";
};
meta = with lib; {
description = "Generate beautiful landing pages for your developer tools";
homepage = "https://github.com/axodotdev/oranda";
changelog = "https://github.com/axodotdev/oranda/blob/${src.rev}/CHANGELOG.md";
license = with licenses; [
asl20
mit
];
maintainers = with maintainers; [ figsoda ];
mainProgram = "oranda";
};
}

View File

@@ -0,0 +1,100 @@
{
lib,
stdenv,
fetchurl,
fetchpatch,
bison,
flex,
autoreconfHook,
openssl,
db,
attr,
perl,
tcsh,
nixosTests,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "orangefs";
version = "2.9.8";
src = fetchurl {
url = "http://download.orangefs.org/current/source/orangefs-${finalAttrs.version}.tar.gz";
hash = "sha256-WJ97bEyOqblrYUJ/kAWtC+JYy0NwK0fZ8wTIEoyiXjA=";
};
patches = [
# Pull upstream fix for -fno-common toolchains
(fetchpatch {
name = "fno-common.patch";
url = "https://github.com/waltligon/orangefs/commit/f472beb50356bea657d1c32f1ca8a73e4718fd57.patch";
hash = "sha256-UTUIVBFW+y5P42T7somLi9uDMoLI69Yik9W/3pwLWEk=";
})
];
nativeBuildInputs = [
bison
flex
perl
autoreconfHook
];
buildInputs = [
openssl
db
attr
tcsh
];
postPatch = ''
# Issue introduced by attr-2.4.48
substituteInPlace src/apps/user/ofs_setdirhint.c --replace attr/xattr.h sys/xattr.h
# Do not try to install empty sysconfdir
substituteInPlace Makefile.in --replace 'install -d $(sysconfdir)' ""
# perl interpreter needs to be fixed or build fails
patchShebangs ./src/apps/admin/pvfs2-genconfig
# symlink points to a location in /usr
rm ./src/client/webpack/ltmain.sh
'';
configureFlags = [
"--sysconfdir=/etc/orangefs"
"--enable-shared"
"--enable-fast"
"--with-ssl=${lib.getDev openssl}"
];
enableParallelBuilding = true;
postInstall = ''
# install useful helper scripts
install examples/keys/pvfs2-gen-keys.sh $out/bin
'';
postFixup = ''
for f in pvfs2-getmattr pvfs2-setmattr; do
substituteInPlace $out/bin/$f --replace '#!/bin/csh' '#!${tcsh}/bin/tcsh'
done
sed -i 's:openssl:${openssl}/bin/openssl:' $out/bin/pvfs2-gen-keys.sh
'';
passthru.tests = { inherit (nixosTests) orangefs; };
meta = {
description = "Scale-out network file system for use on high-end computing systems";
homepage = "http://www.orangefs.org/";
license = with lib.licenses; [
asl20
bsd3
gpl2Only
lgpl21
lgpl21Plus
openldap
];
platforms = [ "x86_64-linux" ];
maintainers = with lib.maintainers; [ markuskowa ];
};
})

View File

@@ -0,0 +1,57 @@
{
lib,
stdenv,
buildGoModule,
fetchFromGitHub,
installShellFiles,
versionCheckHook,
}:
buildGoModule (finalAttrs: {
pname = "oras";
version = "1.3.0";
src = fetchFromGitHub {
owner = "oras-project";
repo = "oras";
tag = "v${finalAttrs.version}";
hash = "sha256-kGPHW+SSmCJhvhGxpzKFlc80sjYqeCEmwr/f0ltILE4=";
};
vendorHash = "sha256-TDYvYmzAgkL+ZrYKt9HTW7NQAGxd/cYu7e7MRYbW8ho=";
nativeBuildInputs = [ installShellFiles ];
excludedPackages = [ "./test/e2e" ];
ldflags = [
"-s"
"-w"
"-X oras.land/oras/internal/version.Version=${finalAttrs.version}"
"-X oras.land/oras/internal/version.BuildMetadata="
"-X oras.land/oras/internal/version.GitTreeState=clean"
];
postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
installShellCompletion --cmd oras \
--bash <($out/bin/oras completion bash) \
--fish <($out/bin/oras completion fish) \
--zsh <($out/bin/oras completion zsh)
'';
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
versionCheckProgramArg = "version";
meta = {
homepage = "https://oras.land/";
changelog = "https://github.com/oras-project/oras/releases/tag/v${finalAttrs.version}";
description = "Distribute artifacts across OCI registries with ease";
mainProgram = "oras";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [
jk
developer-guy
];
};
})

View File

@@ -0,0 +1,57 @@
{
lib,
stdenv,
buildGoModule,
fetchFromGitHub,
installShellFiles,
makeWrapper,
pkg-config,
withGui ? true,
vte,
}:
buildGoModule rec {
pname = "orbiton";
version = "2.70.0";
src = fetchFromGitHub {
owner = "xyproto";
repo = "orbiton";
tag = "v${version}";
hash = "sha256-3EAYPCNVQiED8qHyLbwyYU7gXJn2TFgiJ2/JyxyD7+M=";
};
vendorHash = null;
nativeBuildInputs = [
installShellFiles
makeWrapper
pkg-config
];
buildInputs = lib.optional withGui vte;
preBuild = "cd v2";
checkFlags = [
"-skip=TestPBcopy" # Requires impure pbcopy and pbpaste
];
postInstall = ''
cd ..
installManPage o.1
mv $out/bin/{orbiton,o}
''
+ lib.optionalString withGui ''
make install-gui PREFIX=$out
wrapProgram $out/bin/og --prefix PATH : $out/bin
'';
meta = {
description = "Config-free text editor and IDE limited to VT100";
homepage = "https://roboticoverlords.org/orbiton/";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ sikmir ];
mainProgram = "o";
};
}

View File

@@ -0,0 +1,55 @@
{
lib,
stdenvNoCC,
fetchFromGitHub,
}:
stdenvNoCC.mkDerivation {
pname = "orbitron";
version = "2011-05-25";
src = fetchFromGitHub {
owner = "theleagueof";
repo = "orbitron";
rev = "13e6a5222aa6818d81c9acd27edd701a2d744152";
hash = "sha256-zjNPVrDUxcQbrsg1/8fFa6Wenu1yuG/XDfKA7NVZ0rA=";
};
installPhase = ''
runHook preInstall
install -D -m444 -t $out/share/fonts/truetype $src/*.ttf
install -D -m444 -t $out/share/fonts/opentype $src/*.otf
runHook postInstall
'';
meta = with lib; {
homepage = "https://www.theleagueofmoveabletype.com/orbitron";
downloadPage = "https://www.theleagueofmoveabletype.com/orbitron/download";
description = "Geometric sans-serif for display purposes by Matt McInerney";
longDescription = ''
Orbitron is a geometric sans-serif typeface intended for display
purposes. It features four weights (light, medium, bold, and
black), a stylistic alternative, small caps, and a ton of
alternate glyphs.
Orbitron was designed so that graphic designers in the future
will have some alternative to typefaces like Eurostile or Bank
Gothic. If youve ever seen a futuristic sci-fi movie, you have
may noticed that all other fonts have been lost or destroyed in
the apocalypse that led humans to flee earth. Only those very few
geometric typefaces have survived to be used on spaceship
exteriors, space station signage, monopolistic corporate
branding, uniforms featuring aerodynamic shoulder pads, etc. Of
course Orbitron could also be used on the posters for the movies
portraying this inevitable future.
'';
license = licenses.ofl;
platforms = platforms.all;
maintainers = with lib.maintainers; [
leenaars
minijackson
];
};
}

View File

@@ -0,0 +1,73 @@
{
lib,
stdenv,
fetchFromGitHub,
fetchzip,
meson,
ninja,
pkg-config,
czmq,
libusb1,
ncurses,
SDL2,
libelf,
}:
let
libdwarf = fetchzip {
url = "https://www.prevanders.net/libdwarf-0.7.0.tar.xz";
hash = "sha256-YTTbBJkDu2BSAVpvucqtg7/hFxXrxLnNAlvAL7rmkdE=";
};
in
stdenv.mkDerivation (finalAttrs: {
pname = "orbuculum";
version = "2.2.0";
src = fetchFromGitHub {
owner = "orbcode";
repo = "orbuculum";
tag = "V${finalAttrs.version}";
hash = "sha256-n3+cfeN6G9n8pD5WyiHPENMJ0FN+bRVZe9pl81uvIrc=";
};
postPatch = ''
cp --recursive --no-preserve=mode ${libdwarf} subprojects/libdwarf-0.7.0
pushd subprojects/libdwarf-0.7.0
patch -p1 < ../packagefiles/libdwarf/0001-fix-Use-project_source_root-for-subproject-compatibi.patch
patch -p1 < ../packagefiles/libdwarf/0002-fix-compilation-clang.patch
patch -p1 < ../packagefiles/libdwarf/0003-Fixed-calloc-arguments-order.patch
popd
'';
nativeBuildInputs = [
meson
ninja
pkg-config
];
buildInputs = [
czmq
libusb1
ncurses
SDL2
libelf
];
doInstallCheck = true;
installFlags = [ "INSTALL_ROOT=$(out)/" ];
postInstall = ''
mkdir -p $out/etc/udev/rules.d/
cp $src/Support/60-orbcode.rules $out/etc/udev/rules.d/
'';
meta = {
description = "Cortex M SWO SWV Demux and Postprocess for the ORBTrace";
homepage = "https://orbcode.org";
changelog = "https://github.com/orbcode/orbuculum/blob/V${finalAttrs.version}/CHANGES.md";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ newam ];
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,54 @@
{
lib,
stdenv,
fetchFromGitHub,
pkg-config,
gtk3,
curl,
libepoxy,
meson,
ninja,
wrapGAppsHook3,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "orbvis";
version = "0.3.2";
src = fetchFromGitHub {
owner = "wojciech-graj";
repo = "orbvis";
tag = "v${finalAttrs.version}";
hash = "sha256-kPbRhm+HymY6DuR4JgE6qTTYKGIqVxvwxtveu7dOOO0=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
wrapGAppsHook3
];
buildInputs = [
gtk3
curl
libepoxy
];
postInstall = ''
install -Dm444 $src/flatpak/io.github.wojciech_graj.OrbVis.desktop -t $out/share/applications
install -Dm444 $src/flatpak/128x128/io.github.wojciech_graj.OrbVis.png -t $out/share/icons/hicolor/128x128/apps
'';
passthru.updateScript = nix-update-script { };
meta = {
description = "View and propagate the full CelesTrak satellite catalog in realtime";
homepage = "https://github.com/wojciech-graj/OrbVis";
license = lib.licenses.gpl2;
maintainers = with lib.maintainers; [ thtrf ];
mainProgram = "orbvis";
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,82 @@
{
lib,
stdenv,
fetchurl,
meson,
ninja,
file,
docbook-xsl-nons,
gtk-doc ? null,
buildDevDoc ? gtk-doc != null,
# for passthru.tests
gnuradio,
gst_all_1,
qt6,
vips,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "orc";
version = "0.4.41";
outputs = [
"out"
"dev"
]
++ lib.optional buildDevDoc "devdoc";
outputBin = "dev"; # compilation tools
src = fetchurl {
url = "https://gstreamer.freedesktop.org/src/orc/orc-${finalAttrs.version}.tar.xz";
hash = "sha256-yxv9T2VSic05vARkLVl76d5UJ2I/CGHB/BnAjZhGf6I=";
};
postPatch = lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) ''
# This benchmark times out on Hydra.nixos.org
sed -i '/memcpy_speed/d' testsuite/meson.build
'';
mesonFlags = [
(lib.mesonEnable "gtk_doc" buildDevDoc)
];
nativeBuildInputs = [
meson
ninja
]
++ lib.optionals buildDevDoc [
gtk-doc
file
docbook-xsl-nons
];
# https://gitlab.freedesktop.org/gstreamer/orc/-/issues/41
doCheck =
!(
stdenv.hostPlatform.isLinux
&& stdenv.hostPlatform.isAarch64
&& stdenv.cc.isGNU
&& lib.versionAtLeast stdenv.cc.version "12"
);
passthru.tests = {
inherit (gst_all_1) gst-plugins-good gst-plugins-bad gst-plugins-ugly;
inherit gnuradio vips;
qt6-qtmultimedia = qt6.qtmultimedia;
};
meta = with lib; {
description = "Oil Runtime Compiler";
homepage = "https://gstreamer.freedesktop.org/projects/orc.html";
changelog = "https://gitlab.freedesktop.org/gstreamer/orc/-/blob/${finalAttrs.version}/RELEASE";
# The source code implementing the Marsenne Twister algorithm is licensed
# under the 3-clause BSD license. The rest is 2-clause BSD license.
license = with licenses; [
bsd3
bsd2
];
platforms = platforms.unix;
maintainers = [ ];
};
})

View File

@@ -0,0 +1,47 @@
{
lib,
stdenv,
fetchgit,
ncurses,
portmidi,
}:
stdenv.mkDerivation {
pname = "orca-c";
version = "unstable-2021-02-13";
src = fetchgit {
url = "https://git.sr.ht/~rabbits/orca";
rev = "5ba56ca67baae3db140f8b7a2b2fc46bbac5602f";
sha256 = "sha256-bbIH0kyHRTcMGXV3WdBQIH1br0FyIzKKL88wqpGZ0NY=";
};
buildInputs = [
ncurses
portmidi
];
postPatch = ''
patchShebangs tool
sed -i tool \
-e 's@ncurses_dir=.*@ncurses_dir="${ncurses}"@' \
-e 's@portmidi_dir=.*@portmidi_dir="${portmidi}"@' tool
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin
install build/orca $out/bin/orca
runHook postInstall
'';
meta = with lib; {
description = "Esoteric programming language designed to quickly create procedural sequencers";
homepage = "https://git.sr.ht/~rabbits/orca";
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ netcrns ];
mainProgram = "orca";
};
}

View File

@@ -0,0 +1,238 @@
{
stdenv,
lib,
binutils,
fetchFromGitHub,
fetchpatch,
cmake,
pkg-config,
wrapGAppsHook3,
boost186,
cereal,
cgal_5,
curl,
dbus,
eigen,
expat,
ffmpeg,
gcc-unwrapped,
glew,
glfw,
glib,
glib-networking,
gmp,
gst_all_1,
gtest,
gtk3,
hicolor-icon-theme,
ilmbase,
libsecret,
libpng,
mpfr,
nlopt,
opencascade-occt_7_6,
openvdb,
opencv,
pcre,
systemd,
onetbb,
webkitgtk_4_1,
wxGTK31,
xorg,
libnoise,
withSystemd ? stdenv.hostPlatform.isLinux,
}:
let
wxGTK' =
(wxGTK31.override {
withCurl = true;
withPrivateFonts = true;
withWebKit = true;
}).overrideAttrs
(old: {
configureFlags = old.configureFlags ++ [
# Disable noisy debug dialogs
"--enable-debug=no"
];
});
in
stdenv.mkDerivation (finalAttrs: {
pname = "orca-slicer";
version = "v2.3.1";
src = fetchFromGitHub {
owner = "SoftFever";
repo = "OrcaSlicer";
tag = finalAttrs.version;
hash = "sha256-RdMBx/onLq58oI1sL0cHmF2SGDfeI9KkPPCbjyMqECI=";
};
nativeBuildInputs = [
cmake
pkg-config
wrapGAppsHook3
wxGTK'
];
buildInputs = [
binutils
(boost186.override {
enableShared = true;
enableStatic = false;
extraFeatures = [
"log"
"thread"
"filesystem"
];
})
boost186.dev
cereal
cgal_5
curl
dbus
eigen
expat
ffmpeg
gcc-unwrapped
glew
glfw
glib
glib-networking
gmp
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-bad
gst_all_1.gst-plugins-good
gtk3
hicolor-icon-theme
ilmbase
libsecret
libpng
mpfr
nlopt
opencascade-occt_7_6
openvdb
pcre
onetbb
webkitgtk_4_1
wxGTK'
xorg.libX11
opencv.cxxdev
libnoise
]
++ lib.optionals withSystemd [ systemd ]
++ finalAttrs.checkInputs;
patches = [
# Fix for webkitgtk linking
./patches/0001-not-for-upstream-CMakeLists-Link-against-webkit2gtk-.patch
# Link opencv_core and opencv_imgproc instead of opencv_world
./patches/dont-link-opencv-world-orca.patch
# The changeset from https://github.com/SoftFever/OrcaSlicer/pull/7650, can be removed when that PR gets merged
# Allows disabling the update nag screen
(fetchpatch {
name = "pr-7650-configurable-update-check.patch";
url = "https://github.com/SoftFever/OrcaSlicer/commit/d10a06ae11089cd1f63705e87f558e9392f7a167.patch";
hash = "sha256-t4own5AwPsLYBsGA15id5IH1ngM0NSuWdFsrxMRXmTk=";
})
];
doCheck = true;
checkInputs = [ gtest ];
separateDebugInfo = true;
NLOPT = nlopt;
NIX_CFLAGS_COMPILE = toString (
[
"-Wno-ignored-attributes"
"-I${opencv.out}/include/opencv4"
"-Wno-error=incompatible-pointer-types"
"-Wno-template-id-cdtor"
"-Wno-uninitialized"
"-Wno-unused-result"
"-Wno-deprecated-declarations"
"-Wno-use-after-free"
"-Wno-format-overflow"
"-Wno-stringop-overflow"
"-DBOOST_ALLOW_DEPRECATED_HEADERS"
"-DBOOST_MATH_DISABLE_STD_FPCLASSIFY"
"-DBOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS"
"-DBOOST_MATH_DISABLE_FLOAT128"
"-DBOOST_MATH_NO_QUAD_SUPPORT"
"-DBOOST_MATH_MAX_FLOAT128_DIGITS=0"
"-DBOOST_CSTDFLOAT_NO_LIBQUADMATH_SUPPORT"
"-DBOOST_MATH_DISABLE_FLOAT128_BUILTIN_FPCLASSIFY"
]
# Making it compatible with GCC 14+, see https://github.com/SoftFever/OrcaSlicer/pull/7710
++ lib.optionals (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "14") [
"-Wno-error=template-id-cdtor"
]
);
NIX_LDFLAGS = toString [
(lib.optionalString withSystemd "-ludev")
"-L${boost186}/lib"
"-lboost_log"
"-lboost_log_setup"
];
prePatch = ''
sed -i 's|nlopt_cxx|nlopt|g' cmake/modules/FindNLopt.cmake
sed -i 's|"libnoise/noise.h"|"noise/noise.h"|' src/libslic3r/PerimeterGenerator.cpp
sed -i 's|"libnoise/noise.h"|"noise/noise.h"|' src/libslic3r/Feature/FuzzySkin/FuzzySkin.cpp
'';
cmakeFlags = [
(lib.cmakeBool "SLIC3R_STATIC" false)
(lib.cmakeBool "SLIC3R_FHS" true)
(lib.cmakeFeature "SLIC3R_GTK" "3")
(lib.cmakeBool "BBL_RELEASE_TO_PUBLIC" true)
(lib.cmakeBool "BBL_INTERNAL_TESTING" false)
(lib.cmakeBool "SLIC3R_BUILD_TESTS" false)
(lib.cmakeFeature "CMAKE_CXX_FLAGS" "-DGL_SILENCE_DEPRECATION")
(lib.cmakeFeature "CMAKE_EXE_LINKER_FLAGS" "-Wl,--no-as-needed")
(lib.cmakeBool "ORCA_VERSION_CHECK_DEFAULT" false)
(lib.cmakeFeature "LIBNOISE_INCLUDE_DIR" "${libnoise}/include/noise")
(lib.cmakeFeature "LIBNOISE_LIBRARY" "${libnoise}/lib/libnoise-static.a")
"-Wno-dev"
# cmake 4 compatibility, remove in next update
# see: https://github.com/SoftFever/OrcaSlicer/commit/883607e1d4a0b2bb719f2f4bcd9fd72f8c2174fa
(lib.cmakeFeature "CMAKE_POLICY_VERSION_MINIMUM" "3.13")
];
# Generate translation files
postBuild = "( cd .. && ./scripts/run_gettext.sh )";
preFixup = ''
gappsWrapperArgs+=(
--prefix LD_LIBRARY_PATH : "$out/lib:${
lib.makeLibraryPath [
glew
]
}"
--set WEBKIT_DISABLE_COMPOSITING_MODE 1
)
'';
postInstall = ''
rm $out/LICENSE.txt
'';
meta = {
description = "G-code generator for 3D printers (Bambu, Prusa, Voron, VzBot, RatRig, Creality, etc.)";
homepage = "https://github.com/SoftFever/OrcaSlicer";
changelog = "https://github.com/SoftFever/OrcaSlicer/releases/tag/v${finalAttrs.version}";
license = lib.licenses.agpl3Only;
maintainers = with lib.maintainers; [
zhaofengli
ovlach
pinpox
liberodark
];
mainProgram = "orca-slicer";
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,16 @@
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 33cf83734..03bc82235 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -179,6 +179,11 @@ if (WIN32)
target_link_libraries(OrcaSlicer_app_gui PRIVATE boost_headeronly)
endif ()
+# We link against webkit2gtk symbols in src/slic3r/GUI/Widgets/WebView.cpp
+if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
+ target_link_libraries(libslic3r_gui "-lwebkit2gtk-4.1")
+endif ()
+
# Link the resources dir to where Slic3r GUI expects it
set(output_dlls_Release "")
set(output_dlls_Debug "")

View File

@@ -0,0 +1,14 @@
diff --git a/src/libslic3r/CMakeLists.txt b/src/libslic3r/CMakeLists.txt
index d85c65fd5..07914f69f 100644
--- a/src/libslic3r/CMakeLists.txt
+++ b/src/libslic3r/CMakeLists.txt
@@ -557,7 +557,8 @@ target_link_libraries(libslic3r
libigl
libnest2d
miniz
- opencv_world
+ opencv_core
+ opencv_imgproc
PRIVATE
${CMAKE_DL_LIBS}
${EXPAT_LIBRARIES}

View File

@@ -0,0 +1,70 @@
diff --git a/src/orca/ax_utilities_application.py b/src/orca/ax_utilities_application.py
index 60c172f78..e8dadf76d 100644
--- a/src/orca/ax_utilities_application.py
+++ b/src/orca/ax_utilities_application.py
@@ -189,7 +189,7 @@ class AXUtilitiesApplication:
pid = AXUtilitiesApplication.get_process_id(app)
try:
- state = subprocess.getoutput(f"cat /proc/{pid}/status | grep State")
+ state = subprocess.getoutput(f"@cat@ /proc/{pid}/status | @grep@ State")
state = state.split()[1]
except Exception as error:
tokens = [f"AXUtilitiesApplication: Exception checking state of pid {pid}: {error}"]
diff --git a/src/orca/debugging_tools_manager.py b/src/orca/debugging_tools_manager.py
index 740f1a690..85f74d2dc 100644
--- a/src/orca/debugging_tools_manager.py
+++ b/src/orca/debugging_tools_manager.py
@@ -243,7 +243,7 @@ class DebuggingToolsManager:
else:
name = AXObject.get_name(app) or "[DEAD]"
try:
- cmdline = subprocess.getoutput(f"cat /proc/{pid}/cmdline")
+ cmdline = subprocess.getoutput(f"@cat@ /proc/{pid}/cmdline")
except Exception as error:
cmdline = f"EXCEPTION: {error}"
else:
diff --git a/src/orca/orca_bin.py.in b/src/orca/orca_bin.py.in
index 6cb4c7772..903b344f0 100755
--- a/src/orca/orca_bin.py.in
+++ b/src/orca/orca_bin.py.in
@@ -186,7 +186,7 @@ def inGraphicalDesktop():
def otherOrcas():
"""Returns the pid of any other instances of Orca owned by this user."""
- openFile = subprocess.Popen('pgrep -u %s -x orca' % os.getuid(),
+ openFile = subprocess.Popen('@pgrep@ -u %s -x orca' % os.getuid(),
shell=True,
stdout=subprocess.PIPE).stdout
pids = openFile.read()
diff --git a/src/orca/orca_modifier_manager.py b/src/orca/orca_modifier_manager.py
index 3407be009..452297a3f 100644
--- a/src/orca/orca_modifier_manager.py
+++ b/src/orca/orca_modifier_manager.py
@@ -230,7 +230,7 @@ class OrcaModifierManager:
debug.print_message(debug.LEVEL_INFO, msg, True)
self.unset_orca_modifiers(reason)
- with subprocess.Popen(["xkbcomp", os.environ["DISPLAY"], "-"],
+ with subprocess.Popen(["@xkbcomp@", os.environ["DISPLAY"], "-"],
stdout=subprocess.PIPE, stderr=subprocess.DEVNULL) as p:
self._original_xmodmap, _ = p.communicate()
self._create_orca_xmodmap()
@@ -262,7 +262,7 @@ class OrcaModifierManager:
return
self._caps_lock_cleared = False
- with subprocess.Popen(["xkbcomp", "-w0", "-", os.environ["DISPLAY"]],
+ with subprocess.Popen(["@xkbcomp@", "-w0", "-", os.environ["DISPLAY"]],
stdin=subprocess.PIPE, stdout=None, stderr=None) as p:
p.communicate(self._original_xmodmap)
@@ -325,7 +325,7 @@ class OrcaModifierManager:
debug.print_message(debug.LEVEL_INFO, msg, True)
- with subprocess.Popen(["xkbcomp", "-w0", "-", os.environ["DISPLAY"]],
+ with subprocess.Popen(["@xkbcomp@", "-w0", "-", os.environ["DISPLAY"]],
stdin=subprocess.PIPE, stdout=None, stderr=None) as p:
p.communicate(bytes('\n'.join(lines), 'UTF-8'))
else:

View File

@@ -0,0 +1,119 @@
{
lib,
pkg-config,
fetchurl,
meson,
ninja,
wrapGAppsHook3,
gobject-introspection,
gettext,
yelp-tools,
itstool,
python3,
gtk3,
gnome,
replaceVars,
at-spi2-atk,
at-spi2-core,
dbus,
xkbcomp,
procps,
gnugrep,
coreutils,
gsettings-desktop-schemas,
speechd-minimal,
brltty,
liblouis,
gst_all_1,
}:
python3.pkgs.buildPythonApplication rec {
pname = "orca";
version = "48.6";
format = "other";
src = fetchurl {
url = "mirror://gnome/sources/orca/${lib.versions.major version}/orca-${version}.tar.xz";
hash = "sha256-7cUDRODf1yR2tcFLOqclyiaHGOpt2JvE7ib0ULM51pY=";
};
patches = [
(replaceVars ./fix-paths.patch {
cat = "${coreutils}/bin/cat";
grep = "${gnugrep}/bin/grep";
pgrep = "${procps}/bin/pgrep";
xkbcomp = "${xkbcomp}/bin/xkbcomp";
})
];
nativeBuildInputs = [
meson
ninja
wrapGAppsHook3
pkg-config
gettext
yelp-tools
itstool
gobject-introspection
];
pythonPath = with python3.pkgs; [
pygobject3
dbus-python
pyxdg
brltty
liblouis
psutil
speechd-minimal
gst-python
setproctitle
];
strictDeps = false;
buildInputs = [
python3
gtk3
at-spi2-atk
at-spi2-core
dbus
gsettings-desktop-schemas
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
];
dontWrapGApps = true; # Prevent double wrapping
preFixup = ''
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
passthru = {
updateScript = gnome.updateScript {
packageName = "orca";
};
};
meta = with lib; {
homepage = "https://orca.gnome.org/";
changelog = "https://gitlab.gnome.org/GNOME/orca/-/blob/main/NEWS";
description = "Screen reader";
mainProgram = "orca";
longDescription = ''
A free, open source, flexible and extensible screen reader that provides
access to the graphical desktop via speech and refreshable braille.
It works with applications and toolkits that support the Assistive
Technology Service Provider Interface (AT-SPI). That includes the GNOME
GTK toolkit, the Java platform's Swing toolkit, LibreOffice, Gecko, and
WebKitGtk. AT-SPI support for the KDE Qt toolkit is being pursued.
Needs `services.gnome.at-spi2-core.enable = true;` in `configuration.nix`.
'';
maintainers = with maintainers; [ berce ];
teams = [ teams.gnome ];
license = licenses.lgpl21;
platforms = platforms.linux;
};
}

View File

@@ -0,0 +1,44 @@
{
lib,
stdenv,
fetchFromGitHub,
cmake,
check,
subunit,
}:
stdenv.mkDerivation rec {
pname = "orcania";
version = "2.3.3";
src = fetchFromGitHub {
owner = "babelouest";
repo = "orcania";
rev = "v${version}";
sha256 = "sha256-Cz3IE5UrfoWjMxQ/+iR1bLsYxf5DVN+7aJqLBcPjduA=";
};
nativeBuildInputs = [ cmake ];
nativeCheckInputs = [
check
subunit
];
cmakeFlags = [ "-DBUILD_ORCANIA_TESTING=on" ];
env.NIX_CFLAGS_COMPILE = toString (
lib.optionals stdenv.cc.isClang [
"-Wno-error=constant-conversion"
]
);
doCheck = true;
meta = with lib; {
description = "Potluck with different functions for different purposes that can be shared among C programs";
mainProgram = "base64url";
homepage = "https://github.com/babelouest/orcania";
license = licenses.lgpl21;
maintainers = with maintainers; [ johnazoidberg ];
};
}

View File

@@ -0,0 +1,60 @@
{
lib,
stdenv,
fetchFromGitHub,
buildGoModule,
installShellFiles,
}:
buildGoModule rec {
pname = "orchard";
version = "0.38.1";
src = fetchFromGitHub {
owner = "cirruslabs";
repo = "orchard";
rev = version;
hash = "sha256-pobhMJkCa8GiaBjpOq5y6FTaoBBq97NlByLcOfbdDLI=";
# populate values that require us to use git. By doing this in postFetch we
# can delete .git afterwards and maintain better reproducibility of the src.
leaveDotGit = true;
postFetch = ''
cd "$out"
git rev-parse HEAD > $out/COMMIT
find "$out" -name .git -print0 | xargs -0 rm -rf
'';
};
vendorHash = "sha256-cdOuMX1PRRCFWfIf6Z2tVSgJDsuj6aC99qnnCKJzPQQ=";
nativeBuildInputs = [ installShellFiles ];
ldflags = [
"-w"
"-s"
"-X github.com/cirruslabs/orchard/internal/version.Version=${version}"
];
# ldflags based on metadata from git and source
preBuild = ''
ldflags+=" -X github.com/cirruslabs/orchard/internal/version.Commit=$(cat COMMIT)"
'';
subPackages = [ "cmd/orchard" ];
postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
export HOME="$(mktemp -d)"
installShellCompletion --cmd orchard \
--bash <($out/bin/orchard completion bash) \
--zsh <($out/bin/orchard completion zsh) \
--fish <($out/bin/orchard completion fish)
'';
meta = with lib; {
mainProgram = "orchard";
description = "Orchestrator for running Tart Virtual Machines on a cluster of Apple Silicon devices";
homepage = "https://github.com/cirruslabs/orchard";
license = licenses.fairsource09;
maintainers = with maintainers; [ techknowlogick ];
};
}

View File

@@ -0,0 +1,82 @@
{
lib,
stdenvNoCC,
fetchFromGitHub,
gtk3,
gnome-themes-extra,
gtk-engine-murrine,
sassc,
border-radius ? null, # Suggested: 2 < value < 16
tweaks ? [ ], # can be "solid" "compact" "black" "primary" "macos" "submenu" "nord|dracula"
withWallpapers ? false,
}:
let
pname = "orchis-theme";
validTweaks = [
"solid"
"compact"
"black"
"primary"
"macos"
"submenu"
"nord"
"dracula"
];
nordXorDracula =
with builtins;
lib.assertMsg (!(elem "nord" tweaks) || !(elem "dracula" tweaks)) ''
${pname}: dracula and nord cannot be mixed. Tweaks ${toString tweaks}
'';
in
assert nordXorDracula;
lib.checkListOfEnum "${pname}: theme tweaks" validTweaks tweaks
stdenvNoCC.mkDerivation
rec {
inherit pname;
version = "2025-04-25";
src = fetchFromGitHub {
repo = "Orchis-theme";
owner = "vinceliuice";
rev = version;
hash = "sha256-+2/CsgJ+rdDpCp+r5B/zys3PtFgtnu+ohTEUOtJNd1Y=";
};
nativeBuildInputs = [
gtk3
sassc
];
buildInputs = [ gnome-themes-extra ];
propagatedUserEnvPkgs = [ gtk-engine-murrine ];
preInstall = ''
mkdir -p $out/share/themes
'';
installPhase = ''
runHook preInstall
bash install.sh -d $out/share/themes -t all \
${lib.optionalString (tweaks != [ ]) "--tweaks " + toString tweaks} \
${lib.optionalString (border-radius != null) ("--round " + toString border-radius + "px")}
${lib.optionalString withWallpapers ''
mkdir -p $out/share/backgrounds
cp src/wallpaper/{1080p,2k,4k}.jpg $out/share/backgrounds
''}
runHook postInstall
'';
meta = with lib; {
description = "Material Design theme for GNOME/GTK based desktop environments";
homepage = "https://github.com/vinceliuice/Orchis-theme";
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = [ maintainers.fufexan ];
};
}

View File

@@ -0,0 +1,44 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
openssl,
}:
rustPlatform.buildRustPackage rec {
pname = "ord";
version = "0.23.3";
src = fetchFromGitHub {
owner = "ordinals";
repo = "ord";
rev = version;
hash = "sha256-+e5l+ez/cDqoyqF05jv6bs1l82pHTMtGFdMEtUln/qM=";
};
cargoHash = "sha256-LPClIma05n+e+mDy0ycaap84yzmDR+VnrT3RqGnfBLA=";
nativeBuildInputs = [
pkg-config
];
buildInputs = [
openssl
];
dontUseCargoParallelTests = true;
checkFlags = [
"--skip=subcommand::server::tests::status" # test fails if it built from source tarball
];
meta = with lib; {
description = "Index, block explorer, and command-line wallet for Ordinals";
homepage = "https://github.com/ordinals/ord";
changelog = "https://github.com/ordinals/ord/blob/${src.rev}/CHANGELOG.md";
license = licenses.cc0;
maintainers = with maintainers; [ xrelkd ];
mainProgram = "ord";
};
}

View File

@@ -0,0 +1,74 @@
{
lib,
stdenvNoCC,
fetchFromGitHub,
ruby,
inkscape,
xorg,
writeText,
cursorsConf ? null, # If set to a string, overwrites contents of './cursors.conf'
}:
let
newCursorsConf = writeText "oreo-cursors-plus.conf" cursorsConf;
in
stdenvNoCC.mkDerivation {
pname = "oreo-cursors-plus";
version = "0-unstable-2023-06-05";
src = fetchFromGitHub {
owner = "Souravgoswami";
repo = "oreo-cursors";
# At the time of writing, there are no version tags. The author will add them starting with the next version release.
# Using the latest commit instead.
rev = "9133204d60ca2c54be0df03b836968a1deac6b20";
hash = "sha256-6oTyOQK7mkr+jWYbPNBlJ4BpT815lNJvsJjzdTmj+68=";
};
nativeBuildInputs = lib.optionals (cursorsConf != null) [
ruby
inkscape
xorg.xcursorgen
];
# './cursors.conf' contains definitions of cursor variations to generate.
configurePhase = ''
runHook preConfigure
${lib.optionalString (cursorsConf != null) ''
cp ${newCursorsConf} cursors.conf
''}
runHook postConfigure
'';
# The repo already contains the default cursors pre-generated in './dist'. Just copy these if './cursors.conf' is not overwritten.
# Otherwise firs remove all default variations and build.
buildPhase = ''
runHook preBuild
${lib.optionalString (cursorsConf != null) ''
rm -r {dist,src/oreo_*}
export HOME=$TMP
ruby generator/convert.rb
make build
''}
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p $out/share
mv ./dist $out/share/icons
runHook postInstall
'';
meta = {
description = "Colored Material cursors with cute animations";
homepage = "https://github.com/Souravgoswami/oreo-cursors";
license = lib.licenses.gpl2Only;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ michaelBrunner ];
};
}

View File

@@ -0,0 +1,66 @@
{
lib,
buildGoModule,
fetchFromGitHub,
replaceVars,
installShellFiles,
testers,
org-stats,
}:
buildGoModule rec {
pname = "org-stats";
version = "1.12.2";
src = fetchFromGitHub {
owner = "caarlos0";
repo = "org-stats";
rev = "v${version}";
hash = "sha256-QTjJ+4Qu5u+5ZCoIAQBxqdhjNI2CXUB8r2Zx8xfIiGw=";
};
vendorHash = "sha256-0biuv94wGXiME181nlkvozhB+x4waGMgwXD9ColQWPw=";
patches = [
# patch in version information
# since `debug.ReadBuildInfo` does not work with `go build
(replaceVars ./version.patch {
inherit version;
})
];
nativeBuildInputs = [
installShellFiles
];
ldflags = [
"-s"
"-w"
];
postInstall = ''
$out/bin/org-stats man > org-stats.1
installManPage org-stats.1
installShellCompletion --cmd org-stats \
--bash <($out/bin/org-stats completion bash) \
--fish <($out/bin/org-stats completion fish) \
--zsh <($out/bin/org-stats completion zsh)
'';
passthru.tests = {
version = testers.testVersion {
package = org-stats;
command = "org-stats version";
};
};
meta = with lib; {
description = "Get the contributor stats summary from all repos of any given organization";
homepage = "https://github.com/caarlos0/org-stats";
changelog = "https://github.com/caarlos0/org-stats/releases/tag/${src.rev}";
license = licenses.mit;
maintainers = with maintainers; [ figsoda ];
mainProgram = "org-stats";
};
}

View File

@@ -0,0 +1,11 @@
--- a/cmd/version.go
+++ b/cmd/version.go
@@ -16,7 +16,7 @@ var versionCmd = &cobra.Command{
if sum == "" {
sum = "none"
}
- fmt.Printf("https://%s %s @ %s\n", info.Main.Path, info.Main.Version, sum)
+ fmt.Printf("https://%s %s @ %s\n", info.Main.Path, "@version@", sum)
} else {
fmt.Println("unknown")
}

View File

@@ -0,0 +1,31 @@
{
lib,
stdenv,
fetchFromGitHub,
gtk-engine-murrine,
}:
stdenv.mkDerivation rec {
pname = "orion";
version = "1.5";
src = fetchFromGitHub {
owner = "shimmerproject";
repo = "Orion";
tag = "v${version}";
sha256 = "1116yawv3fspkiq1ykk2wj0gza3l04b5nhldy0bayzjaj0y6fd89";
};
propagatedUserEnvPkgs = [ gtk-engine-murrine ];
installPhase = ''
mkdir -p $out/share/themes/orion
cp -r gtk-2.0 gtk-3.0 metacity-1 openbox-3 xfwm4 $out/share/themes/orion
'';
meta = {
homepage = "https://github.com/shimmerproject/Orion";
license = lib.licenses.gpl3Plus;
platforms = lib.platforms.linux;
};
}

View File

@@ -0,0 +1,57 @@
{
lib,
stdenv,
fetchFromGitHub,
tor,
firejail,
iptables,
makeWrapper,
}:
stdenv.mkDerivation rec {
pname = "orjail";
version = "1.1";
src = fetchFromGitHub {
owner = "orjail";
repo = "orjail";
rev = "v${version}";
sha256 = "06bwqb3l7syy4c1d8xynxwakmdxvm3qfm8r834nidsknvpdckd9z";
};
nativeBuildInputs = [ makeWrapper ];
postPatch = ''
patchShebangs make-helper.bsh
mkdir bin
mv usr/sbin/orjail bin/orjail
rm -r usr
'';
makeFlags = [
"DESTDIR=${placeholder "out"}"
];
postInstall = ''
# Specify binary paths: tor, firejail, iptables
# mktemp fails with /tmp path prefix, will work without it anyway
# https://github.com/orjail/orjail/issues/78
# firejail will fail reading /etc/hosts, therefore remove --hostname arg
# https://github.com/netblue30/firejail/issues/2758
substituteInPlace $out/bin/orjail \
--replace ''$'TORBIN=\n' ''$'TORBIN=${tor}/bin/tor\n' \
--replace ''$'FIREJAILBIN=\n' ''$'FIREJAILBIN=${firejail}/bin/firejail\n' \
--replace 'iptables -' '${iptables}/bin/iptables -' \
--replace 'mktemp /tmp/' 'mktemp ' \
--replace '--hostname=host ' ""
'';
meta = with lib; {
description = "Force programs to exclusively use tor network";
mainProgram = "orjail";
homepage = "https://github.com/orjail/orjail";
license = licenses.wtfpl;
maintainers = with maintainers; [ onny ];
platforms = platforms.linux;
};
}

View File

@@ -0,0 +1,34 @@
{
lib,
stdenv,
fetchFromGitHub,
cmake,
eigen,
}:
stdenv.mkDerivation rec {
pname = "orocos-kdl";
version = "1.5.1";
src = fetchFromGitHub {
owner = "orocos";
repo = "orocos_kinematics_dynamics";
tag = "v${version}";
sha256 = "15ky7vw461005axx96d0f4zxdnb9dxl3h082igyd68sbdb8r1419";
# Needed to build Python bindings
fetchSubmodules = true;
};
sourceRoot = "${src.name}/orocos_kdl";
nativeBuildInputs = [ cmake ];
propagatedBuildInputs = [ eigen ];
meta = with lib; {
description = "Kinematics and Dynamics Library";
homepage = "https://www.orocos.org/kdl.html";
license = licenses.lgpl21Only;
maintainers = with maintainers; [ lopsided98 ];
platforms = platforms.all;
};
}

View File

@@ -0,0 +1,61 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
openssl,
versionCheckHook,
}:
rustPlatform.buildRustPackage rec {
pname = "orogene";
version = "0.3.34";
src = fetchFromGitHub {
owner = "orogene";
repo = "orogene";
tag = "v${version}";
hash = "sha256-GMWrlvZZ2xlcvcRG3u8jS8KiewHpyX0brNe4pmCpHbM=";
fetchSubmodules = true;
};
cargoPatches = [
# Workaround to avoid "error[E0282]"
# ref: https://github.com/orogene/orogene/pull/315
./update-outdated-lockfile.patch
];
cargoHash = "sha256-I08mqyogEuadp+V10svMmCm0i0zOZWiocOpM9E3lgag=";
nativeBuildInputs = [
pkg-config
];
buildInputs = [
openssl
];
preCheck = ''
export CI=true
export HOME=$(mktemp -d)
'';
doInstallCheck = true;
nativeInstallCheckInputs = [
versionCheckHook
];
versionCheckProgram = "${placeholder "out"}/bin/oro";
versionCheckProgramArg = "--version";
meta = with lib; {
description = "Package manager for tools that use node_modules";
homepage = "https://github.com/orogene/orogene";
changelog = "https://github.com/orogene/orogene/blob/${src.rev}/CHANGELOG.md";
license = with licenses; [
asl20
isc
];
maintainers = with maintainers; [ figsoda ];
mainProgram = "oro";
};
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,40 @@
{
lib,
stdenv,
orthanc,
gtest,
icu,
zlib,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "orthanc-framework";
inherit (orthanc)
src
version
nativeBuildInputs
strictDeps
cmakeFlags
;
sourceRoot = "${finalAttrs.src.name}/OrthancFramework/SharedLibrary";
buildInputs = orthanc.buildInputs ++ [
icu
];
NIX_LDFLAGS = lib.strings.concatStringsSep " " [
"-L${lib.getLib zlib}"
"-lz"
"-L${lib.getLib gtest}"
"-lgtest"
];
meta = {
description = "SDK for building Orthanc plugins and related applications";
homepage = "https://www.orthanc-server.com/";
license = lib.licenses.gpl3Plus;
maintainers = [ ];
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,100 @@
{
lib,
stdenv,
fetchhg,
fetchurl,
orthanc,
cmake,
python3,
unzip,
gtest,
jsoncpp,
boost,
pugixml,
libuuid,
zlib,
}:
let
bootstrap = fetchurl {
url = "https://orthanc.uclouvain.be/downloads/third-party-downloads/bootstrap-5.3.3.zip";
hash = "sha256-VdfxznlQQK+4MR3wnSnQ00ZIQAweqrstCi7SIWs9sF0=";
};
vuejs = fetchurl {
url = "https://orthanc.uclouvain.be/downloads/third-party-downloads/dicom-web/vuejs-2.6.10.tar.gz";
hash = "sha256-49kAzZJmtb7Zu21XX8mrZ4fnnnrSHAHuEne/9UUxIfI=";
};
axios = fetchurl {
url = "https://orthanc.uclouvain.be/downloads/third-party-downloads/dicom-web/axios-0.19.0.tar.gz";
hash = "sha256-KVd8YIWwkLTkqZOS/N1YL7a7y0myqvLMe3+jh0Ups4A=";
};
font-awesome = fetchurl {
url = "https://orthanc.uclouvain.be/downloads/third-party-downloads/dicom-web/Font-Awesome-4.7.0.tar.gz";
hash = "sha256-3lEroOHerTgrv843LN50s/GJcdh2//tjXukzPw2wXUM=";
};
babel-polyfill = fetchurl {
url = "https://orthanc.uclouvain.be/downloads/third-party-downloads/dicom-web/babel-polyfill-6.26.0.min.js.gz";
hash = "sha256-CH09LWISr7QY9QSRhY9/BVy1Te+2NR1sXQCPZioqlcI=";
};
in
stdenv.mkDerivation (finalAttrs: {
pname = "orthanc-plugin-dicomweb";
version = "1.20";
src = fetchhg {
url = "https://orthanc.uclouvain.be/hg/orthanc-dicomweb/";
rev = "OrthancDicomWeb-${finalAttrs.version}";
hash = "sha256-p1n4YAFC3W2B2YYsFm/1cJ/zqLsrycJgkMrcXFf/3Xk=";
};
postPatch = ''
mkdir -p ThirdPartyDownloads
ln -s ${bootstrap} ThirdPartyDownloads/bootstrap-5.3.3.zip
ln -s ${vuejs} ThirdPartyDownloads/vuejs-2.6.10.tar.gz
ln -s ${axios} ThirdPartyDownloads/axios-0.19.0.tar.gz
ln -s ${font-awesome} ThirdPartyDownloads/Font-Awesome-4.7.0.tar.gz
ln -s ${babel-polyfill} ThirdPartyDownloads/babel-polyfill-6.26.0.min.js.gz
'';
SourceRoot = "${finalAttrs.src.name}/Build";
nativeBuildInputs = [
cmake
python3
unzip
];
buildInputs = [
orthanc
orthanc.framework
jsoncpp
boost
gtest
libuuid
pugixml
zlib
];
strictDeps = true;
NIX_LDFLAGS = lib.strings.concatStringsSep " " [
"-L${lib.getLib gtest}"
"-lgtest"
];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DSTATIC_BUILD=OFF"
"-DORTHANC_FRAMEWORK_SOURCE=system"
"-DORTHANC_FRAMEWORK_ROOT=${orthanc.framework}/include/orthanc-framework"
];
meta = {
description = "Plugin that extends Orthanc with support for the DICOMweb protocols";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [
dvcorreia
];
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,133 @@
{
lib,
stdenv,
fetchhg,
boost,
charls,
civetweb,
cmake,
curl,
dcmtk,
gtest,
jsoncpp,
libjpeg,
libpng,
libuuid,
log4cplus,
lua,
openssl,
protobuf,
pugixml,
python3,
sqlite,
unzip,
versionCheckHook,
nixosTests,
orthanc-framework,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "orthanc";
version = "1.12.9";
src = fetchhg {
url = "https://orthanc.uclouvain.be/hg/orthanc/";
rev = "Orthanc-${finalAttrs.version}";
hash = "sha256-IBULO03og+aXmpYAXZdsesTFkc7HkeXol+A7yzDzcfQ=";
};
outputs = [
"out"
"dev"
"doc"
];
sourceRoot = "${finalAttrs.src.name}/OrthancServer";
nativeBuildInputs = [
cmake
protobuf
python3
unzip
];
buildInputs = [
protobuf
boost
charls
civetweb
curl
dcmtk
gtest
jsoncpp
libjpeg
libpng
libuuid
log4cplus
lua
openssl
pugixml
sqlite
];
strictDeps = true;
enableParallelBuilding = true;
cmakeFlags = [
(lib.cmakeFeature "DCMTK_DICTIONARY_DIR_AUTO" "${dcmtk}/share/dcmtk-${dcmtk.version}")
(lib.cmakeFeature "DCMTK_LIBRARIES" "dcmjpls;oflog;ofstd")
(lib.cmakeFeature "CMAKE_BUILD_TYPE" "Release")
(lib.cmakeBool "BUILD_CONNECTIVITY_CHECKS" false)
(lib.cmakeBool "UNIT_TESTS_WITH_HTTP_CONNEXIONS" false)
(lib.cmakeBool "STANDALONE_BUILD" true)
(lib.cmakeBool "USE_SYSTEM_BOOST" true)
(lib.cmakeBool "USE_SYSTEM_CIVETWEB" true)
(lib.cmakeBool "USE_SYSTEM_DCMTK" true)
(lib.cmakeBool "USE_SYSTEM_GOOGLE_TEST" true)
(lib.cmakeBool "USE_SYSTEM_JSONCPP" true)
(lib.cmakeBool "USE_SYSTEM_LIBICONV" true)
(lib.cmakeBool "USE_SYSTEM_LIBJPEG" true)
(lib.cmakeBool "USE_SYSTEM_LIBPNG" true)
(lib.cmakeBool "USE_SYSTEM_LUA" true)
(lib.cmakeBool "USE_SYSTEM_OPENSSL" true)
(lib.cmakeBool "USE_SYSTEM_PROTOBUF" true)
(lib.cmakeBool "USE_SYSTEM_PUGIXML" true)
(lib.cmakeBool "USE_SYSTEM_SQLITE" true)
(lib.cmakeBool "USE_SYSTEM_UUID" true)
(lib.cmakeBool "USE_SYSTEM_ZLIB" true)
];
# Remove warnings during the build
env.NIX_CFLAGS_COMPILE = "-Wno-builtin-macro-redefined";
postInstall = ''
mkdir -p $doc/share/doc/orthanc
cp -r $src/OrthancServer/Resources/Samples $doc/share/doc/orthanc/Samples
cp -r $src/OrthancServer/Plugins/Samples $doc/share/doc/orthanc/OrthancPluginSamples
'';
nativeInstallCheckInputs = [
versionCheckHook
];
versionCheckProgram = "${placeholder "out"}/bin/${finalAttrs.meta.mainProgram}";
versionCheckProgramArg = "--version";
doInstallCheck = true;
passthru = {
framework = orthanc-framework;
tests = {
inherit (nixosTests) orthanc;
};
};
meta = {
description = "Lightweight, RESTful DICOM server for healthcare and medical research";
homepage = "https://www.orthanc-server.com/";
license = lib.licenses.gpl3Plus;
mainProgram = "Orthanc";
maintainers = [ ];
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,54 @@
{
lib,
stdenv,
buildGoModule,
fetchFromGitHub,
installShellFiles,
}:
buildGoModule rec {
pname = "ory";
version = "0.3.4";
src = fetchFromGitHub {
owner = "ory";
repo = "cli";
tag = "v${version}";
hash = "sha256-q7+Fpttgx62GbKxCCiEDlX//e/pNO24e7KhhBeGRDH0=";
};
nativeBuildInputs = [
installShellFiles
];
subPackages = [ "." ];
env.CGO_ENABLED = 1;
tags = [
"sqlite"
];
vendorHash = "sha256-B0y1JVjJmC5eitn7yIcDpl+9+xaBDJBMdvm+7N/ZxTk=";
postInstall = ''
mv $out/bin/cli $out/bin/ory
''
+ lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
installShellCompletion --cmd ory \
--bash <($out/bin/ory completion bash) \
--fish <($out/bin/ory completion fish) \
--zsh <($out/bin/ory completion zsh)
'';
meta = with lib; {
description = "CLI for Ory";
mainProgram = "ory";
homepage = "https://www.ory.sh/cli";
license = licenses.asl20;
maintainers = with maintainers; [
luleyleo
nicolas-goudry
];
};
}

View File

@@ -0,0 +1,45 @@
{
lib,
rustPlatform,
fetchFromGitHub,
rust-cbindgen,
}:
rustPlatform.buildRustPackage {
pname = "orz";
version = "1.6.2-unstable-2024-11-08";
src = fetchFromGitHub {
owner = "richox";
repo = "orz";
rev = "c828a50f18a309d4715741056db74941e6a98867";
hash = "sha256-PVso4ufBwxhF1yhzIkIwSbRJdnH9h8gn3nreWQJDMn4=";
};
cargoHash = "sha256-vbhK4jHNhCI1nFv2pVOtjlxQe+b7NMP14z2Tk+no8Vs=";
outputs = [
"out"
"dev"
"lib"
];
nativeBuildInputs = [
rust-cbindgen
];
postInstall = ''
cbindgen -o $dev/include/orz.h
mkdir -p $lib
mv $out/lib "$lib"
'';
meta = with lib; {
description = "High performance, general purpose data compressor written in rust";
homepage = "https://github.com/richox/orz";
license = licenses.mit;
maintainers = with maintainers; [ figsoda ];
mainProgram = "orz";
};
}