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,31 @@
{
fetchFromGitHub,
lib,
libiconv,
stdenv,
}:
stdenv.mkDerivation rec {
pname = "id3";
version = "0.81";
src = fetchFromGitHub {
owner = "squell";
repo = "id3";
rev = version;
hash = "sha256-+h1wwgTB7CpbjyUAK+9BNRhmy83D+1I+cZ70E1m3ENk=";
};
buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
makeFlags = [ "prefix=$(out)" ];
meta = {
description = "Portable command-line mass tagger";
homepage = "https://squell.github.io/id3/";
license = lib.licenses.bsd2;
maintainers = with lib.maintainers; [ jecaro ];
platforms = lib.platforms.unix;
mainProgram = "id3";
};
}

View File

@@ -0,0 +1,104 @@
http://www.linuxfromscratch.org/patches/downloads/id3lib/id3lib-3.8.3-gcc43-1.patch
Submitted By: Ken Moffat <ken at linuxfromscratch dot org>
Date: 2008-11-21
Initial Package Version: 3.8.3
Upstream Status: unknown
Origin: fedora
Description: Allows it to compile with gcc-4.3.
diff -up id3lib-3.8.3/include/id3/id3lib_strings.h~ id3lib-3.8.3/include/id3/id3lib_strings.h
--- id3lib-3.8.3/include/id3/id3lib_strings.h~ 2003-03-02 02:23:00.000000000 +0200
+++ id3lib-3.8.3/include/id3/id3lib_strings.h 2008-01-04 01:30:52.000000000 +0200
@@ -29,6 +29,7 @@
#ifndef _ID3LIB_STRINGS_H_
#define _ID3LIB_STRINGS_H_
+#include <cstring>
#include <string>
#if (defined(__GNUC__) && (__GNUC__ >= 3) || (defined(_MSC_VER) && _MSC_VER > 1000))
diff -up id3lib-3.8.3/configure.in~ id3lib-3.8.3/configure.in
--- id3lib-3.8.3/configure.in~ 2008-01-04 11:39:01.000000000 +0100
+++ id3lib-3.8.3/configure.in 2008-01-04 11:39:01.000000000 +0100
@@ -227,7 +227,6 @@ AC_CHECK_HEADERS(fstream iostream iomani
)
AC_CHECK_HEADERS( \
string \
- iomanip.h \
,,AC_MSG_ERROR([Missing a vital header file for id3lib])
)
diff -up id3lib-3.8.3/configure~ id3lib-3.8.3/configure
--- id3lib-3.8.3/configure~ 2008-01-04 11:39:10.000000000 +0100
+++ id3lib-3.8.3/configure 2008-01-04 11:39:10.000000000 +0100
@@ -22976,7 +22976,6 @@ done
for ac_header in \
string \
- iomanip.h \
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
diff -up id3lib-3.8.3/include/id3/writers.h~ id3lib-3.8.3/include/id3/writers.h
--- id3lib-3.8.3/include/id3/writers.h~ 2008-01-04 11:59:39.000000000 +0100
+++ id3lib-3.8.3/include/id3/writers.h 2008-01-04 11:59:39.000000000 +0100
@@ -28,9 +28,9 @@
#ifndef _ID3LIB_WRITERS_H_
#define _ID3LIB_WRITERS_H_
+#include <cstring>
#include "id3/writer.h"
#include "id3/id3lib_streams.h"
-//#include <string.h>
class ID3_CPP_EXPORT ID3_OStreamWriter : public ID3_Writer
{
diff -up id3lib-3.8.3/examples/demo_info.cpp~ id3lib-3.8.3/examples/demo_info.cpp
--- id3lib-3.8.3/examples/demo_info.cpp~ 2008-01-04 12:00:56.000000000 +0100
+++ id3lib-3.8.3/examples/demo_info.cpp 2008-01-04 12:00:56.000000000 +0100
@@ -309,7 +309,7 @@ void PrintInformation(const ID3_Tag &myT
#define DEBUG
-int main( unsigned int argc, char * const argv[])
+int main(int argc, char * const argv[])
{
ID3D_INIT_DOUT();
diff -up id3lib-3.8.3/examples/demo_copy.cpp~ id3lib-3.8.3/examples/demo_copy.cpp
--- id3lib-3.8.3/examples/demo_copy.cpp~ 2008-01-04 12:01:26.000000000 +0100
+++ id3lib-3.8.3/examples/demo_copy.cpp 2008-01-04 12:01:26.000000000 +0100
@@ -81,7 +81,7 @@ void DisplayTags(ostream &os, luint nTag
}
}
-int main( unsigned int argc, char * const argv[])
+int main(int argc, char * const argv[])
{
int ulFlag = ID3TT_ID3;
ID3D_INIT_DOUT();
diff -up id3lib-3.8.3/examples/demo_convert.cpp~ id3lib-3.8.3/examples/demo_convert.cpp
--- id3lib-3.8.3/examples/demo_convert.cpp~ 2008-01-04 12:01:20.000000000 +0100
+++ id3lib-3.8.3/examples/demo_convert.cpp 2008-01-04 12:01:20.000000000 +0100
@@ -84,7 +84,7 @@ void DisplayTags(ostream &os, luint nTag
}
}
-int main( unsigned int argc, char * const argv[])
+int main(int argc, char * const argv[])
{
flags_t ulFlag = ID3TT_ALL;
gengetopt_args_info args;
diff -up id3lib-3.8.3/examples/demo_tag.cpp~ id3lib-3.8.3/examples/demo_tag.cpp
--- id3lib-3.8.3/examples/demo_tag.cpp~ 2008-01-04 12:01:41.000000000 +0100
+++ id3lib-3.8.3/examples/demo_tag.cpp 2008-01-04 12:01:41.000000000 +0100
@@ -46,7 +46,7 @@ void DisplayTags(ostream &os, luint nTag
os << "v2";
}
-int main( unsigned int argc, char * const argv[])
+int main(int argc, char * const argv[])
{
int ulFlag = ID3TT_ID3;
ID3D_INIT_DOUT();

View File

@@ -0,0 +1,36 @@
{
lib,
stdenv,
fetchurl,
libiconv,
zlib,
}:
stdenv.mkDerivation rec {
pname = "id3lib";
version = "3.8.3";
patches = [
./id3lib-3.8.3-gcc43-1.patch
./patch_id3lib_3.8.3_UTF16_writing_bug.diff
];
buildInputs = [
libiconv
zlib
];
src = fetchurl {
url = "mirror://sourceforge/id3lib/${pname}-${version}.tar.gz";
sha256 = "0yfhqwk0w8q2hyv1jib1008jvzmwlpsxvc8qjllhna6p1hycqj97";
};
doCheck = false; # fails to compile
meta = with lib; {
description = "Library for reading, writing, and manipulating ID3v1 and ID3v2 tags";
homepage = "https://id3lib.sourceforge.net";
platforms = platforms.unix;
license = licenses.lgpl2;
};
}

View File

@@ -0,0 +1,39 @@
diff -ruN id3lib-3.8.3.orig/ChangeLog id3lib-3.8.3/ChangeLog
--- id3lib-3.8.3.orig/ChangeLog 2003-03-02 01:23:00.000000000 +0100
+++ id3lib-3.8.3/ChangeLog 2006-02-22 00:33:59.946214472 +0100
@@ -1,3 +1,8 @@
+2006-02-17 Jerome Couderc
+
+ * Patch from Spoon to fix UTF-16 writing bug
+ http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979
+
2003-03-02 Sunday 17:38 Thijmen Klok <thijmen@id3lib.org>
* THANKS (1.20): added more people
diff -ruN id3lib-3.8.3.orig/src/io_helpers.cpp id3lib-3.8.3/src/io_helpers.cpp
--- id3lib-3.8.3.orig/src/io_helpers.cpp 2003-03-02 01:23:00.000000000 +0100
+++ id3lib-3.8.3/src/io_helpers.cpp 2006-02-22 00:35:02.926639992 +0100
@@ -363,11 +363,22 @@
// Write the BOM: 0xFEFF
unicode_t BOM = 0xFEFF;
writer.writeChars((const unsigned char*) &BOM, 2);
+ // Patch from Spoon : 2004-08-25 14:17
+ // http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979
+ // Wrong code
+ //for (size_t i = 0; i < size; i += 2)
+ //{
+ // unicode_t ch = (data[i] << 8) | data[i+1];
+ // writer.writeChars((const unsigned char*) &ch, 2);
+ //}
+ // Right code
+ unsigned char *pdata = (unsigned char *) data.c_str();
for (size_t i = 0; i < size; i += 2)
{
- unicode_t ch = (data[i] << 8) | data[i+1];
+ unicode_t ch = (pdata[i] << 8) | pdata[i+1];
writer.writeChars((const unsigned char*) &ch, 2);
}
+ // End patch
}
return writer.getCur() - beg;
}

View File

@@ -0,0 +1,42 @@
{
lib,
stdenv,
fetchurl,
id3lib,
groff,
zlib,
}:
stdenv.mkDerivation rec {
pname = "id3v2";
version = "0.1.12";
src = fetchurl {
url = "mirror://sourceforge/id3v2/${pname}-${version}.tar.gz";
sha256 = "1gr22w8gar7zh5pyyvdy7cy26i47l57jp1l1nd60xfwx339zl1c1";
};
nativeBuildInputs = [ groff ];
buildInputs = [
id3lib
zlib
];
makeFlags = [ "PREFIX=$(out)" ];
buildFlags = [
"clean"
"all"
];
preInstall = ''
mkdir -p $out/{bin,share/man/man1}
'';
meta = with lib; {
description = "Command line editor for id3v2 tags";
homepage = "https://id3v2.sourceforge.net/";
license = licenses.gpl2Plus;
platforms = with platforms; unix;
mainProgram = "id3v2";
};
}

View File

@@ -0,0 +1,131 @@
{
autoPatchelfHook,
cairo,
dbus,
requireFile,
fontconfig,
freetype,
glib,
gtk3,
lib,
libdrm,
libGL,
libkrb5,
libsecret,
libunwind,
libxkbcommon,
makeWrapper,
openssl,
stdenv,
xorg,
zlib,
}:
stdenv.mkDerivation (finalAttrs: rec {
pname = "ida-free";
version = "9.2";
src = requireFile {
name = "ida-free-pc_${lib.replaceStrings [ "." ] [ "" ] version}_x64linux.run";
url = "https://my.hex-rays.com/dashboard/download-center/installers/release/${version}/ida-free";
hash = "sha256-CQm9phkqLXhht4UQxooKmhmiGuW3lV8RIJuDrm52aNw=";
};
nativeBuildInputs = [
makeWrapper
autoPatchelfHook
];
# We just get a runfile in $src, so no need to unpack it.
dontUnpack = true;
# Add everything to the RPATH, in case IDA decides to dlopen things.
runtimeDependencies = [
cairo
dbus
fontconfig
freetype
glib
gtk3
libdrm
libGL
libkrb5
libsecret
libunwind
libxkbcommon
openssl
stdenv.cc.cc
xorg.libICE
xorg.libSM
xorg.libX11
xorg.libXau
xorg.libxcb
xorg.libXext
xorg.libXi
xorg.libXrender
xorg.xcbutilimage
xorg.xcbutilkeysyms
xorg.xcbutilrenderutil
xorg.xcbutilwm
xorg.xcbutilcursor
zlib
];
buildInputs = runtimeDependencies;
# IDA comes with its own Qt6, some dependencies are missing in the installer.
autoPatchelfIgnoreMissingDeps = [
"libQt6Network.so.6"
"libQt6EglFSDeviceIntegration.so.6"
"libQt6WaylandEglClientHwIntegration.so.6"
"libQt6WlShellIntegration.so.6"
];
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/lib $out/opt
mkdir -p $out/.local/share/applications
# IDA depends on quite some things extracted by the runfile, so first extract everything
# into $out/opt, then remove the unnecessary files and directories.
IDADIR=$out/opt/${finalAttrs.pname}-${finalAttrs.version}
# The installer doesn't honor `--prefix` in all places,
# thus needing to set `HOME` here.
HOME=$out
# Invoke the installer with the dynamic loader directly, avoiding the need
# to copy it to fix permissions and patch the executable.
$(cat $NIX_CC/nix-support/dynamic-linker) $src \
--mode unattended --prefix $IDADIR
# Copy the exported libraries to the output.
cp $IDADIR/libida.so $out/lib
# Some libraries come with the installer.
addAutoPatchelfSearchPath $IDADIR
# Wrap the ida executable to set QT_PLUGIN_PATH
wrapProgram $IDADIR/ida --prefix QT_PLUGIN_PATH : $IDADIR/plugins/platforms
ln -s $IDADIR/ida $out/bin/ida
# runtimeDependencies don't get added to non-executables, and openssl is needed
# for cloud decompilation
patchelf --add-needed libcrypto.so $IDADIR/libida.so
mv $out/.local/share $out
rm -r $out/.local
runHook postInstall
'';
meta = with lib; {
description = "Freeware version of the world's smartest and most feature-full disassembler";
homepage = "https://hex-rays.com/ida-free/";
changelog = "https://hex-rays.com/products/ida/news/";
license = licenses.unfree;
mainProgram = "ida";
maintainers = with maintainers; [ msanft ];
platforms = [ "x86_64-linux" ]; # Right now, the installation script only supports Linux.
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
};
})

View File

@@ -0,0 +1,36 @@
{
lib,
stdenv,
fetchurl,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "idb-companion";
version = "1.1.8";
src = fetchurl {
url = "https://github.com/facebook/idb/releases/download/v${finalAttrs.version}/idb-companion.universal.tar.gz";
hash = "sha256-O3LMappbGiKhiCBahAkNOilDR6hGGA79dVzxo8hI4+c=";
};
sourceRoot = "idb-companion.universal";
installPhase = ''
runHook preInstall
mkdir -p $out
cp -r . $out/
runHook postInstall
'';
meta = with lib; {
description = "Powerful command line tool for automating iOS simulators and devices";
homepage = "https://github.com/facebook/idb";
license = licenses.mit;
platforms = platforms.darwin;
mainProgram = "idb_companion";
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
maintainers = with maintainers; [ siddarthkay ];
};
})

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
<mime-type type="model/3mf">
<icon name="3MF"/>
<generic-icon name="3MF"/>
</mime-type>
<mime-type type="application/x-ideamaker">
<glob pattern="*.idea"/>
<comment xml:lang="en">IDEA project</comment>
<icon name="IDEA"/>
<generic-icon name="IDEA"/>
</mime-type>
<mime-type type="model/stl">
<icon name="STL"/>
<generic-icon name="STL"/>
</mime-type>
<mime-type type="model/obj">
<icon name="OBJ"/>
<generic-icon name="OBJ"/>
</mime-type>
<mime-type type="text/x.gcode">
<icon name="GCODE"/>
<generic-icon name="GCODE"/>
</mime-type>
</mime-info>

View File

@@ -0,0 +1,156 @@
{
autoPatchelfHook,
common-updater-scripts,
copyDesktopItems,
curl,
dpkg,
e2fsprogs,
fetchurl,
gnutls,
gtk3,
jq,
lib,
libGLU,
libpsl,
libsForQt5,
libredirect,
libX11,
lz4,
makeDesktopItem,
makeWrapper,
nghttp2,
shared-mime-info,
stdenv,
writeShellApplication,
xkeyboardconfig,
}:
let
pname = "ideamaker";
version = "5.2.2.8570";
semver = lib.strings.concatStringsSep "." (lib.lists.init (builtins.splitVersion version));
description = "Raise3D's 3D slicer software";
in
stdenv.mkDerivation {
inherit pname version;
src = fetchurl {
url = "https://downcdn.raise3d.com/ideamaker/release/${semver}/ideaMaker_${version}-ubuntu_amd64.deb";
hash = "sha256-kXcgVuuPTMWoOCrEztiedJrZrTbFx1xHyzzh4y2b0UA=";
};
nativeBuildInputs = [
autoPatchelfHook
copyDesktopItems
dpkg
makeWrapper
shared-mime-info
];
dontWrapQtApps = true;
buildInputs = [
libGLU
lz4
e2fsprogs
gnutls
gtk3
nghttp2
libpsl
libsForQt5.qtbase
libsForQt5.qt5.qtwayland
];
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp -r usr $out
cp -r usr/share $out/share
mimetypeDir=$out/share/icons/hicolor/128x128/mimetypes
mkdir -p ''$mimetypeDir
for file in usr/share/ideamaker/icons/*.ico; do
mv $file ''$mimetypeDir/''$(basename ''${file%.ico}).png
done
install -D ${./mimetypes.xml} \
$out/share/mime/packages/ideamaker.xml
install -D usr/share/ideamaker/icons/ideamaker-icon.png \
$out/share/pixmaps/ideamaker.png
ln -sf $out/usr/lib/x86_64-linux-gnu/ideamaker/ideamaker $out/bin/ideamaker
runHook postInstall
'';
preFixup = ''
wrapProgram $out/bin/ideamaker \
--set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
--set QT_XKB_CONFIG_ROOT "${xkeyboardconfig}/share/X11/xkb" \
--set QTCOMPOSE "${libX11.out}/share/X11/locale" \
--set KDEDIRS "$HOME/.nix-profile:/nix/var/nix/profiles/default" \
--set NIX_REDIRECTS /usr/share=$out/share/
'';
postFixup = ''
patchelf \
--add-needed libdbus-1.so.3 \
"$out/usr/lib/x86_64-linux-gnu/ideamaker/libQt5DBus.so.5.15.2"
'';
desktopItems = [
(makeDesktopItem {
name = "ideamaker";
exec = "ideamaker";
icon = "ideamaker";
desktopName = "Ideamaker";
comment = "ideaMaker - www.raise3d.com";
categories = [
"Qt"
"Utility"
"3DGraphics"
"Viewer"
"Engineering"
];
genericName = description;
mimeTypes = [
"application/x-ideamaker"
"model/3mf"
"model/obj"
"model/stl"
"text/x.gcode"
];
noDisplay = false;
startupNotify = true;
terminal = false;
type = "Application";
})
];
passthru.updateScript = lib.getExe (writeShellApplication {
name = "ideamaker-update-script";
runtimeInputs = [
curl
common-updater-scripts
jq
];
text = ''
update-source-version ideamaker "$(
curl 'https://api.raise3d.com/ideamakerio-v1.1/hq/ofpVersionControl/find' -X 'POST' \
| jq -r '.data.release_version.linux_64_deb_url' \
| sed -E 's#.*/release/([0-9]+\.[0-9]+\.[0-9]+)/ideaMaker_\1\.([0-9]+).*#\1.\2#'
)"
'';
});
meta = {
inherit description;
changelog = "https://www.raise3d.com/download/ideamaker-release-notes/";
homepage = "https://www.raise3d.com/ideamaker/";
license = lib.licenses.unfree;
mainProgram = "ideamaker";
maintainers = with lib.maintainers; [ cjshearer ];
platforms = [ "x86_64-linux" ];
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
};
}

