Merge master into staging-next
This commit is contained in:
@@ -245,7 +245,7 @@ nixos/modules/installer/tools/nix-fallback-paths.nix @NixOS/nix-team @raitobeza
|
||||
/pkgs/applications/networking/browsers/firefox/update.nix
|
||||
/pkgs/applications/networking/browsers/firefox/packages/firefox.nix @mweinelt
|
||||
/pkgs/applications/networking/browsers/firefox/packages/firefox-esr-*.nix @mweinelt
|
||||
/pkgs/applications/networking/browsers/librewolf @squalus @DominicWrege @fpletz @LordGrimmauld
|
||||
/pkgs/applications/networking/browsers/librewolf @squalus @DominicWrege @fpletz
|
||||
/pkgs/applications/networking/browsers/chromium @emilylange @networkException
|
||||
/nixos/tests/chromium.nix @emilylange @networkException
|
||||
|
||||
|
||||
@@ -17901,6 +17901,11 @@
|
||||
githubId = 30654959;
|
||||
name = "Michele Sciabarra";
|
||||
};
|
||||
mse63 = {
|
||||
name = "Mahmoud Elsharawy";
|
||||
github = "mse63";
|
||||
githubId = 81396550;
|
||||
};
|
||||
msgilligan = {
|
||||
email = "sean@msgilligan.com";
|
||||
github = "msgilligan";
|
||||
|
||||
@@ -20,8 +20,8 @@ let
|
||||
sha256Hash = "sha256-xs9ABQ9f8/gtxcoiZkf/xEtmTOj6rb4Ty+w70/+C4Ss=";
|
||||
};
|
||||
betaVersion = {
|
||||
version = "2025.2.3.6"; # "Android Studio Otter 3 Feature Drop | 2025.2.3 RC 1"
|
||||
sha256Hash = "sha256-UysTlKH2h+8FElFgYYTiP4LCPYCssMRSrSA4lwsk6ek=";
|
||||
version = "2025.2.3.7"; # "Android Studio Otter 3 Feature Drop | 2025.2.3 RC 2"
|
||||
sha256Hash = "sha256-d5BcAUkYV7O25wyoifiZxfUsANPxLa/QkuT9u1qqfP8=";
|
||||
};
|
||||
latestVersion = {
|
||||
version = "2025.3.1.1"; # "Android Studio Panda 1 | 2025.3.1 Canary 1"
|
||||
|
||||
@@ -33,7 +33,6 @@ in
|
||||
squalus
|
||||
dwrege
|
||||
fpletz
|
||||
grimmauld
|
||||
];
|
||||
platforms = lib.platforms.unix;
|
||||
broken = stdenv.buildPlatform.is32bit;
|
||||
|
||||
@@ -40,13 +40,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "art";
|
||||
version = "1.25.11";
|
||||
version = "1.25.12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "artpixls";
|
||||
repo = "ART";
|
||||
tag = version;
|
||||
hash = "sha256-viX2GjPV4ZvaK7u6KgANbbMLCFRLbCwd48NiIcsHqSY=";
|
||||
hash = "sha256-iF409zromKDliFRjGWYHBeK38UsxUCH70dgSsHLHhhw=";
|
||||
};
|
||||
|
||||
# Fix the build with CMake 4.
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
From d6b05accc05abcd13aefd66c50e6f4414f098b71 Mon Sep 17 00:00:00 2001
|
||||
From: Moraxyc <i@qaq.li>
|
||||
Date: Thu, 1 Jan 2026 10:49:08 +0800
|
||||
Subject: [PATCH] fix(config.py): fix compatibility with marshmallow 4.x
|
||||
|
||||
---
|
||||
aws_gate/config.py | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/aws_gate/config.py b/aws_gate/config.py
|
||||
index bfb84bf..0a1153f 100644
|
||||
--- a/aws_gate/config.py
|
||||
+++ b/aws_gate/config.py
|
||||
@@ -45,9 +45,9 @@ class HostSchema(Schema):
|
||||
|
||||
class GateConfigSchema(Schema):
|
||||
defaults = fields.Nested(
|
||||
- DefaultsSchema, required=False, missing={}, validate=validate_defaults
|
||||
+ DefaultsSchema, required=False, load_default={}, validate=validate_defaults
|
||||
)
|
||||
- hosts = fields.List(fields.Nested(HostSchema), required=False, missing=[])
|
||||
+ hosts = fields.List(fields.Nested(HostSchema), required=False, load_default=[])
|
||||
|
||||
# pylint: disable=unused-argument
|
||||
@post_load
|
||||
--
|
||||
2.51.2
|
||||
|
||||
@@ -20,6 +20,9 @@ python3Packages.buildPythonApplication rec {
|
||||
|
||||
patches = [
|
||||
./disable-bootstrap.patch
|
||||
# default and missing parameters, which were replaced by dump_default and load_default
|
||||
# https://github.com/xen0l/aws-gate/pull/1770
|
||||
./fix-compatibility-with-marshmallow-4.x.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -10,16 +10,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "c2patool";
|
||||
version = "0.26.7";
|
||||
version = "0.26.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "contentauth";
|
||||
repo = "c2pa-rs";
|
||||
tag = "c2patool-v${finalAttrs.version}";
|
||||
hash = "sha256-Nc72JDKQXrwL7izFGkqyig9GB5Ov5qmJ0YBC3bseC9M=";
|
||||
hash = "sha256-2LZeXy/uuWH2BW9bmpRs+a2G7BOFOTPGS03Efn96Dp8=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-incPpMqapRqQsyaNcG1k132vBsQEgmj42jKDl8FGqxc=";
|
||||
cargoHash = "sha256-Qdl7uIfS993a3FPwAXbQVLwsEgFHLaYN48Elw4JMYpQ=";
|
||||
|
||||
# use the non-vendored openssl
|
||||
env.OPENSSL_NO_VENDOR = 1;
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
meson,
|
||||
ninja,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "canfigger";
|
||||
version = "0.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "andy5995";
|
||||
repo = "canfigger";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-S2rEQT8wKSjJ7LFF6vcigqb9r5QR/nNUCzNdhuBNjTo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
];
|
||||
|
||||
# canfigger has asan and ubsan enabled by default, disable it here
|
||||
mesonFlags = [
|
||||
"-Dcanfigger:b_sanitize=none"
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Lightweight library designed to parse configuration files";
|
||||
homepage = "https://github.com/andy5995/canfigger";
|
||||
changelog = "https://github.com/andy5995/canfigger/blob/${src.rev}/ChangeLog.txt";
|
||||
license = lib.licenses.gpl3Only;
|
||||
maintainers = with lib.maintainers; [ iynaix ];
|
||||
mainProgram = "canfigger";
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
@@ -13,13 +13,13 @@
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "cgns";
|
||||
version = "4.5.0";
|
||||
version = "4.5.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cgns";
|
||||
repo = "cgns";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-lPbXIC+O4hTtacxUcyNjZUWpEwo081MjEWhfIH3MWus=";
|
||||
hash = "sha256-9i44GJesbZ2kV+ZSpYPYEhH873W8DxD1/aYzD19eAJ8=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
python3,
|
||||
pkg-config,
|
||||
pixman,
|
||||
nodejs_22,
|
||||
cairo,
|
||||
pango,
|
||||
stdenv,
|
||||
@@ -22,6 +23,8 @@ buildNpmPackage rec {
|
||||
hash = "sha256-RPFEquxMRnNW+L6azcDmrIKXG27DAF2PxDmSB3ErOHk=";
|
||||
};
|
||||
|
||||
nodejs = nodejs_22;
|
||||
|
||||
npmDepsHash = "sha256-h4Ipmmo0Jf6/rzCAKtLLCYrUi1anVKZSgy/kcEKDQJg=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -49,6 +49,8 @@ stdenv'.mkDerivation (finalAttrs: {
|
||||
--replace-fail \
|
||||
'CMAKE_MINIMUM_REQUIRED(VERSION 3.1 FATAL_ERROR)' \
|
||||
'CMAKE_MINIMUM_REQUIRED(VERSION 3.10 FATAL_ERROR)'
|
||||
|
||||
sed -e '1i #include <cstdint>' -i third_party/cxxopts/include/cxxopts.hpp
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -1,81 +0,0 @@
|
||||
diff --git a/CMakeLists.txt.orig b/CMakeLists.txt
|
||||
index ac0488e..a3724bc 100644
|
||||
--- a/CMakeLists.txt.orig
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -50,14 +50,6 @@ include(FetchContent)
|
||||
|
||||
set(CMAKE_VERBOSE_MAKEFILE ON)
|
||||
|
||||
-#========================================== PRE-CHECKS ============================================#
|
||||
-include(FindGit)
|
||||
-find_package(Git)
|
||||
-
|
||||
-if (NOT Git_FOUND)
|
||||
- message(FATAL_ERROR "Required package 'Git' not found on system.")
|
||||
-endif ()
|
||||
-
|
||||
#======================================== LIB IMPORTS =============================================#
|
||||
# ======= #
|
||||
# OpenSSL #
|
||||
@@ -65,40 +57,17 @@ endif ()
|
||||
find_package(OpenSSL REQUIRED)
|
||||
include_directories(${OPENSSL_INCLUDE_DIR})
|
||||
|
||||
-# ============== #
|
||||
-# JSON-C library #
|
||||
-# ============== #
|
||||
-set(JSONC_DOWNLOAD_PATH "${TEMP_DIR_PATH}/libjsonc")
|
||||
-set(JSONC_INSTALL_PATH "${CMAKE_EXTERNAL_OUTPUT_DIRECTORY}")
|
||||
-
|
||||
-add_custom_target(make-jsonc-install-dir ALL
|
||||
- COMMAND ${CMAKE_COMMAND} -E make_directory ${JSONC_INSTALL_PATH}
|
||||
-)
|
||||
-
|
||||
-ExternalProject_Add(libjsonc
|
||||
- PREFIX "${JSONC_DOWNLOAD_PATH}"
|
||||
- SOURCE_DIR "${JSONC_DOWNLOAD_PATH}/src/libjsonc-build"
|
||||
- GIT_REPOSITORY "https://github.com/json-c/json-c.git"
|
||||
- GIT_TAG "json-c-0.18-20240915"
|
||||
- CMAKE_ARGS "-DBUILD_STATIC_LIBS=ON"
|
||||
- "-DBUILD_SHARED_LIBS=OFF"
|
||||
- "-DCMAKE_INSTALL_PREFIX:PATH=${JSONC_INSTALL_PATH}"
|
||||
- "-DHAVE_ARC4RANDOM=OFF"
|
||||
- "-DCMAKE_BUILD_TYPE=release"
|
||||
- "-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
|
||||
-)
|
||||
-
|
||||
-set(JSONC_LIBRARIES
|
||||
- ${CMAKE_EXTERNAL_OUTPUT_DIRECTORY}/lib/libjson-c.a
|
||||
-# bsd
|
||||
-)
|
||||
-
|
||||
# ============ #
|
||||
# Curl library #
|
||||
# ============ #
|
||||
find_package(CURL REQUIRED)
|
||||
include_directories(${CURL_INCLUDE_DIR})
|
||||
|
||||
+find_package(PkgConfig REQUIRED)
|
||||
+pkg_check_modules(JSONC REQUIRED json-c)
|
||||
+include_directories(${JSONC_INCLUDE_DIRS})
|
||||
+
|
||||
+
|
||||
# ================================ #
|
||||
# nCurses - for the user interface #
|
||||
# ================================ #
|
||||
@@ -410,7 +379,7 @@ add_subdirectory(docs)
|
||||
#endforeach()
|
||||
|
||||
add_executable(ctune ${SOURCE_FILES})
|
||||
-add_dependencies(ctune ctune_logger libjsonc)
|
||||
+add_dependencies(ctune ctune_logger)
|
||||
include_directories(${CMAKE_EXTERNAL_OUTPUT_DIRECTORY}/include)
|
||||
|
||||
add_dependencies(ctune ${CTUNE_PLUGIN_LIST_AUDIO_PLAYER})
|
||||
@@ -450,4 +419,4 @@ if(TARGET uninstall)
|
||||
|
||||
add_custom_target(uninstall
|
||||
COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_SOURCE_DIR}/CMakeUninstall.cmake)
|
||||
-endif()
|
||||
\ No newline at end of file
|
||||
+endif()
|
||||
@@ -0,0 +1,17 @@
|
||||
diff --git a/CMakeLists.txt.orig b/CMakeLists.txt
|
||||
index 20ba56d..85750c8 100644
|
||||
--- a/CMakeLists.txt.orig
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -52,12 +52,7 @@ set(CMAKE_VERBOSE_MAKEFILE ON)
|
||||
|
||||
#========================================== PRE-CHECKS ============================================#
|
||||
find_package(PkgConfig REQUIRED)
|
||||
-include(FindGit)
|
||||
-find_package(Git)
|
||||
|
||||
-if (NOT Git_FOUND)
|
||||
- message(FATAL_ERROR "Required package 'Git' not found on system.")
|
||||
-endif ()
|
||||
|
||||
#======================================== LIB IMPORTS =============================================#
|
||||
# ======= #
|
||||
@@ -0,0 +1,14 @@
|
||||
diff --git a/docs/CMakeLists.txt.orig b/docs/CMakeLists.txt
|
||||
index bb4d641..b37936e 100644
|
||||
--- a/docs/CMakeLists.txt.orig
|
||||
+++ b/docs/CMakeLists.txt
|
||||
@@ -46,7 +46,7 @@ add_custom_command(
|
||||
)
|
||||
|
||||
install(FILES ${MAN_OUT_DIR}/${MAN_OUT_FILENAME_GZ}
|
||||
- DESTINATION ${CMAKE_INSTALL_PREFIX}/man/man1
|
||||
+ DESTINATION ${MAN_INSTALL_DIR}
|
||||
)
|
||||
|
||||
install(CODE "execute_process(COMMAND ${CMAKE_SOURCE_DIR}/cmake/scripts/update_mandb.sh ARGS ${CMAKE_BUILD_TYPE})")
|
||||
\ No newline at end of file
|
||||
@@ -14,16 +14,17 @@
|
||||
ncurses,
|
||||
libuuid,
|
||||
pandoc,
|
||||
pipewire,
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ctune";
|
||||
version = "1.3.4";
|
||||
version = "1.3.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "An7ar35";
|
||||
repo = "ctune";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-36Y19CbUnv8NtvZjCMKod/Y/Ofjgr9BsxgMMdoMK+hU=";
|
||||
hash = "sha256-HGCXtntsCQsWKoTbhRZ71NxfD4rFuYDE2IbGVh0Cj/E=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -42,6 +43,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
json_c
|
||||
ncurses
|
||||
libuuid
|
||||
pipewire
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
@@ -52,7 +54,10 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"-DCMAKE_INSTALL_PREFIX=''"
|
||||
];
|
||||
|
||||
patches = [ ./cmake_disable_git_clone.patch ];
|
||||
patches = [
|
||||
./cmake_remove_git_check.patch
|
||||
./docs_cmake_fix_man_install_dir.patch
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Nice terminal nCurses (tui) internet radio player for Linux, browse and search from api.radio-browser.info";
|
||||
|
||||
@@ -11,13 +11,13 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "ghostfolio";
|
||||
version = "2.224.2";
|
||||
version = "2.225.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ghostfolio";
|
||||
repo = "ghostfolio";
|
||||
tag = version;
|
||||
hash = "sha256-IaRwBqz1A2ZkcAQ+jAL6NxyEgtjM70T+N0mf0kvpxmA=";
|
||||
hash = "sha256-nzXQfi4N7t/tm5Zub29AIYKgBYzZN8k/fPLqRK3PKwM=";
|
||||
# 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;
|
||||
@@ -27,7 +27,7 @@ buildNpmPackage rec {
|
||||
'';
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-CSssn/aYWcGoQmBsJFWJG4ZIuAJcIeDO2CeAcOiUdP4=";
|
||||
npmDepsHash = "sha256-TADFJd6kWmEsXi9+04OAGlhR2rX+++K5OraaQatLSho=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
prisma_6
|
||||
|
||||
@@ -10,11 +10,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "github-copilot-cli";
|
||||
version = "0.0.372";
|
||||
version = "0.0.373";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://registry.npmjs.org/@github/copilot/-/copilot-${finalAttrs.version}.tgz";
|
||||
hash = "sha256-YtGt9J7dPL7m1Tc0nYf/sZrl30LxXrcIOZv1de4tLT8=";
|
||||
hash = "sha256-Mo6RdDEXaLzWCyKPO1Oalc9hO8/gW6x01tpHiFVGiWM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeBinaryWrapper ];
|
||||
|
||||
@@ -24,13 +24,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "goverlay";
|
||||
version = "1.6.7";
|
||||
version = "1.6.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "benjamimgois";
|
||||
repo = "goverlay";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-36gc+S8KgL7fZueKW2T/TlSlLx3/JfmcQfOQ7PDqDvo=";
|
||||
hash = "sha256-88Ev83onTrtH+xPu11RNTZN4pCsWJ+eTJc6J2XTN7Z4=";
|
||||
};
|
||||
|
||||
outputs = [
|
||||
|
||||
@@ -181,7 +181,7 @@ buildDotnetModule (finalAttrs: {
|
||||
"--subpackage"
|
||||
"frontend"
|
||||
"--url"
|
||||
"https://github.com/futo-org/Grayjay.Desktop"
|
||||
"https://gitlab.futo.org/api/v4/projects/videostreaming%2FGrayjay%2EDesktop/repository/archive.tar.gz?sha=refs%2Ftags%2F10"
|
||||
];
|
||||
})
|
||||
(finalAttrs.passthru.fetch-deps)
|
||||
|
||||
@@ -123,6 +123,15 @@ perlPackages.buildPerlPackage rec {
|
||||
]);
|
||||
|
||||
checkPhase = ''
|
||||
# Temporarily disable a test failing because of a behavioural change in ImageMagick7
|
||||
# t/04_Page.t ................................... 1/12
|
||||
# Failed test 'undefined'
|
||||
# at t/04_Page.t line 114.
|
||||
# got: '72'
|
||||
# expected: '300'
|
||||
# Looks like you failed 1 test of 12.
|
||||
rm t/04_Page.t
|
||||
|
||||
export XDG_CACHE_HOME="$(mktemp -d)"
|
||||
xvfb-run -s '-screen 0 800x600x24' \
|
||||
make test
|
||||
|
||||
@@ -969,14 +969,14 @@ rec {
|
||||
th_TH = th-th;
|
||||
th-th = mkDict {
|
||||
pname = "hunspell-dict-th-th";
|
||||
version = "0-unstable-2025-12-23";
|
||||
version = "0-unstable-2025-12-29";
|
||||
dictFileName = "th_TH";
|
||||
readmeFile = "README.md";
|
||||
src = fetchFromGitHub {
|
||||
owner = "SyafiqHadzir";
|
||||
repo = "Hunspell-TH";
|
||||
rev = "2c85c67288df6c5c161086eb5314cb7ba360c961";
|
||||
sha256 = "sha256-2+tfLJGPHopfwOp2FufZYVHiWSo2z4LjvCozqr6TyGU=";
|
||||
rev = "a23b0521438f2735dc73efaee61391c6106ae196";
|
||||
sha256 = "sha256-fRHtglTVoUgeQ8v/+pBWxfk+EgZv/uAt9Ka6tK1GJgA=";
|
||||
};
|
||||
meta = {
|
||||
description = "Hunspell dictionary for Central Thai (Thailand)";
|
||||
|
||||
@@ -22,6 +22,8 @@ stdenv.mkDerivation {
|
||||
pkg-config
|
||||
];
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = "-std=gnu17";
|
||||
|
||||
cmakeFlags = [
|
||||
# -DARM64=ON disables all targets that only build on 32-bit ARM; this allows
|
||||
# the package to build on aarch64 and other architectures
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
{
|
||||
lib,
|
||||
python3Packages,
|
||||
fetchFromGitHub,
|
||||
}:
|
||||
|
||||
python3Packages.buildPythonApplication {
|
||||
pname = "lichess-bot";
|
||||
version = "2025.12.23.1";
|
||||
format = "other";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lichess-bot-devs";
|
||||
repo = "lichess-bot";
|
||||
rev = "6ea42dfaffa65efea0da09d94b058853d724a989";
|
||||
hash = "sha256-G8DiW96mRnvmmmRALRcYDnjLilQIRqH5m6+aTluhohI=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
chess
|
||||
pyyaml
|
||||
requests
|
||||
backoff
|
||||
rich
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
substituteInPlace "lib/lichess_bot.py" \
|
||||
--replace 'open("lib/versioning.yml")' \
|
||||
'open("'$out'/share/lichess-bot/lib/versioning.yml")'
|
||||
|
||||
|
||||
mkdir -p "$out"/{bin,share/lichess-bot}
|
||||
cp -R . $out/share/lichess-bot
|
||||
|
||||
makeWrapper ${python3Packages.python.interpreter} $out/bin/lichess-bot \
|
||||
--set PYTHONPATH "$PYTHONPATH:$out/share/lichess-bot" \
|
||||
--add-flags "$out/share/lichess-bot/lichess-bot.py"
|
||||
echo $out > $out/my_dir.txt
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Bridge between lichess.org and bots";
|
||||
homepage = "https://github.com/lichess-bot-devs/lichess-bot";
|
||||
license = lib.licenses.gpl3;
|
||||
maintainers = with lib.maintainers; [ mse63 ];
|
||||
platforms = lib.platforms.unix;
|
||||
mainProgram = "lichess-bot";
|
||||
};
|
||||
|
||||
}
|
||||
@@ -74,13 +74,13 @@ let
|
||||
in
|
||||
effectiveStdenv.mkDerivation (finalAttrs: {
|
||||
pname = "llama-cpp";
|
||||
version = "7527";
|
||||
version = "7581";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ggml-org";
|
||||
repo = "llama.cpp";
|
||||
tag = "b${finalAttrs.version}";
|
||||
hash = "sha256-Nl4l812wZvqZs1Y7HOAf2g9zXLY4EwvfxX+So0tdT0U=";
|
||||
hash = "sha256-8xQ6Azdr2Nwn+2EYAn/YDGLDRI6hqKVQsBDmfa7f5uk=";
|
||||
leaveDotGit = true;
|
||||
postFetch = ''
|
||||
git -C "$out" rev-parse --short HEAD > $out/COMMIT
|
||||
|
||||
@@ -6,11 +6,11 @@
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "lxgw-neoxihei";
|
||||
version = "1.228";
|
||||
version = "1.236";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/lxgw/LxgwNeoXiHei/releases/download/v${version}/LXGWNeoXiHei.ttf";
|
||||
hash = "sha256-1RCcvlgbOE06DIgBALq2PJxipGVFonhQJcFr03dOEzc=";
|
||||
hash = "sha256-cH6i4Jp0fhgpkv6yrs3EkiSN7jAHFOPJC8+Kbk4tKIs=";
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -1,1 +1,2 @@
|
||||
-cmake_minimum_required(VERSION 2.8.12)
|
||||
+# Fix the build with CMake 4
|
||||
+cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
if (POLICY CMP0025)
|
||||
cmake_policy(SET CMP0025 NEW)
|
||||
@@ -0,0 +1,172 @@
|
||||
{
|
||||
cmake,
|
||||
fetchFromGitHub,
|
||||
fetchzip,
|
||||
lib,
|
||||
pkg-config,
|
||||
replaceVars,
|
||||
simde,
|
||||
stdenv,
|
||||
}:
|
||||
|
||||
let
|
||||
# Manticore fetches columnar from a tag that indicates the versions of libraries that columnar includes.
|
||||
# (See NEED_COLUMNAR_API/NEED_SECONDARY_API/NEED_KNN_API in Manticore's cmake/GetColumnar.cmake)
|
||||
# So this tag indicates columnar v27, secondary v18, and knn v9.
|
||||
libraryVersion = "c27-s18-k9";
|
||||
# If you inspect the revision that tag points to, there's also hopefully a more normal version tag too
|
||||
numericVersion = "9.0.0";
|
||||
columnarSource = fetchFromGitHub {
|
||||
owner = "manticoresoftware";
|
||||
repo = "columnar";
|
||||
tag = libraryVersion;
|
||||
hash = "sha256-26zSdLNJkC7zYHT8sDq/2mZPRfdc9db1vIIrkaiPqFM=";
|
||||
};
|
||||
hnswlib = stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "hnswlib";
|
||||
version = "d7bb3bbd59220f62203012b2f649aa537cc97cdc"; # see HNSW_GITHUB in columnar's cmake/GetHNSW.cmake
|
||||
src = fetchFromGitHub {
|
||||
owner = "manticoresoftware";
|
||||
repo = "hnswlib";
|
||||
rev = "d7bb3bbd59220f62203012b2f649aa537cc97cdc";
|
||||
hash = "sha256-SDYf8J4auzqGBHqFMDFR6TVyNthCA4q6J4glcIssAJU=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
];
|
||||
meta = {
|
||||
description = "Header-only C++/python library for fast approximate nearest neighbors";
|
||||
homepage = "https://github.com/nmslib/hnswlib";
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
});
|
||||
pgm-index = stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "pgm-index";
|
||||
version = "pgm_2022_08_02"; # see PGM_GITHUB in columnar's cmake/GetPGM.cmake
|
||||
src = fetchFromGitHub {
|
||||
owner = "manticoresoftware";
|
||||
repo = "PGM-index";
|
||||
rev = "5a5a763c7c07e56f56fd33137dcee9f1b3c3b640";
|
||||
hash = "sha256-p8CjY9r1TEi91HBac9rZ39Yae2XuNh2yQWbo65n90jU=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
];
|
||||
# Use the custom CMakeLists.txt from columnar
|
||||
postPatch = ''
|
||||
cp ${columnarSource}/pgm/CMakeLists.txt CMakeLists.txt
|
||||
'';
|
||||
meta = {
|
||||
description = "Piecewise Geometric Model index - a fast and space-efficient data structure";
|
||||
homepage = "https://github.com/gvinciguerra/PGM-index";
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
});
|
||||
streamvbyte = stdenv.mkDerivation (finalAttrs: rec {
|
||||
pname = "streamvbyte";
|
||||
version = "efdd9dace81a4a8f844267631879b500c6d913cf"; # see SVB_GITHUB in columnar's cmake/GetStreamvbyte.cmake
|
||||
src = fetchFromGitHub {
|
||||
owner = "manticoresoftware";
|
||||
repo = "streamvbyte";
|
||||
rev = version;
|
||||
hash = "sha256-a9E1aWBY/P7wI+kgHqhEiD3THctFfeFcy658RcNpHfQ=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
];
|
||||
# Enable SSE4.1 on x86_64 to avoid GCC 14 target attribute issues
|
||||
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isx86_64 "-msse4.1";
|
||||
# Use the custom CMakeLists.txt from columnar
|
||||
postPatch = ''
|
||||
cp ${columnarSource}/streamvbyte/CMakeLists.txt CMakeLists.txt
|
||||
'';
|
||||
meta = {
|
||||
description = "Fast integer compression library using StreamVByte encoding";
|
||||
homepage = "https://github.com/manticoresoftware/streamvbyte/";
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
});
|
||||
fastpfor = stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "fastpfor";
|
||||
version = "simde"; # see FP_GITHUB in columnar's cmake/GetFastPFor.cmake
|
||||
src = fetchFromGitHub {
|
||||
owner = "manticoresoftware";
|
||||
repo = "FastPFor";
|
||||
rev = "5f6b7df8f0dba402bb616a81ca510bfeb04c42ce";
|
||||
hash = "sha256-O9nqgsZKT+q9dHdh2RahF1U8KXCmDp0ld7hNvVREM8k=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
];
|
||||
buildInputs = [ simde ];
|
||||
# Enable SSE3/SSSE3/SSE4.1 on x86_64 to avoid GCC 14 target attribute issues
|
||||
# (Columnar's custom libfastpfor/CMakeLists.txt comments these out. I think get away with it because they just build with clang?)
|
||||
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isx86_64 "-msse3 -mssse3 -msse4.1";
|
||||
|
||||
# Columnar uses its own version of CMakeLists.txt to compile libfastpfor
|
||||
prePatch = ''
|
||||
cp ${columnarSource}/libfastpfor/CMakeLists.txt CMakeLists.txt
|
||||
'';
|
||||
patches = [ ./fastpfor-cmake-policy.patch ];
|
||||
postPatch = ''
|
||||
# Use nixpkgs simde rather than FetchContent-ing from github
|
||||
sed -i '/Add simde for arm/,/FetchContent_GetProperties ( simde )/c\
|
||||
message(STATUS "Using nixpkgs simde for arm")\n\
|
||||
set(simde_SOURCE_DIR "${simde.src}")\n\
|
||||
set(simde_POPULATED 1)\n\
|
||||
' CMakeLists.txt
|
||||
'';
|
||||
meta = {
|
||||
description = "Fast integer compression";
|
||||
homepage = "https://github.com/manticoresoftware/FastPFor/";
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
});
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "manticore-columnar";
|
||||
version = numericVersion;
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
"dev"
|
||||
];
|
||||
|
||||
src = columnarSource;
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
];
|
||||
buildInputs = [
|
||||
fastpfor
|
||||
hnswlib
|
||||
pgm-index
|
||||
streamvbyte
|
||||
];
|
||||
|
||||
patches = [
|
||||
(replaceVars ./columnar.patch {
|
||||
version = numericVersion;
|
||||
})
|
||||
];
|
||||
cmakeFlags = [
|
||||
"-DSKIP_KNN=ON" # Skip KNN & embeddings for now
|
||||
];
|
||||
postPatch = ''
|
||||
# I've failed to get avx compiled, skip it for now.
|
||||
sed -i '/set (ADD_AVX_BUILDS 1)/d' CMakeLists.txt
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Manticore Columnar Library - columnar storage and secondary indexes library for Manticore Search";
|
||||
homepage = "https://github.com/manticoresoftware/columnar";
|
||||
license = licenses.asl20;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,33 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 3bfbc5ef9043..2a25188f8f92 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -26,7 +26,7 @@ set ( CMAKE_INTERPROCEDURAL_OPTIMIZATION $ENV{CMAKE_INTERPROCEDURAL_OPTIMIZATION
|
||||
set ( _CMAKE_BUILD_TYPE ${CMAKE_BUILD_TYPE} )
|
||||
|
||||
# The below version is used for versioning of the package and is replaced by the version from the pack workflow
|
||||
-project ( columnar VERSION 0.0.0 )
|
||||
+project ( columnar VERSION @version@ )
|
||||
|
||||
# sometimes CMAKE_BUILD_TYPE became set after PROJECT statement, undo it.
|
||||
if (NOT _CMAKE_BUILD_TYPE AND CMAKE_BUILD_TYPE)
|
||||
@@ -108,7 +108,7 @@ set (_includes include/manticore-columnar-api)
|
||||
target_include_directories ( columnar_api INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>$<INSTALL_INTERFACE:${_includes}> )
|
||||
|
||||
# install columnar and secondary API (only headers, no packaging, don't build anything at all)
|
||||
-if (API_ONLY)
|
||||
+# if (API_ONLY)
|
||||
install ( TARGETS columnar_api EXPORT apiexport )
|
||||
install ( TARGETS secondary_api EXPORT apiexport )
|
||||
install ( TARGETS knn_api EXPORT apiexport )
|
||||
@@ -147,8 +147,8 @@ include(\"\${CMAKE_CURRENT_LIST_DIR}/columnar-targets.cmake\")" )
|
||||
install ( FILES "${CMAKE_CURRENT_BINARY_DIR}/columnar-config-version.cmake" DESTINATION "${API_CMAKE_DIR}" )
|
||||
|
||||
# finish configuration, as it is API_ONLY
|
||||
- return()
|
||||
-endif ()
|
||||
+ # return()
|
||||
+# endif ()
|
||||
|
||||
# here we came in case of full build (i.e. columnar and/or secondary and/or knn)
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index efedf74..effa1ec 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -4,7 +4,8 @@
|
||||
# Copyright (c) 2012 Louis Dionne
|
||||
# Copyright (c) 2021-2022 Manticore Software LTD
|
||||
#
|
||||
-cmake_minimum_required ( VERSION 3.17 )
|
||||
+# Fix build with CMake 4
|
||||
+cmake_minimum_required ( VERSION 3.5 )
|
||||
|
||||
foreach (policy CMP0091 CMP0022)
|
||||
if (POLICY ${policy})
|
||||
@@ -1,40 +1,25 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
bison,
|
||||
cmake,
|
||||
flex,
|
||||
pkg-config,
|
||||
boost,
|
||||
callPackage,
|
||||
cmake,
|
||||
croaring,
|
||||
fetchFromGitHub,
|
||||
flex,
|
||||
icu,
|
||||
lib,
|
||||
libstemmer,
|
||||
mariadb-connector-c,
|
||||
re2,
|
||||
nlohmann_json,
|
||||
testers,
|
||||
manticoresearch,
|
||||
mariadb-connector-c,
|
||||
nlohmann_json,
|
||||
pkg-config,
|
||||
re2,
|
||||
stdenv,
|
||||
testers,
|
||||
}:
|
||||
|
||||
let
|
||||
columnar = stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "columnar";
|
||||
version = "c21-s10"; # see NEED_COLUMNAR_API/NEED_SECONDARY_API in Manticore's cmake/GetColumnar.cmake
|
||||
src = fetchFromGitHub {
|
||||
owner = "manticoresoftware";
|
||||
repo = "columnar";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-TGFGFfoyHnPSr2U/9dpqFLUN3Dt2jDQrTF/xxDY4pdE=";
|
||||
};
|
||||
nativeBuildInputs = [ cmake ];
|
||||
cmakeFlags = [ "-DAPI_ONLY=ON" ];
|
||||
meta = {
|
||||
description = "Column-oriented storage and secondary indexing library";
|
||||
homepage = "https://github.com/manticoresoftware/columnar/";
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
});
|
||||
columnar = callPackage ./columnar.nix { };
|
||||
uni-algo = stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "uni-algo";
|
||||
version = "0.7.2";
|
||||
@@ -52,16 +37,60 @@ let
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
});
|
||||
cctz = stdenv.mkDerivation {
|
||||
pname = "manticore-cctz";
|
||||
version = "0-unstable-2024-05-08";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "manticoresoftware";
|
||||
repo = "cctz";
|
||||
rev = "cf11f758e2532161c9e21c3ec2461b0fafb15853";
|
||||
hash = "sha256-oXn6YowOg+9jaXXSX1fggkgE9o9xZ4hlmrpdpEHot68=";
|
||||
};
|
||||
|
||||
patches = [ ./cctz-cmake-policy.patch ];
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
cmakeBuildDir = "build_dir"; # Avoid conflicts with the pre-existing `BUILD` file on case-insensitive FS
|
||||
|
||||
meta = {
|
||||
description = "Library for translating between absolute and civil times using the rules of a time zone";
|
||||
homepage = "https://github.com/manticoresoftware/cctz";
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
};
|
||||
xxhash = stdenv.mkDerivation {
|
||||
pname = "manticore-xxhash";
|
||||
version = "0.8.2-unstable-2024-07-24";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "manticoresoftware";
|
||||
repo = "xxHash";
|
||||
rev = "72997b0070a031c063f86a308aec77ae742706d3";
|
||||
hash = "sha256-QAIxZeMiohm/BYyO0f70En6GOv7t3yLH2pJfkUek7Js=";
|
||||
};
|
||||
nativeBuildInputs = [ cmake ];
|
||||
meta = {
|
||||
description = "Extremely fast non-cryptographic hash algorithm";
|
||||
homepage = "https://github.com/manticoresoftware/xxhash";
|
||||
license = with lib.licenses; [
|
||||
bsd2
|
||||
gpl2
|
||||
];
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "manticoresearch";
|
||||
version = "6.2.12";
|
||||
version = "15.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "manticoresoftware";
|
||||
repo = "manticoresearch";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-UD/r7rlJ5mR3wg4doKT/nTwTWzlulngUjOPNEjmykB8=";
|
||||
hash = "sha256-ESiM2D11o1QnctDzL7WQ+usad7nvs0YSPOpZzSfYv4Y=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -73,41 +102,54 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
buildInputs = [
|
||||
boost
|
||||
columnar
|
||||
cctz
|
||||
columnar.dev
|
||||
croaring
|
||||
icu.dev
|
||||
libstemmer
|
||||
mariadb-connector-c
|
||||
nlohmann_json
|
||||
uni-algo
|
||||
re2
|
||||
xxhash
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
sed -i 's/set ( Boost_USE_STATIC_LIBS ON )/set ( Boost_USE_STATIC_LIBS OFF )/' src/CMakeLists.txt
|
||||
|
||||
# supply our own packages rather than letting manticore download dependencies during build
|
||||
sed -i 's/^with_get/with_menu/' CMakeLists.txt
|
||||
sed -i 's/get_dep \( nlohmann_json .* \)/find_package(nlohmann_json)/' CMakeLists.txt
|
||||
sed -i 's/get_dep \( uni-algo .* \)/find_package(uni-algo)/' CMakeLists.txt
|
||||
# Skip jieba, it requires a bunch of additional dependencies
|
||||
sed -i '/with_get ( jieba /d' CMakeLists.txt
|
||||
|
||||
# Fill in a version number for the VERNUMBERS macro
|
||||
sed -i 's/0\.0\.0/${finalAttrs.version}/' src/sphinxversion.h.in
|
||||
'';
|
||||
|
||||
cmakeFlags = [
|
||||
"-DWITH_GALERA=0"
|
||||
"-DWITH_ICU=1"
|
||||
# Supply our own packages rather than letting manticore download dependencies during build
|
||||
"-DWITH_ICU_FORCE_STATIC=OFF"
|
||||
"-DWITH_RE2_FORCE_STATIC=OFF"
|
||||
"-DWITH_STEMMER_FORCE_STATIC=OFF"
|
||||
"-DWITH_MYSQL=1"
|
||||
"-DMYSQL_INCLUDE_DIR=${mariadb-connector-c.dev}/include/mariadb"
|
||||
"-DMYSQL_LIB=${mariadb-connector-c.out}/lib/mariadb/libmysqlclient.a"
|
||||
"-DCONFDIR=${placeholder "out"}/etc"
|
||||
"-DLOGDIR=/var/lib/manticoresearch/log"
|
||||
"-DRUNDIR=/var/run/manticoresearch"
|
||||
"-DDISTR=nixpkgs"
|
||||
];
|
||||
|
||||
postFixup = ''
|
||||
mkdir -p $out/lib/systemd/system
|
||||
cp ${finalAttrs.src}/dist/deb/manticore.service.in $out/lib/systemd/system/manticore.service
|
||||
substituteInPlace $out/lib/systemd/system/manticore.service \
|
||||
--replace "@CMAKE_INSTALL_FULL_RUNSTATEDIR@" "/var/lib/manticore" \
|
||||
--replace "@CMAKE_INSTALL_FULL_BINDIR@" "$out/bin" \
|
||||
--replace "@CMAKE_INSTALL_FULL_SYSCONFDIR@" "$out/etc"
|
||||
--replace-fail "@CMAKE_INSTALL_FULL_RUNSTATEDIR@" "/var/lib/manticore" \
|
||||
--replace-fail "@CMAKE_INSTALL_FULL_BINDIR@" "$out/bin" \
|
||||
--replace-fail "@CMAKE_INSTALL_FULL_SYSCONFDIR@" "$out/etc"
|
||||
|
||||
mkdir $out/share/manticore/modules
|
||||
cp ${columnar}/share/manticore/modules/* $out/share/manticore/modules
|
||||
'';
|
||||
|
||||
passthru.tests.version = testers.testVersion {
|
||||
@@ -120,7 +162,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
description = "Easy to use open source fast database for search";
|
||||
homepage = "https://manticoresearch.com";
|
||||
changelog = "https://github.com/manticoresoftware/manticoresearch/releases/tag/${finalAttrs.version}";
|
||||
license = lib.licenses.gpl2;
|
||||
license = lib.licenses.gpl3Plus;
|
||||
mainProgram = "searchd";
|
||||
maintainers = [ lib.maintainers.jdelStrother ];
|
||||
platforms = lib.platforms.all;
|
||||
|
||||
@@ -5,16 +5,16 @@
|
||||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "mdbook-footnote";
|
||||
version = "0.1.1";
|
||||
version = "0.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "daviddrysdale";
|
||||
repo = "mdbook-footnote";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-WUMgm1hwsU9BeheLfb8Di0AfvVQ6j92kXxH2SyG3ses=";
|
||||
hash = "sha256-YFMo+gufUEvHRnA9I98fGRXHcQjSTHY7DSRo90wcSHk=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-3tuejWMZlEAOgnBKEqZP2a72a8QP1yamfE/g2BJDEbg=";
|
||||
cargoHash = "sha256-Gr/6Et+TlVBlDf++1z3YgzqRfIolHc5qT9BwtIkjnM4=";
|
||||
|
||||
meta = {
|
||||
description = "Preprocessor for mdbook to support the inclusion of automatically numbered footnotes";
|
||||
|
||||
@@ -73,6 +73,9 @@ stdenv.mkDerivation rec {
|
||||
--replace-fail "char buf[1024], buf2[1024];" "char buf[1024], buf2[1066];"
|
||||
'';
|
||||
|
||||
# fix build with gcc15
|
||||
env.NIX_CFLAGS_COMPILE = "-std=gnu17";
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook ];
|
||||
|
||||
postInstall = ''
|
||||
|
||||
@@ -66,13 +66,13 @@ let
|
||||
in
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "noctalia-shell";
|
||||
version = "3.7.5";
|
||||
version = "3.8.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "noctalia-dev";
|
||||
repo = "noctalia-shell";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-TBrsYS+n+8AsXRAP4wA3JNOdT604QmPo8yeSTT/p61I=";
|
||||
hash = "sha256-Bh4XcEyG6XRQugahL/2Vd42k/YeGK0f+yW3+Oc74Rp4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "protonup-rs";
|
||||
version = "0.9.2";
|
||||
version = "0.9.3";
|
||||
|
||||
src = fetchCrate {
|
||||
inherit (finalAttrs) pname version;
|
||||
hash = "sha256-mysYcBmXKkXz1vlhZv8okVnnD83h/QyGwT9ijluOgms=";
|
||||
hash = "sha256-GpKiecfEV66TGgU3f/WlQZZ4mVJD4+quZSb+45fsWpM=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-NiJwaD7lH2jnxfc/Hreo3bJ3LC+0UAOlsVMt1UYRcdY=";
|
||||
cargoHash = "sha256-15K6n7npZmbxDroIN09Tr5L8oTUJ0js9/cfiPQDeTTQ=";
|
||||
|
||||
checkFlags = [
|
||||
# Requires internet access
|
||||
|
||||
@@ -7,15 +7,15 @@
|
||||
makeWrapper,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "purpur";
|
||||
version = "1.21.3r2358";
|
||||
version = "1.21.10r2535";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://api.purpurmc.org/v2/purpur/${
|
||||
builtins.replaceStrings [ "r" ] [ "/" ] version
|
||||
builtins.replaceStrings [ "r" ] [ "/" ] finalAttrs.version
|
||||
}/download";
|
||||
sha256 = "sha256-RFrP7q1jgKUztF518HA6Jmj1qXa51l1HegMH1wMr5W4=";
|
||||
sha256 = "sha256-QVl4Nnewi2OVeC5hUMsoZGxw7ZiLeUjAngGqWl6Q9Ug=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
@@ -49,4 +49,4 @@ stdenv.mkDerivation rec {
|
||||
maintainers = [ ];
|
||||
mainProgram = "minecraft-server";
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -5,19 +5,20 @@
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
canfigger,
|
||||
ncurses,
|
||||
gettext,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "rmw";
|
||||
version = "0.9.1";
|
||||
version = "0.9.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "theimpossibleastronaut";
|
||||
repo = "rmw";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-rfJdJHSkusZj/PN74KgV5i36YC0YRZmIfRdvkUNoKEM=";
|
||||
hash = "sha256-/bE9fFjn3mPfUbtsB6bXfQAxUtbtuZiT4pevi5RCQA4=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
@@ -28,15 +29,11 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
canfigger
|
||||
ncurses
|
||||
]
|
||||
++ lib.optional stdenv.hostPlatform.isDarwin gettext;
|
||||
|
||||
# The subproject "canfigger" has asan and ubsan enabled by default, disable it here
|
||||
mesonFlags = [
|
||||
"-Dcanfigger:b_sanitize=none"
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Trashcan/ recycle bin utility for the command line";
|
||||
homepage = "https://github.com/theimpossibleastronaut/rmw";
|
||||
|
||||
@@ -27,13 +27,13 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "ruffle";
|
||||
version = "0.2.0-nightly-2025-12-26";
|
||||
version = "0.2.0-nightly-2025-12-31";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ruffle-rs";
|
||||
repo = "ruffle";
|
||||
tag = lib.strings.removePrefix "0.2.0-" finalAttrs.version;
|
||||
hash = "sha256-z0nvghGEljbWZtKHY9fQlZxVcshcDgSR28wK/XOeZag=";
|
||||
hash = "sha256-mFxwoaIV5TLejQr1R6RNXSbLy/6vkRT17q3zN/UIDrk=";
|
||||
};
|
||||
|
||||
postPatch =
|
||||
@@ -49,7 +49,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
"OpenH264Version(${major}, ${minor}, ${patch})"
|
||||
'';
|
||||
|
||||
cargoHash = "sha256-9kypz9Qm/gc1jCMTvbRnHmfT4um6HgR8c94wDQQf87o=";
|
||||
cargoHash = "sha256-cgeXV72+XVhCIEdGQgNxNoCetYcAD6r7U8FkUhl3VZ8=";
|
||||
cargoBuildFlags = lib.optional withRuffleTools "--workspace";
|
||||
|
||||
env =
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{
|
||||
buildNpmPackage,
|
||||
fetchFromGitHub,
|
||||
nodejs_22,
|
||||
lib,
|
||||
}:
|
||||
buildNpmPackage (finalAttrs: {
|
||||
@@ -17,6 +18,9 @@ buildNpmPackage (finalAttrs: {
|
||||
|
||||
dontNpmBuild = true;
|
||||
|
||||
# https://github.com/NixOS/nixpkgs/issues/474535
|
||||
nodejs = nodejs_22;
|
||||
|
||||
# These dirs are not installed automatically.
|
||||
# And if they were not in place, the app would try to create them at runtime, which is of course impossible to achieve.
|
||||
postInstall = ''
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
lib,
|
||||
buildNpmPackage,
|
||||
fetchFromGitHub,
|
||||
|
||||
pnpm_10,
|
||||
pnpm ? pnpm_10,
|
||||
fetchPnpmDeps,
|
||||
pnpmConfigHook,
|
||||
nix-update-script,
|
||||
nodejs,
|
||||
}:
|
||||
|
||||
buildNpmPackage (finalAttrs: {
|
||||
pname = "sub-store-frontend";
|
||||
version = "2.15.85";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sub-store-org";
|
||||
repo = "Sub-Store-Front-End";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-K7tAqbM7cQpmZmRQFwJhpiesUoPzvXEKu5q0pYsj+ZA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
nodejs
|
||||
pnpm
|
||||
];
|
||||
|
||||
npmDeps = null;
|
||||
pnpmDeps = fetchPnpmDeps {
|
||||
inherit (finalAttrs) pname version src;
|
||||
inherit pnpm;
|
||||
fetcherVersion = 3;
|
||||
hash = "sha256-HEeNYLKvzO/RQWYnm5gqRjTrXiiCxKUxf3bcRvz+O4k=";
|
||||
};
|
||||
|
||||
npmConfigHook = pnpmConfigHook;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
cp -r dist $out
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "Sub-Store Progressive Web App";
|
||||
homepage = "https://github.com/sub-store-org/Sub-Store-Front-End";
|
||||
changelog = "https://github.com/sub-store-org/Sub-Store-Front-End/releases/tag/${finalAttrs.version}";
|
||||
license = lib.licenses.gpl3Only;
|
||||
maintainers = with lib.maintainers; [ moraxyc ];
|
||||
platforms = nodejs.meta.platforms;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,72 @@
|
||||
{
|
||||
lib,
|
||||
buildNpmPackage,
|
||||
fetchFromGitHub,
|
||||
|
||||
pnpm_10,
|
||||
pnpm ? pnpm_10,
|
||||
fetchPnpmDeps,
|
||||
pnpmConfigHook,
|
||||
makeBinaryWrapper,
|
||||
nix-update-script,
|
||||
|
||||
nodejs,
|
||||
}:
|
||||
|
||||
buildNpmPackage (finalAttrs: {
|
||||
pname = "sub-store";
|
||||
version = "2.20.61";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sub-store-org";
|
||||
repo = "Sub-Store";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-6NHPVCIlModWXzKOJnPwA41cHrNWy6yXUEwoKpbwpmw=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/backend";
|
||||
|
||||
nativeBuildInputs = [
|
||||
makeBinaryWrapper
|
||||
pnpm
|
||||
];
|
||||
|
||||
npmDeps = null;
|
||||
pnpmDeps = fetchPnpmDeps {
|
||||
inherit (finalAttrs)
|
||||
pname
|
||||
version
|
||||
src
|
||||
sourceRoot
|
||||
;
|
||||
inherit pnpm;
|
||||
fetcherVersion = 3;
|
||||
hash = "sha256-VsK6qvBeOF2smXRFmMk4gWxQgAD1GG/ExvZdIERdz9g=";
|
||||
};
|
||||
|
||||
npmConfigHook = pnpmConfigHook;
|
||||
npmBuildScript = "bundle:esbuild";
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/share
|
||||
cp -r dist $out/share/sub-store
|
||||
makeWrapper ${lib.getExe nodejs} $out/bin/sub-store \
|
||||
--add-flags "$out/share/sub-store/sub-store.bundle.js"
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "Advanced Subscription Manager for QX, Loon, Surge, Stash, Egern and Shadowrocket";
|
||||
homepage = "https://github.com/sub-store-org/Sub-Store";
|
||||
changelog = "https://github.com/sub-store-org/Sub-Store/releases/tag/${finalAttrs.version}";
|
||||
license = lib.licenses.agpl3Only;
|
||||
maintainers = with lib.maintainers; [ moraxyc ];
|
||||
mainProgram = "sub-store";
|
||||
platforms = nodejs.meta.platforms;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,26 @@
|
||||
From f523f6a4272910417da6d8f02597a560a9c594e4 Mon Sep 17 00:00:00 2001
|
||||
From: Ethan Carter Edwards <ethan@ethancedwards.com>
|
||||
Date: Wed, 31 Dec 2025 21:17:39 -0500
|
||||
Subject: [PATCH] fix compilation for gcc 15
|
||||
|
||||
Link: https://github.com/NixOS/nixpkgs/issues/475574
|
||||
|
||||
Signed-off-by: Ethan Carter Edwards <ethan@ethancedwards.com>
|
||||
---
|
||||
libraries/lib-utility/MemoryX.h | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/libraries/lib-utility/MemoryX.h b/libraries/lib-utility/MemoryX.h
|
||||
index 2c96af17b..58bf67127 100644
|
||||
--- a/libraries/lib-utility/MemoryX.h
|
||||
+++ b/libraries/lib-utility/MemoryX.h
|
||||
@@ -5,6 +5,7 @@
|
||||
#include <iterator>
|
||||
#include <memory>
|
||||
#include <new> // align_val_t and hardware_destructive_interference_size
|
||||
#include <cstdlib> // Needed for free.
|
||||
+#include <cstdint>
|
||||
#ifndef safenew
|
||||
#define safenew new
|
||||
--
|
||||
2.47.3
|
||||
@@ -61,6 +61,12 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
hash = "sha256-2gndOwgEJK2zDSbjcZigbhEpGv301/ygrf+EQhKp8PI=";
|
||||
};
|
||||
|
||||
# https://codeberg.org/tenacityteam/tenacity/pulls/696
|
||||
# can be removed at next version bump
|
||||
patches = [
|
||||
./cstdlib.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# GIT_DESCRIBE is used for the version string and can't be passed in
|
||||
# as an option, so we substitute it instead.
|
||||
|
||||
@@ -11,6 +11,8 @@ stdenv.mkDerivation rec {
|
||||
pname = "unrtf";
|
||||
version = "0.21.10";
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = "-std=gnu17";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://ftp.gnu.org/gnu/${pname}/${pname}-${version}.tar.gz";
|
||||
sha256 = "1bil6z4niydz9gqm2j861dkxmqnpc8m7hvidsjbzz7x63whj17xl";
|
||||
|
||||
@@ -1,283 +0,0 @@
|
||||
Index: usb-modeswitch-2.6.0/Makefile
|
||||
===================================================================
|
||||
--- usb-modeswitch-2.6.0.orig/Makefile
|
||||
+++ usb-modeswitch-2.6.0/Makefile
|
||||
@@ -5,17 +5,24 @@ CFLAGS += -Wall -Wno-deprecated-dec
|
||||
LIBS = `pkg-config --libs --cflags libusb-1.0`
|
||||
RM = /bin/rm -f
|
||||
OBJS = usb_modeswitch.c
|
||||
-PREFIX = $(DESTDIR)/usr
|
||||
-ETCDIR = $(DESTDIR)/etc
|
||||
+PREFIX = /usr/local
|
||||
+ETCDIR = $(PREFIX)/etc
|
||||
SYSDIR = $(ETCDIR)/systemd/system
|
||||
UPSDIR = $(ETCDIR)/init
|
||||
-UDEVDIR = $(DESTDIR)/lib/udev
|
||||
+UDEVDIR = $(PREFIX)/lib/udev
|
||||
SBINDIR = $(PREFIX)/sbin
|
||||
MANDIR = $(PREFIX)/share/man/man1
|
||||
|
||||
+USE_UPSTART=$(shell if command -v initctl > /dev/null; then echo "true"; fi)
|
||||
+USE_SYSTEMD=$(shell if command -v systemctl > /dev/null; then echo "true"; fi)
|
||||
+
|
||||
.PHONY: clean install install-common uninstall \
|
||||
dispatcher-script dispatcher-dynlink dispatcher-statlink \
|
||||
- install-script install-dynlink install-statlink
|
||||
+ install-script install-dynlink install-statlink \
|
||||
+ install-upstart install-systemd \
|
||||
+ configure-dispatcher configure-script \
|
||||
+ configure-upstart configure-systemd \
|
||||
+ configure
|
||||
|
||||
all: all-with-script-dispatcher
|
||||
|
||||
@@ -28,7 +35,25 @@ all-with-statlink-dispatcher: $(PROG) di
|
||||
$(PROG): $(OBJS) usb_modeswitch.h
|
||||
$(CC) -o $(PROG) $(OBJS) $(CFLAGS) $(LIBS) $(LDFLAGS)
|
||||
|
||||
-dispatcher-script: usb_modeswitch_dispatcher.tcl
|
||||
+configure-dispatcher:
|
||||
+ sed -i \
|
||||
+ -e 's,^\(set setup(sbindir) \).*$$,\1$(SBINDIR),' \
|
||||
+ -e 's,^\(set setup(etcdir) \).*$$,\1$(ETCDIR),' \
|
||||
+ usb_modeswitch_dispatcher.tcl
|
||||
+
|
||||
+configure-script:
|
||||
+ sed -i -e 's,^\(SBINDIR=\).*$$,\1$(SBINDIR),' usb_modeswitch.sh
|
||||
+
|
||||
+configure-systemd:
|
||||
+ sed -i -e 's,@sbindir@,$(SBINDIR),' usb_modeswitch@.service
|
||||
+
|
||||
+configure-upstart:
|
||||
+ sed -i -e 's,@sbindir@,$(SBINDIR),' usb-modeswitch-upstart.conf
|
||||
+
|
||||
+configure: configure-dispatcher configure-script \
|
||||
+ configure-systemd configure-upstart
|
||||
+
|
||||
+dispatcher-script: configure-dispatcher usb_modeswitch_dispatcher.tcl
|
||||
DISPATCH=dispatcher-script
|
||||
cp -f usb_modeswitch_dispatcher.tcl usb_modeswitch_dispatcher
|
||||
|
||||
@@ -53,16 +78,28 @@ distclean: clean
|
||||
# If the systemd folder is present, install the service for starting the dispatcher
|
||||
# If not, use the dispatcher directly from the udev rule as in previous versions
|
||||
|
||||
-install-common: $(PROG) $(DISPATCH)
|
||||
- install -D --mode=755 usb_modeswitch $(SBINDIR)/usb_modeswitch
|
||||
- install -D --mode=755 usb_modeswitch.sh $(UDEVDIR)/usb_modeswitch
|
||||
- install -D --mode=644 usb_modeswitch.conf $(ETCDIR)/usb_modeswitch.conf
|
||||
- install -D --mode=644 usb_modeswitch.1 $(MANDIR)/usb_modeswitch.1
|
||||
- install -D --mode=644 usb_modeswitch_dispatcher.1 $(MANDIR)/usb_modeswitch_dispatcher.1
|
||||
- install -D --mode=755 usb_modeswitch_dispatcher $(SBINDIR)/usb_modeswitch_dispatcher
|
||||
+install-common: $(PROG) configure $(DISPATCH)
|
||||
+ install -D --mode=755 usb_modeswitch $(DESTDIR)$(SBINDIR)/usb_modeswitch
|
||||
+ install -D --mode=755 usb_modeswitch.sh $(DESTDIR)$(UDEVDIR)/usb_modeswitch
|
||||
+ install -D --mode=644 usb_modeswitch.conf $(DESTDIR)$(ETCDIR)/usb_modeswitch.conf
|
||||
+ install -D --mode=644 usb_modeswitch.1 $(DESTDIR)$(MANDIR)/usb_modeswitch.1
|
||||
+ install -D --mode=644 usb_modeswitch_dispatcher.1 $(DESTDIR)$(MANDIR)/usb_modeswitch_dispatcher.1
|
||||
+ install -D --mode=755 usb_modeswitch_dispatcher $(DESTDIR)$(SBINDIR)/usb_modeswitch_dispatcher
|
||||
install -d $(DESTDIR)/var/lib/usb_modeswitch
|
||||
- test -d $(UPSDIR) -a -e /sbin/initctl && install --mode=644 usb-modeswitch-upstart.conf $(UPSDIR) || test 1
|
||||
- test -d $(SYSDIR) -a \( -e /usr/bin/systemctl -o -e /bin/systemctl \) && install --mode=644 usb_modeswitch@.service $(SYSDIR) || test 1
|
||||
+
|
||||
+install-upstart:
|
||||
+ install -D --mode=644 usb-modeswitch-upstart.conf $(DESTDIR)$(UPSDIR)/usb-modeswitch-upstart.conf
|
||||
+
|
||||
+install-systemd:
|
||||
+ install -D --mode=644 usb_modeswitch@.service $(DESTDIR)$(SYSDIR)/usb_modeswitch@.service
|
||||
+
|
||||
+ifeq ($(USE_UPSTART),true)
|
||||
+install-common: install-upstart
|
||||
+endif
|
||||
+
|
||||
+ifeq ($(USE_SYSTEMD),true)
|
||||
+install-common: install-systemd
|
||||
+endif
|
||||
|
||||
install: install-script
|
||||
|
||||
@@ -73,10 +110,10 @@ install-dynlink: dispatcher-dynlink inst
|
||||
install-statlink: dispatcher-statlink install-common
|
||||
|
||||
uninstall:
|
||||
- $(RM) $(SBINDIR)/usb_modeswitch
|
||||
- $(RM) $(SBINDIR)/usb_modeswitch_dispatcher
|
||||
- $(RM) $(UDEVDIR)/usb_modeswitch
|
||||
- $(RM) $(ETCDIR)/usb_modeswitch.conf
|
||||
- $(RM) $(MANDIR)/usb_modeswitch.1
|
||||
+ $(RM) $(DESTDIR)$(SBINDIR)/usb_modeswitch
|
||||
+ $(RM) $(DESTDIR)$(SBINDIR)/usb_modeswitch_dispatcher
|
||||
+ $(RM) $(DESTDIR)$(UDEVDIR)/usb_modeswitch
|
||||
+ $(RM) $(DESTDIR)$(ETCDIR)/usb_modeswitch.conf
|
||||
+ $(RM) $(DESTDIR)$(MANDIR)/usb_modeswitch.1
|
||||
$(RM) -R $(DESTDIR)/var/lib/usb_modeswitch
|
||||
- $(RM) $(SYSDIR)/usb_modeswitch@.service
|
||||
+ $(RM) $(DESTDIR)$(SYSDIR)/usb_modeswitch@.service
|
||||
Index: usb-modeswitch-2.6.0/usb-modeswitch-upstart.conf
|
||||
===================================================================
|
||||
--- usb-modeswitch-2.6.0.orig/usb-modeswitch-upstart.conf
|
||||
+++ usb-modeswitch-2.6.0/usb-modeswitch-upstart.conf
|
||||
@@ -1,5 +1,5 @@
|
||||
start on usb-modeswitch-upstart
|
||||
task
|
||||
script
|
||||
- exec /usr/sbin/usb_modeswitch_dispatcher --switch-mode $UMS_PARAM
|
||||
+ exec @sbindir@/usb_modeswitch_dispatcher --switch-mode $UMS_PARAM
|
||||
end script
|
||||
Index: usb-modeswitch-2.6.0/usb_modeswitch.sh
|
||||
===================================================================
|
||||
--- usb-modeswitch-2.6.0.orig/usb_modeswitch.sh
|
||||
+++ usb-modeswitch-2.6.0/usb_modeswitch.sh
|
||||
@@ -1,5 +1,9 @@
|
||||
#!/bin/sh
|
||||
# part of usb_modeswitch 2.6.0
|
||||
+
|
||||
+# Compile time configuration, injected by the Makefile
|
||||
+SBINDIR=/usr/sbin
|
||||
+
|
||||
device_in()
|
||||
{
|
||||
if [ ! -e /var/lib/usb_modeswitch/$1 ]; then
|
||||
@@ -37,7 +41,7 @@ if [ $(expr "$1" : "--.*") ]; then
|
||||
v_id=$3
|
||||
fi
|
||||
fi
|
||||
-PATH=/sbin:/usr/sbin:$PATH
|
||||
+
|
||||
case "$1" in
|
||||
--driver-bind)
|
||||
# driver binding code removed
|
||||
@@ -46,9 +50,7 @@ case "$1" in
|
||||
--symlink-name)
|
||||
device_in "link_list" $v_id $p_id
|
||||
if [ "$?" = "1" ]; then
|
||||
- if [ -e "/usr/sbin/usb_modeswitch_dispatcher" ]; then
|
||||
- exec usb_modeswitch_dispatcher $1 $2 2>>/dev/null
|
||||
- fi
|
||||
+ exec $SBINDIR/usb_modeswitch_dispatcher $1 $2 2>>/dev/null
|
||||
fi
|
||||
exit 0
|
||||
;;
|
||||
@@ -61,15 +63,13 @@ if [ "$p2" = "" -a "$p1" != "" ]; then
|
||||
p2=$p1
|
||||
fi
|
||||
|
||||
-PATH=/bin:/sbin:/usr/bin:/usr/sbin
|
||||
-init_path=`readlink -f /sbin/init`
|
||||
-if [ `basename $init_path` = "systemd" ]; then
|
||||
+if command -v systemctl > /dev/null; then
|
||||
systemctl --no-block restart usb_modeswitch@$p2.service
|
||||
-elif [ -e "/etc/init/usb-modeswitch-upstart.conf" ]; then
|
||||
+elif command -v initctl > /dev/null; then
|
||||
initctl emit --no-wait usb-modeswitch-upstart UMS_PARAM=$p2
|
||||
else
|
||||
# only old distros, new udev will kill all subprocesses
|
||||
exec 1<&- 2<&- 5<&- 7<&-
|
||||
- exec usb_modeswitch_dispatcher --switch-mode $p2 &
|
||||
+ exec $SBINDIR/usb_modeswitch_dispatcher --switch-mode $p2 &
|
||||
fi
|
||||
exit 0
|
||||
Index: usb-modeswitch-2.6.0/usb_modeswitch@.service
|
||||
===================================================================
|
||||
--- usb-modeswitch-2.6.0.orig/usb_modeswitch@.service
|
||||
+++ usb-modeswitch-2.6.0/usb_modeswitch@.service
|
||||
@@ -3,6 +3,6 @@ Description=USB_ModeSwitch_%i
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
-ExecStart=/usr/sbin/usb_modeswitch_dispatcher --switch-mode %i
|
||||
+ExecStart=@sbindir@/usb_modeswitch_dispatcher --switch-mode %i
|
||||
#ExecStart=/bin/echo %i
|
||||
|
||||
Index: usb-modeswitch-2.6.0/usb_modeswitch_dispatcher.tcl
|
||||
===================================================================
|
||||
--- usb-modeswitch-2.6.0.orig/usb_modeswitch_dispatcher.tcl
|
||||
+++ usb-modeswitch-2.6.0/usb_modeswitch_dispatcher.tcl
|
||||
@@ -12,6 +12,16 @@
|
||||
# Part of usb-modeswitch-2.6.0 package
|
||||
# (C) Josua Dietze 2009-2019
|
||||
|
||||
+# Compile-time configuration, injected by the Makefile.
|
||||
+set setup(sbindir) /usr/sbin
|
||||
+set setup(etcdir) /etc
|
||||
+
|
||||
+# External dependency default location
|
||||
+set setup(dbdir) /usr/share/usb_modeswitch
|
||||
+
|
||||
+# Derived configuration
|
||||
+set setup(dbdir_etc) $setup(etcdir)/usb_modeswitch.d
|
||||
+
|
||||
set arg0 [lindex $argv 0]
|
||||
if [regexp {\.tcl$} $arg0] {
|
||||
if [file exists $arg0] {
|
||||
@@ -115,10 +125,8 @@ if {![regexp {(.*?):.*$} $arg1 d device]
|
||||
}
|
||||
}
|
||||
|
||||
-set setup(dbdir) /usr/share/usb_modeswitch
|
||||
-set setup(dbdir_etc) /etc/usb_modeswitch.d
|
||||
if {![file exists $setup(dbdir)] && ![file exists $setup(dbdir_etc)]} {
|
||||
- Log "\nError: no config database found in /usr/share or /etc. Exit"
|
||||
+ Log "\nError: no config database found in $setup(dbdir) or $setup(dbdir_etc). Exit"
|
||||
SafeExit
|
||||
}
|
||||
|
||||
@@ -285,7 +293,7 @@ if {$config(NoMBIMCheck)==0 && $usb(bNum
|
||||
if [CheckMBIM] {
|
||||
Log " driver for MBIM devices is available"
|
||||
Log "Find MBIM configuration number ..."
|
||||
- if [catch {set cfgno [exec /usr/sbin/usb_modeswitch -j -Q $busParam $devParam -v $usb(idVendor) -p $usb(idProduct)]} err] {
|
||||
+ if [catch {set cfgno [exec $setup(sbindir)/usb_modeswitch -j -Q $busParam $devParam -v $usb(idVendor) -p $usb(idProduct)]} err] {
|
||||
Log "Error when trying to find MBIM configuration, switch to legacy modem mode"
|
||||
} else {
|
||||
set cfgno [string trim $cfgno]
|
||||
@@ -321,7 +329,7 @@ if {$report == ""} {
|
||||
# Now we are actually switching
|
||||
if $flags(logging) {
|
||||
Log "Command line:\nusb_modeswitch -W -D $configParam $busParam $devParam -v $usb(idVendor) -p $usb(idProduct) -f \$flags(config)"
|
||||
- catch {set report [exec /usr/sbin/usb_modeswitch -W -D $configParam $busParam $devParam -v $usb(idVendor) -p $usb(idProduct) -f "$flags(config)" 2>@1]} report
|
||||
+ catch {set report [exec $setup(sbindir)/usb_modeswitch -W -D $configParam $busParam $devParam -v $usb(idVendor) -p $usb(idProduct) -f "$flags(config)" 2>@1]} report
|
||||
Log "\nVerbose debug output of usb_modeswitch and libusb follows"
|
||||
Log "(Note that some USB errors are to be expected in the process)"
|
||||
Log "--------------------------------"
|
||||
@@ -329,7 +337,7 @@ if {$report == ""} {
|
||||
Log "--------------------------------"
|
||||
Log "(end of usb_modeswitch output)\n"
|
||||
} else {
|
||||
- catch {set report [exec /usr/sbin/usb_modeswitch -Q -D $configParam $busParam $devParam -v $usb(idVendor) -p $usb(idProduct) -f "$flags(config)" 2>@1]} report
|
||||
+ catch {set report [exec $setup(sbindir)/usb_modeswitch -Q -D $configParam $busParam $devParam -v $usb(idVendor) -p $usb(idProduct) -f "$flags(config)" 2>@1]} report
|
||||
}
|
||||
}
|
||||
|
||||
@@ -522,12 +530,12 @@ return 1
|
||||
|
||||
proc {ParseGlobalConfig} {path} {
|
||||
|
||||
-global flags
|
||||
+global flags setup
|
||||
set configFile ""
|
||||
if [string length $path] {
|
||||
set places [list $path]
|
||||
} else {
|
||||
- set places [list /etc/usb_modeswitch.conf /etc/sysconfig/usb_modeswitch /etc/default/usb_modeswitch]
|
||||
+ set places [list $setup(etcdir)/usb_modeswitch.conf $setup(etcdir)/sysconfig/usb_modeswitch $setup(etcdir)/default/usb_modeswitch]
|
||||
}
|
||||
foreach cfg $places {
|
||||
if [file exists $cfg] {
|
||||
@@ -923,10 +931,12 @@ proc {SysLog} {msg} {
|
||||
|
||||
global flags
|
||||
if {![info exists flags(logger)]} {
|
||||
- set flags(logger) ""
|
||||
- foreach fn {/bin/logger /usr/bin/logger} {
|
||||
- if [file exists $fn] {
|
||||
- set flags(logger) $fn
|
||||
+ set flags(logger) [exec sh -c "command -v logger || true"]
|
||||
+ if {$flags(logger) == ""} {
|
||||
+ foreach fn {/bin/logger /usr/bin/logger} {
|
||||
+ if [file exists $fn] {
|
||||
+ set flags(logger) $fn
|
||||
+ }
|
||||
}
|
||||
}
|
||||
Log "Logger is $flags(logger)"
|
||||
@@ -11,19 +11,16 @@
|
||||
bash,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "usb-modeswitch";
|
||||
version = "2.6.0";
|
||||
version = "2.6.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.draisberghof.de/usb_modeswitch/${pname}-${version}.tar.bz2";
|
||||
sha256 = "18wbbxc5cfsmikba0msdvd5qlaga27b32nhrzicyd9mdddp265f2";
|
||||
url = "http://www.draisberghof.de/usb_modeswitch/usb-modeswitch-${finalAttrs.version}.tar.bz2";
|
||||
hash = "sha256-96vTN3hKnRvTnLilh1GK/28qQ9kWFF6v2Asbi3FG22Y=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./configurable-usb-modeswitch.patch
|
||||
./pkg-config.patch
|
||||
];
|
||||
patches = [ ./pkg-config.patch ];
|
||||
|
||||
# Remove attempts to write to /etc and /var/lib.
|
||||
postPatch = ''
|
||||
@@ -57,6 +54,7 @@ stdenv.mkDerivation rec {
|
||||
libusb1
|
||||
tcl
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
makeWrapper
|
||||
@@ -72,4 +70,4 @@ stdenv.mkDerivation rec {
|
||||
platforms = lib.platforms.linux;
|
||||
mainProgram = "usb_modeswitch";
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -29,13 +29,13 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "uwsm";
|
||||
version = "0.25.3";
|
||||
version = "0.26.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Vladimir-csp";
|
||||
repo = "uwsm";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-aWVAikQeAxt+Ej1QPhkW9x4zi4S/v+U2XaMYMfRhL8Y=";
|
||||
hash = "sha256-Com3Q6/xPM6fDW0rNP8QQpn8A/bUSC7cLs3xwRiTGDs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -21,6 +21,8 @@ rustPlatform.buildRustPackage (
|
||||
patches = [ ./web-ui-package-json.patch ];
|
||||
|
||||
npmDepsHash = "sha256-jgsNF93DkEVgPGzdi192HKoSHPYhdrtog28jZvOLK6E=";
|
||||
# Fix peer dependency conflicts with ESLint 9.
|
||||
npmFlags = [ "--legacy-peer-deps" ];
|
||||
|
||||
nativeBuildInputs = [ openapi-generator-cli ];
|
||||
|
||||
|
||||
@@ -1,70 +1,62 @@
|
||||
{
|
||||
lib,
|
||||
buildGoModule,
|
||||
fetchzip,
|
||||
testers,
|
||||
wireguard-go,
|
||||
fetchgit,
|
||||
versionCheckHook,
|
||||
}:
|
||||
|
||||
buildGoModule (
|
||||
finalAttrs:
|
||||
let
|
||||
version = "0.0.20250522";
|
||||
in
|
||||
{
|
||||
pname = "wireguard-go";
|
||||
inherit version;
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "wireguard-go";
|
||||
version = "0.0.20250522";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://git.zx2c4.com/wireguard-go/snapshot/wireguard-go-${version}.tar.xz";
|
||||
hash = "sha256-GRr8NKKb4SHd0WxmNL84eiofFHcauDDmSyNNrXermcA=";
|
||||
};
|
||||
src = fetchgit {
|
||||
url = "https://git.zx2c4.com/wireguard-go";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-GRr8NKKb4SHd0WxmNL84eiofFHcauDDmSyNNrXermcA=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
# Skip formatting tests
|
||||
rm -f format_test.go
|
||||
'';
|
||||
postPatch = ''
|
||||
# Skip formatting tests
|
||||
rm -f format_test.go
|
||||
'';
|
||||
|
||||
vendorHash = "sha256-sCajxTV26jjlmgmbV4GG6hg9NkLGS773ZbFyKucvuBE=";
|
||||
vendorHash = "sha256-sCajxTV26jjlmgmbV4GG6hg9NkLGS773ZbFyKucvuBE=";
|
||||
|
||||
subPackages = [ "." ];
|
||||
subPackages = [ "." ];
|
||||
|
||||
ldflags = [ "-s" ];
|
||||
ldflags = [ "-s" ];
|
||||
|
||||
# No tests besides the formatting one are in root.
|
||||
# We can't override subPackages per-phase (and we don't
|
||||
# want to needlessly build packages that have build
|
||||
# constraints), so just use the upstream Makefile (that
|
||||
# runs `go test ./...`) to actually run the tests.
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
export GOFLAGS=''${GOFLAGS//-trimpath/}
|
||||
make test
|
||||
runHook postCheck
|
||||
'';
|
||||
# No tests besides the formatting one are in root.
|
||||
# We can't override subPackages per-phase (and we don't
|
||||
# want to needlessly build packages that have build
|
||||
# constraints), so just use the upstream Makefile (that
|
||||
# runs `go test ./...`) to actually run the tests.
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
export GOFLAGS=''${GOFLAGS//-trimpath/}
|
||||
make test
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
# Tests require networking.
|
||||
__darwinAllowLocalNetworking = finalAttrs.doCheck;
|
||||
# Tests require networking.
|
||||
__darwinAllowLocalNetworking = finalAttrs.doCheck;
|
||||
|
||||
postInstall = ''
|
||||
mv $out/bin/wireguard $out/bin/wireguard-go
|
||||
'';
|
||||
postInstall = ''
|
||||
mv $out/bin/wireguard $out/bin/wireguard-go
|
||||
'';
|
||||
|
||||
passthru.tests.version = testers.testVersion {
|
||||
package = wireguard-go;
|
||||
version = "v${version}";
|
||||
};
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
doInstallCheck = true;
|
||||
|
||||
meta = {
|
||||
description = "Userspace Go implementation of WireGuard";
|
||||
homepage = "https://git.zx2c4.com/wireguard-go/about/";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [
|
||||
kirelagin
|
||||
winter
|
||||
zx2c4
|
||||
];
|
||||
mainProgram = "wireguard-go";
|
||||
};
|
||||
}
|
||||
)
|
||||
meta = {
|
||||
description = "Userspace Go implementation of WireGuard";
|
||||
homepage = "https://git.zx2c4.com/wireguard-go/about/";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [
|
||||
kirelagin
|
||||
winter
|
||||
zx2c4
|
||||
];
|
||||
mainProgram = "wireguard-go";
|
||||
};
|
||||
})
|
||||
|
||||
@@ -15,6 +15,9 @@
|
||||
pango,
|
||||
cairo,
|
||||
pixman,
|
||||
librsvg,
|
||||
gdk-pixbuf,
|
||||
adwaita-icon-theme,
|
||||
protobuf,
|
||||
perl,
|
||||
makeWrapper,
|
||||
@@ -23,6 +26,7 @@
|
||||
lld,
|
||||
wasm-pack,
|
||||
wasm-bindgen-cli_0_2_100,
|
||||
wrapGAppsHook3,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
@@ -57,6 +61,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
lld
|
||||
wasm-pack
|
||||
wasm-bindgen-cli_0_2_100
|
||||
wrapGAppsHook3
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
@@ -66,6 +71,9 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pango
|
||||
cairo
|
||||
pixman
|
||||
librsvg
|
||||
gdk-pixbuf
|
||||
adwaita-icon-theme
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isLinux [
|
||||
webkitgtk_4_1
|
||||
@@ -76,11 +84,16 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
env.NPM_CONFIG_IGNORE_SCRIPTS = "true";
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace package.json \
|
||||
--replace-fail '"version": "0.0.0"' '"version": "${finalAttrs.version}"'
|
||||
|
||||
substituteInPlace src-tauri/tauri.conf.json \
|
||||
--replace-fail '"0.0.0"' '"${finalAttrs.version}"'
|
||||
|
||||
substituteInPlace src-tauri/tauri.commercial.conf.json \
|
||||
--replace-fail '"createUpdaterArtifacts": "v1Compatible"' '"createUpdaterArtifacts": false' \
|
||||
--replace-fail '"https://update.yaak.app/check/{{target}}/{{arch}}/{{current_version}}"' '"https://non.existent.domain"'
|
||||
|
||||
substituteInPlace package.json \
|
||||
--replace-fail '"bootstrap:vendor-node": "node scripts/vendor-node.cjs",' "" \
|
||||
--replace-fail '"bootstrap:vendor-protoc": "node scripts/vendor-protoc.cjs",' ""
|
||||
@@ -128,7 +141,8 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
postFixup = lib.optionalString stdenv.hostPlatform.isLinux ''
|
||||
wrapProgram $out/bin/yaak-app \
|
||||
--inherit-argv0 \
|
||||
--set-default WEBKIT_DISABLE_DMABUF_RENDERER 1
|
||||
--set-default WEBKIT_DISABLE_DMABUF_RENDERER 1 \
|
||||
--set-default WEBKIT_DISABLE_COMPOSITING_MODE 1
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
@@ -8,16 +8,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "zvm";
|
||||
version = "0.8.10";
|
||||
version = "0.8.11";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tristanisham";
|
||||
repo = "zvm";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-n6V6fMfE7yBSta+RLkQbTFjQUOs4VuonEu6ecWQIFUc=";
|
||||
hash = "sha256-RMXF69zqqNK3tifbeDM7dxkiHMws7n+PeeHvCUK7/OU=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-yk1n0mW4WIKHTg9xgr+1IKbUpZWIaBaYrA6FwNBjVKc=";
|
||||
vendorHash = "sha256-dM9FiUucSBkk8L93HfzoHQ1EyyRmAZjfedvOyRBDFBA=";
|
||||
|
||||
doInstallCheck = true;
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
babel,
|
||||
buildPythonPackage,
|
||||
cssselect,
|
||||
@@ -22,8 +23,6 @@ buildPythonPackage rec {
|
||||
version = "1.14.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "wireservice";
|
||||
repo = "agate";
|
||||
@@ -50,6 +49,11 @@ buildPythonPackage rec {
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
disabledTests = lib.optionals stdenv.isDarwin [
|
||||
# Output is slightly different on macOS
|
||||
"test_cast_format_locale"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "agate" ];
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
python-socks,
|
||||
rencode,
|
||||
setuptools,
|
||||
fetchpatch,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
@@ -27,6 +28,14 @@ buildPythonPackage rec {
|
||||
hash = "sha256-2nBrIMlYUI4PwirkiSJSkw5zw2Kc/KoVRyIIYYx4iYs=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# compatibility with python3.14: fix retrival of non-running event loop
|
||||
(fetchpatch {
|
||||
url = "https://codeberg.org/plotski/aiobtclientrpc/commit/1328e281d28f17c9b2c092539b4ab7402f1082b3.patch";
|
||||
hash = "sha256-ixHyG/w2h7tkaVYxmvpInfNW4AxVTn4Bflztzt1TOwM=";
|
||||
})
|
||||
];
|
||||
|
||||
pythonRelaxDeps = [ "async-timeout" ];
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "cryptodatahub";
|
||||
version = "1.0.0";
|
||||
version = "1.0.2";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@@ -24,8 +24,8 @@ buildPythonPackage rec {
|
||||
src = fetchFromGitLab {
|
||||
owner = "coroner";
|
||||
repo = "cryptodatahub";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-taYpSYkfucc9GQpVDiAZgCt/D3Akld20LkFEhsdKH0Q=";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-DQspaa9GsnRjETKUca2i91iBPbT4qATmKiL8M0nBP/A=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
@@ -51,7 +51,6 @@ buildPythonPackage rec {
|
||||
preCheck = ''
|
||||
# failing tests
|
||||
rm test/updaters/test_common.py
|
||||
rm test/common/test_key.py
|
||||
# Tests require network access
|
||||
rm test/common/test_utils.py
|
||||
'';
|
||||
@@ -59,8 +58,8 @@ buildPythonPackage rec {
|
||||
meta = {
|
||||
description = "Repository of cryptography-related data";
|
||||
homepage = "https://gitlab.com/coroner/cryptodatahub";
|
||||
changelog = "https://gitlab.com/coroner/cryptodatahub/-/blob/${version}/CHANGELOG.rst";
|
||||
changelog = "https://gitlab.com/coroner/cryptodatahub/-/blob/${src.tag}/CHANGELOG.rst";
|
||||
license = lib.licenses.mpl20;
|
||||
maintainers = [ ];
|
||||
teams = with lib.teams; [ ngi ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,19 +1,38 @@
|
||||
{
|
||||
stdenv,
|
||||
lib,
|
||||
nodejs,
|
||||
buildNpmPackage,
|
||||
buildPythonPackage,
|
||||
runCommand,
|
||||
fetchFromGitHub,
|
||||
fetchPypi,
|
||||
flit-core,
|
||||
accessible-pygments,
|
||||
beautifulsoup4,
|
||||
pygments,
|
||||
sphinx,
|
||||
sphinx-basic-ng,
|
||||
unzip,
|
||||
}:
|
||||
|
||||
let
|
||||
pname = "furo";
|
||||
version = "2025.07.19";
|
||||
# version on pypi doesn't have month & day padded with 0
|
||||
pypiVersion =
|
||||
let
|
||||
versionComponents = lib.strings.splitString "." version;
|
||||
dropLeadingZero = lib.strings.removePrefix "0";
|
||||
in
|
||||
# year
|
||||
(lib.lists.elemAt versionComponents 0)
|
||||
+ "."
|
||||
# month
|
||||
+ (dropLeadingZero (lib.lists.elemAt versionComponents 1))
|
||||
+ "."
|
||||
# day
|
||||
+ (dropLeadingZero (lib.lists.elemAt versionComponents 2));
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pradyunsg";
|
||||
@@ -22,7 +41,28 @@ let
|
||||
hash = "sha256-pIF5zrh5YbkuSkrateEB/tDULSNbeVn2Qx+Fm3nOYGE=";
|
||||
};
|
||||
|
||||
web = buildNpmPackage {
|
||||
web-bin =
|
||||
let
|
||||
web-bin-src = fetchPypi {
|
||||
inherit pname;
|
||||
version = pypiVersion;
|
||||
format = "wheel";
|
||||
dist = "py3";
|
||||
python = "py3";
|
||||
hash = "sha256-veqGmCLf0rSU6oTAlzk3410Vda8Ii2chopx/eHityeM=";
|
||||
};
|
||||
in
|
||||
runCommand "${pname}-web-bin"
|
||||
{
|
||||
nativeBuildInputs = [ unzip ];
|
||||
}
|
||||
''
|
||||
mkdir $out
|
||||
unzip ${web-bin-src}
|
||||
cp -rv furo/theme/furo/static/{scripts,styles} $out/
|
||||
'';
|
||||
|
||||
web-native = buildNpmPackage {
|
||||
pname = "${pname}-web";
|
||||
inherit version src;
|
||||
|
||||
@@ -35,6 +75,8 @@ let
|
||||
popd
|
||||
'';
|
||||
};
|
||||
|
||||
web = if (lib.meta.availableOn stdenv.buildPlatform nodejs) then web-native else web-bin;
|
||||
in
|
||||
|
||||
buildPythonPackage rec {
|
||||
|
||||
@@ -19,14 +19,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "marshmallow";
|
||||
version = "4.1.0";
|
||||
version = "4.1.2";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "marshmallow-code";
|
||||
repo = "marshmallow";
|
||||
tag = version;
|
||||
hash = "sha256-h1wkeJbJY/0K3Vpxz+Bc2/2PDWgOMqropG0XMBzAOq8=";
|
||||
hash = "sha256-qEjq1tEWoYqlN7L/cECnpFGPinSdZXexJHZfXreLAZc=";
|
||||
};
|
||||
|
||||
build-system = [ flit-core ];
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
requests,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
buildPythonPackage {
|
||||
@@ -27,6 +28,8 @@ buildPythonPackage {
|
||||
# The tests require an internet connection and an API key
|
||||
doCheck = false;
|
||||
|
||||
passthru.updateScript = unstableGitUpdater { };
|
||||
|
||||
meta = {
|
||||
description = "Wrapper for The Movie Database API v3";
|
||||
homepage = "https://github.com/celiao/tmdbsimple";
|
||||
|
||||
@@ -27,14 +27,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "unstructured-inference";
|
||||
version = "1.1.3";
|
||||
version = "1.1.4";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Unstructured-IO";
|
||||
repo = "unstructured-inference";
|
||||
tag = version;
|
||||
hash = "sha256-/vWyywsnNzkwcl2L5BcS6qqaCk2LPxaNlCPeMnDIHPU=";
|
||||
hash = "sha256-2yLBP2FNEn3tQV63qtlpz6mMjE4rsDr3JItYnpIU3iM=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
|
||||
buildFishPlugin rec {
|
||||
pname = "forgit";
|
||||
version = "25.12.0";
|
||||
version = "26.01.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "wfxr";
|
||||
repo = "forgit";
|
||||
rev = version;
|
||||
hash = "sha256-DN2QUxCVVjYn7b4xt/7+k5g1/7dfZ+cp5Yi0nJWh1mM=";
|
||||
hash = "sha256-3PjKFARsN3BE5c3/JonNj+LpKBPT1N3hc1bK6NdWDTQ=";
|
||||
};
|
||||
|
||||
postInstall = ''
|
||||
|
||||
@@ -23,7 +23,7 @@ let
|
||||
# NOTE: when updating this to a new non-patch version, please also try to
|
||||
# update the plugins. Plugins only work if they are compiled for the same
|
||||
# major/minor version.
|
||||
version = "0.108.0";
|
||||
version = "0.109.1";
|
||||
in
|
||||
rustPlatform.buildRustPackage {
|
||||
pname = "nushell";
|
||||
@@ -33,10 +33,10 @@ rustPlatform.buildRustPackage {
|
||||
owner = "nushell";
|
||||
repo = "nushell";
|
||||
tag = version;
|
||||
hash = "sha256-8OMTscMObV+IOSgOoTSzJvZTz6q/l2AjrOb9y3p2tZY=";
|
||||
hash = "sha256-XNDEfmvmUNS90PU4e/EWFyJeg428R8nFPJHpF3tgRWo=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-M2wkhhaS3bVhwaa3O0CUK5hL757qFObr7EDtBFXXwxg=";
|
||||
cargoHash = "sha256-UX0WmvrzrWlrTnvMqaWAxoSie7RzQSC4thEb26LAz+A=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
|
||||
@@ -4,14 +4,15 @@
|
||||
fetchurl,
|
||||
ed,
|
||||
autoreconfHook,
|
||||
testers,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "patch";
|
||||
version = "2.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/patch/patch-${version}.tar.xz";
|
||||
url = "mirror://gnu/patch/patch-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-+Hzuae7CtPy/YKOWsDCtaqNBXxkqpffuhMrV4R9/WuM=";
|
||||
};
|
||||
|
||||
@@ -32,18 +33,14 @@ stdenv.mkDerivation rec {
|
||||
meta = {
|
||||
description = "GNU Patch, a program to apply differences to files";
|
||||
mainProgram = "patch";
|
||||
|
||||
longDescription = ''
|
||||
GNU Patch takes a patch file containing a difference listing
|
||||
produced by the diff program and applies those differences to one or
|
||||
more original files, producing patched versions.
|
||||
'';
|
||||
|
||||
homepage = "https://savannah.gnu.org/projects/patch";
|
||||
|
||||
license = lib.licenses.gpl3Plus;
|
||||
|
||||
maintainers = [ ];
|
||||
maintainers = with lib.maintainers; [ mdaniels5757 ];
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user