View File

@@ -0,0 +1,104 @@
{
lib,
stdenv,
appstream,
blueprint-compiler,
cargo,
dav1d,
desktop-file-utils,
fetchFromGitLab,
glib,
gst_all_1,
gtk4,
lcms,
libadwaita,
libseccomp,
libwebp,
meson,
ninja,
nix-update-script,
pkg-config,
rustPlatform,
rustc,
versionCheckHook,
wrapGAppsHook4,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "identity";
version = "25.03";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "YaLTeR";
repo = "identity";
tag = "v${finalAttrs.version}";
hash = "sha256-JZyhT220ARZ2rX0CZYeFkHx8i9ops7TcfGje0NKebnU=";
};
cargoDeps = rustPlatform.fetchCargoVendor {
inherit (finalAttrs) pname version src;
hash = "sha256-RCSTxtHXkLsH8smGp2XzQeV9SSpLx5llrFg3cgIsWKY=";
};
strictDeps = true;
nativeBuildInputs = [
appstream
blueprint-compiler
cargo
desktop-file-utils # for `desktop-file-validate`
glib # for `glib-compile-schemas`
gtk4 # for `gtk-update-icon-cache`
meson
ninja
pkg-config
rustPlatform.cargoCheckHook
rustPlatform.cargoSetupHook
rustc
wrapGAppsHook4
];
buildInputs = [
dav1d
gst_all_1.gst-libav
gst_all_1.gst-plugins-bad
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gst_all_1.gstreamer
gtk4
lcms
libadwaita
libseccomp
libwebp
];
mesonBuildType = "release";
doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform;
cargoCheckType = if (finalAttrs.mesonBuildType != "debug") then "release" else "debug";
nativeInstallCheckInputs = [ versionCheckHook ];
doInstallCheck = true;
checkPhase = ''
runHook preCheck
cargoCheckHook
mesonCheckPhase
runHook postCheck
'';
passthru.updateScript = nix-update-script { };
meta = {
description = "Program for comparing multiple versions of an image or video";
homepage = "https://gitlab.gnome.org/YaLTeR/identity";
changelog = "https://gitlab.gnome.org/YaLTeR/identity/-/releases/v${finalAttrs.version}";
license = lib.licenses.gpl3Plus;
teams = [ lib.teams.gnome-circle ];
mainProgram = "identity";
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,68 @@
{
lib,
stdenv,
fetchFromGitHub,
nix-update-script,
vala,
pkg-config,
python3,
glib,
gtk3,
meson,
ninja,
libgee,
pantheon,
desktop-file-utils,
xorg,
wrapGAppsHook3,
}:
stdenv.mkDerivation rec {
pname = "ideogram";
version = "1.3.3";
src = fetchFromGitHub {
owner = "cassidyjames";
repo = "ideogram";
rev = version;
sha256 = "1zkr7x022khn5g3sq2dkxzy1hiiz66vl81s3i5sb9qr88znh79p1";
};
nativeBuildInputs = [
desktop-file-utils
meson
ninja
vala
pkg-config
python3
wrapGAppsHook3
];
buildInputs = [
glib
gtk3
libgee
pantheon.granite
xorg.libX11
xorg.libXtst
];
postPatch = ''
chmod +x meson/post_install.py
patchShebangs meson/post_install.py
'';
passthru = {
updateScript = nix-update-script { };
};
meta = with lib; {
description = "Insert emoji anywhere, even in non-native apps - designed for elementary OS";
homepage = "https://github.com/cassidyjames/ideogram";
license = licenses.gpl2Plus;
teams = [ teams.pantheon ];
platforms = platforms.linux;
mainProgram = "com.github.cassidyjames.ideogram";
};
}

View File

@@ -0,0 +1,56 @@
{
lib,
stdenv,
fetchFromGitHub,
autoreconfHook,
pkg-config,
usbmuxd,
libimobiledevice,
libzip,
}:
stdenv.mkDerivation rec {
pname = "ideviceinstaller";
version = "1.1.1+date=2023-04-30";
src = fetchFromGitHub {
owner = "libimobiledevice";
repo = "ideviceinstaller";
rev = "71ec5eaa30d2780c2614b6b227a2229ea3aeb1e9";
hash = "sha256-YsQwAlt71vouYJzXl0P7b3fG/MfcwI947GtvN4g3/gM=";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
usbmuxd
libimobiledevice
libzip
];
# the package uses zip_get_num_entries, which is deprecated
env.NIX_CFLAGS_COMPILE = toString [
"-Wno-error=deprecated-declarations"
];
preAutoreconf = ''
export RELEASE_VERSION=${version}
'';
meta = with lib; {
homepage = "https://github.com/libimobiledevice/ideviceinstaller";
description = "List/modify installed apps of iOS devices";
longDescription = ''
ideviceinstaller is a tool to interact with the installation_proxy
of an iOS device allowing to install, upgrade, uninstall, archive, restore
and enumerate installed or archived apps.
'';
license = licenses.gpl2Plus;
platforms = platforms.unix;
maintainers = with maintainers; [ aristid ];
mainProgram = "ideviceinstaller";
};
}

View File

@@ -0,0 +1,67 @@
{
lib,
stdenv,
fetchFromGitHub,
autoreconfHook,
pkg-config,
curl,
libimobiledevice,
libirecovery,
libzip,
libusbmuxd,
}:
stdenv.mkDerivation rec {
pname = "idevicerestore";
version = "1.0.0+date=2023-05-23";
src = fetchFromGitHub {
owner = "libimobiledevice";
repo = "idevicerestore";
rev = "609f7f058487596597e8e742088119fdd46729df";
hash = "sha256-VXtXAitPC1+pxZlkGBg+u6yYhyM/jVpSgDO/6dXh5V4=";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
curl
libimobiledevice
libirecovery
libzip
libusbmuxd
# Not listing other dependencies specified in
# https://github.com/libimobiledevice/idevicerestore/blob/8a882038b2b1e022fbd19eaf8bea51006a373c06/README#L20
# because they are inherited `libimobiledevice`.
];
preAutoreconf = ''
export RELEASE_VERSION=${version}
'';
meta = with lib; {
homepage = "https://github.com/libimobiledevice/idevicerestore";
description = "Restore/upgrade firmware of iOS devices";
longDescription = ''
The idevicerestore tool allows to restore firmware files to iOS devices.
It is a full reimplementation of all granular steps which are performed during
restore of a firmware to a device.
In general, upgrades and downgrades are possible, however subject to
availability of SHSH blobs from Apple for signing the firmare files.
To restore a device to some firmware, simply run the following:
$ sudo idevicerestore -l
This will download and restore a device to the latest firmware available.
'';
license = licenses.lgpl21Plus;
platforms = platforms.unix;
maintainers = with maintainers; [ nh2 ];
mainProgram = "idevicerestore";
};
}

View File

@@ -0,0 +1,28 @@
{
lib,
stdenv,
fetchurl,
}:
stdenv.mkDerivation rec {
pname = "idle3-tools";
version = "0.9.1";
src = fetchurl {
url = "mirror://sourceforge/idle3-tools/idle3-tools-${version}.tgz";
sha256 = "00ia7xq9yldxyl9gz0mr4xa568nav14p0fnv82f2rbbkg060cy4p";
};
preInstall = ''
installFlags=DESTDIR=$out
'';
meta = {
homepage = "https://idle3-tools.sourceforge.net/";
description = "Tool to get/set the infamous idle3 timer in WD HDDs";
license = lib.licenses.gpl3;
maintainers = [ ];
platforms = with lib.platforms; linux;
mainProgram = "idle3ctl";
};
}

View File

@@ -0,0 +1,80 @@
{
binaryen,
cargo-leptos,
fetchFromGitHub,
lib,
rustc,
makeWrapper,
nix-update-script,
nodePackages,
rustPlatform,
tailwindcss_3,
wasm-bindgen-cli_0_2_100,
}:
let
tailwindcss = tailwindcss_3.overrideAttrs (_prev: {
plugins = [
nodePackages."@tailwindcss/aspect-ratio"
nodePackages."@tailwindcss/forms"
nodePackages."@tailwindcss/line-clamp"
nodePackages."@tailwindcss/typography"
];
});
in
rustPlatform.buildRustPackage rec {
pname = "idmail";
version = "1.0.1";
src = fetchFromGitHub {
owner = "oddlama";
repo = "idmail";
tag = "v${version}";
hash = "sha256-9rl2UG8DeWd8hVh3N+dqyV5gO0LErok+kZ1vQZnVAe8=";
};
cargoHash = "sha256-UcS2gAoa2fzPu6hh8I5sXSHHbAmzsecT44Ju2CVsK0Q=";
RUSTC_BOOTSTRAP = 1;
RUSTFLAGS = "--cfg=web_sys_unstable_apis";
nativeBuildInputs = [
wasm-bindgen-cli_0_2_100
binaryen
cargo-leptos
rustc.llvmPackages.lld
tailwindcss
makeWrapper
];
buildPhase = ''
runHook preBuild
cargo leptos build --release
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/share
cp target/release/idmail $out/bin
cp -r target/site $out/share
wrapProgram $out/bin/idmail --set LEPTOS_SITE_ROOT $out/share/site
runHook postInstall
'';
passthru.updateScript = nix-update-script { };
meta = {
description = "Email alias and account management interface for self-hosted mailservers";
homepage = "https://github.com/oddlama/idmail";
changelog = "https://github.com/oddlama/idmail/releases/tag/v${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
oddlama
patrickdag
];
mainProgram = "idmail";
};
}

View File

@@ -0,0 +1,32 @@
{
lib,
stdenv,
fetchurl,
libiconv,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "idnkit";
version = "2.3";
src = fetchurl {
url = "https://jprs.co.jp/idn/idnkit-${finalAttrs.version}.tar.bz2";
hash = "sha256-JtBxF2UAQqtGk/DgCWAnXVihvnc+bRPFA7o4RxDz6X4=";
};
buildInputs = [ libiconv ];
# Ignore errors since gcc-14.
# localconverter.c:602:21/607:26/633:26: error: passing argument 2 of 'iconv' from incompatible pointer type
env.NIX_CFLAGS_COMPILE = "-Wno-error=incompatible-pointer-types";
meta = {
homepage = "https://jprs.co.jp/idn/index-e.html";
description = "Provides functionalities about i18n domain name processing";
license = {
fullName = "Open Source Code License version 1.1";
url = "https://jprs.co.jp/idn/idnkit2-OSCL.txt";
};
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,48 @@
{
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
cmake,
}:
stdenv.mkDerivation rec {
pname = "idsk";
version = "0.20";
src = fetchFromGitHub {
owner = "cpcsdk";
repo = "idsk";
rev = "v${version}";
hash = "sha256-rYClWq1Nl3COoG+eOJyFDTvBSzpHpGminU4bndZs6xc=";
};
patches = [
(fetchpatch {
url = "https://github.com/cpcsdk/idsk/commit/52fa3cdcc10d4ba6c75cab10ca7067b129198d92.patch";
hash = "sha256-Ll0apllNj+fP7kZ1n+bBowrlskLK1bIashxxgPVVxmg=";
})
];
nativeBuildInputs = [
cmake
];
installPhase = ''
runHook preInstall
install -Dm755 iDSK $out/bin/iDSK
runHook postInstall
'';
meta = with lib; {
description = "Manipulating CPC dsk images and files";
homepage = "https://github.com/cpcsdk/idsk";
changelog = "https://github.com/cpcsdk/idsk/releases/tag/${src.rev}";
license = licenses.mit;
mainProgram = "iDSK";
maintainers = with maintainers; [ wegank ];
platforms = platforms.all;
};
}

View File

@@ -0,0 +1,12 @@
Recognize `.nix' files as text files.
--- idutils-4.5/libidu/id-lang.map 2009-05-17 16:38:42.000000000 +0200
+++ idutils-4.5/libidu/id-lang.map 2010-07-04 15:52:48.000000000 +0200
@@ -88,6 +88,7 @@ GNUmakefile make
*.doc text
*.txt text
*.org text
+*.nix text
*.m4 m4
*.ac m4

View File

@@ -0,0 +1,83 @@
{
fetchurl,
lib,
stdenv,
emacs,
gnulib,
autoconf,
bison,
automake,
gettext,
gperf,
texinfo,
perl,
rsync,
}:
stdenv.mkDerivation rec {
pname = "idutils";
version = "4.6";
src = fetchurl {
url = "mirror://gnu/idutils/idutils-${version}.tar.xz";
sha256 = "1hmai3422iaqnp34kkzxdnywl7n7pvlxp11vrw66ybxn9wxg90c1";
};
preConfigure = ''
# replace embedded gnulib tests with those from gnulib package
bash -O extglob -c "cd gnulib-tests; rm -r !(Makefile.am)"
substituteInPlace ./configure.ac --replace "AC_PREREQ(2.61)" "AC_PREREQ(2.64)"
./bootstrap --force --gnulib-srcdir=${gnulib} --skip-po --bootstrap-sync --no-git
'';
buildInputs = lib.optionals stdenv.hostPlatform.isLinux [
emacs
];
nativeBuildInputs = [
gnulib
autoconf
bison
automake
gettext
gperf
texinfo
perl
rsync
];
doCheck = !stdenv.hostPlatform.isDarwin;
patches = [ ./nix-mapping.patch ];
meta = with lib; {
description = "Text searching utility";
longDescription = ''
An "ID database" is a binary file containing a list of file
names, a list of tokens, and a sparse matrix indicating which
tokens appear in which files.
With this database and some tools to query it, many
text-searching tasks become simpler and faster. For example,
you can list all files that reference a particular `\#include'
file throughout a huge source hierarchy, search for all the
memos containing references to a project, or automatically
invoke an editor on all files containing references to some
function or variable. Anyone with a large software project to
maintain, or a large set of text files to organize, can benefit
from the ID utilities.
Although the name `ID' is short for `identifier', the ID
utilities handle more than just identifiers; they also treat
other kinds of tokens, most notably numeric constants, and the
contents of certain character strings.
'';
homepage = "https://www.gnu.org/software/idutils/";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ gfrascadorio ];
platforms = lib.platforms.all;
};
}