about summary refs log tree commit diff
path: root/pkgs/by-name/xi
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/by-name/xi')
-rw-r--r--pkgs/by-name/xi/xilinx-bootgen/package.nix43
-rw-r--r--pkgs/by-name/xi/xine-lib/package.nix104
-rw-r--r--pkgs/by-name/xi/xine-ui/package.nix85
-rw-r--r--pkgs/by-name/xi/xiphos/0001-Add-dbus-glib-dependency-to-main.patch38
-rw-r--r--pkgs/by-name/xi/xiphos/package.nix112
-rw-r--r--pkgs/by-name/xi/xiu/package.nix10
-rw-r--r--pkgs/by-name/xi/xivlauncher/package.nix12
7 files changed, 395 insertions, 9 deletions
diff --git a/pkgs/by-name/xi/xilinx-bootgen/package.nix b/pkgs/by-name/xi/xilinx-bootgen/package.nix
new file mode 100644
index 0000000000000..9190d87986a1c
--- /dev/null
+++ b/pkgs/by-name/xi/xilinx-bootgen/package.nix
@@ -0,0 +1,43 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  openssl,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "xilinx-bootgen";
+  version = "xilinx_v2024.1";
+
+  src = fetchFromGitHub {
+    owner = "xilinx";
+    repo = "bootgen";
+    rev = finalAttrs.version;
+    hash = "sha256-/gNAqjwfaD2NWxs2536XGv8g2IyRcQRHzgLcnCr4a34=";
+  };
+
+  buildInputs = [ openssl ];
+
+  enableParallelBuilding = true;
+
+  installPhase = ''
+    install -Dm755 bootgen $out/bin/bootgen
+  '';
+
+  meta = {
+    description = "Generate Boot Images for Xilinx Zynq and ZU+ SoCs";
+    longDescription = ''
+      Bootgen for Xilinx Zynq and ZU+ SoCs, without code related to generating
+      obfuscated key and without code to support FPGA encryption and
+      authentication. These features are only available as part of Bootgen
+      shipped with Vivado tools.
+
+      For more details about Bootgen, please refer to Xilinx UG1283.
+    '';
+    homepage = "https://github.com/Xilinx/bootgen";
+    license = lib.licenses.asl20;
+    platforms = lib.platforms.linux;
+    maintainers = [ lib.maintainers.flokli lib.maintainers.jmbaur ];
+    mainProgram = "bootgen";
+  };
+})
diff --git a/pkgs/by-name/xi/xine-lib/package.nix b/pkgs/by-name/xi/xine-lib/package.nix
new file mode 100644
index 0000000000000..f0e26e4fe0203
--- /dev/null
+++ b/pkgs/by-name/xi/xine-lib/package.nix
@@ -0,0 +1,104 @@
+{
+  lib,
+  aalib,
+  alsa-lib,
+  autoreconfHook,
+  fetchhg,
+  ffmpeg,
+  flac,
+  libGL,
+  libGLU,
+  libX11,
+  libXext,
+  libXinerama,
+  libXv,
+  libcaca,
+  libcdio,
+  libmng,
+  libmpcdec,
+  libpulseaudio,
+  libtheora,
+  libv4l,
+  libvorbis,
+  libxcb,
+  ncurses,
+  perl,
+  pkg-config,
+  speex,
+  stdenv,
+  vcdimager,
+  zlib,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "xine-lib";
+  version = "1.2.13-unstable-2024-06-29";
+
+  src = fetchhg {
+    url = "http://hg.code.sf.net/p/xine/xine-lib-1.2";
+    rev = "53845e2f6b1f3b69328de5c030c0ab27eb8f043d";
+    hash = "sha256-O5lIYmNC2TpoY4QbPMsDWxNOoxdw61967Q4QG9d/+Bg=";
+  };
+
+  outputs = [
+    "out"
+    "dev"
+    "man"
+  ];
+
+  nativeBuildInputs = [
+    autoreconfHook
+    perl
+    pkg-config
+  ];
+
+  buildInputs = [
+    aalib
+    alsa-lib
+    ffmpeg
+    flac
+    libGL
+    libGLU
+    libX11
+    libX11
+    libXext
+    libXext
+    libXinerama
+    libXinerama
+    libXv
+    libXv
+    libcaca
+    libcdio
+    libmng
+    libmpcdec
+    libpulseaudio
+    libtheora
+    libv4l
+    libvorbis
+    libxcb
+    libxcb
+    ncurses
+    perl
+    speex
+    vcdimager
+    zlib
+  ];
+
+  env.NIX_LDFLAGS = "-lxcb-shm";
+
+  enableParallelBuilding = true;
+
+  strictDeps = true;
+
+  meta = {
+    homepage = "https://xine.sourceforge.net/";
+    description = "High-performance, portable and reusable multimedia playback engine";
+    license = with lib.licenses; [
+      gpl2Plus
+      lgpl2Plus
+    ];
+    # No useful mainProgram
+    maintainers = with lib.maintainers; [ AndersonTorres ];
+    platforms = lib.platforms.linux;
+  };
+})
diff --git a/pkgs/by-name/xi/xine-ui/package.nix b/pkgs/by-name/xi/xine-ui/package.nix
new file mode 100644
index 0000000000000..ddbd29be94c13
--- /dev/null
+++ b/pkgs/by-name/xi/xine-ui/package.nix
@@ -0,0 +1,85 @@
+{
+  lib,
+  autoreconfHook,
+  curl,
+  fetchhg,
+  libXext,
+  libXft,
+  libXi,
+  libXinerama,
+  libXtst,
+  libXv,
+  libXxf86vm,
+  libjpeg,
+  libpng,
+  lirc,
+  ncurses,
+  perl,
+  pkg-config,
+  readline,
+  shared-mime-info,
+  stdenv,
+  xine-lib,
+  xorgproto,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "xine-ui";
+  version = "0.99.14-unstable-2024-08-26";
+
+  src = fetchhg {
+    url = "http://hg.code.sf.net/p/xine/xine-ui";
+    rev = "2beaad6bb92e6732585f68af2e346a24e5ad53a5";
+    hash = "sha256-Y08JX9q4w6pSJRCa5mWN11BnA6mZJSO/yn3X8YyZ6E4=";
+  };
+
+  outputs = [
+    "out"
+    "dev"
+    "lib"
+    "man"
+  ];
+
+  nativeBuildInputs = [
+    autoreconfHook
+    pkg-config
+    shared-mime-info
+    perl
+  ];
+
+  buildInputs = [
+    curl
+    libXext
+    libXft
+    libXi
+    libXinerama
+    libXtst
+    libXv
+    libXxf86vm
+    libjpeg
+    libpng
+    lirc
+    ncurses
+    readline
+    xine-lib
+    xorgproto
+  ];
+
+  configureFlags = [ "--with-readline=${readline.dev}" ];
+
+  env = {
+    LIRC_CFLAGS = "-I${lib.getInclude lirc}/include";
+    LIRC_LIBS = "-L ${lib.getLib lirc}/lib -llirc_client";
+  };
+
+  strictDeps = true;
+
+  meta = {
+    homepage = "https://xine.sourceforge.net/";
+    description = "Xlib-based frontend for Xine video player";
+    license = lib.licenses.gpl2Plus;
+    mainProgram = "xine";
+    maintainers = with lib.maintainers; [ AndersonTorres ];
+    platforms = lib.platforms.linux;
+  };
+})
diff --git a/pkgs/by-name/xi/xiphos/0001-Add-dbus-glib-dependency-to-main.patch b/pkgs/by-name/xi/xiphos/0001-Add-dbus-glib-dependency-to-main.patch
new file mode 100644
index 0000000000000..71cb57ccef188
--- /dev/null
+++ b/pkgs/by-name/xi/xiphos/0001-Add-dbus-glib-dependency-to-main.patch
@@ -0,0 +1,38 @@
+From 0e9e686c902935c0f00afdf9d0d45f9635995988 Mon Sep 17 00:00:00 2001
+From: Jan Tojnar <jtojnar@gmail.com>
+Date: Sat, 15 Jan 2022 05:00:37 +0100
+Subject: [PATCH] Add dbus-glib dependency to main
+
+It is required through the ipc header and the build will fail without it on Nix:
+
+	In file included from /build/source/src/main/search_sidebar.cc:48:
+	/build/source/src/gui/ipc.h:26:10: fatal error: dbus/dbus-glib.h: No such file or directory
+	   26 | #include <dbus/dbus-glib.h>
+	      |          ^~~~~~~~~~~~~~~~~~
+	compilation terminated.
+---
+ src/main/CMakeLists.txt | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+diff --git a/src/main/CMakeLists.txt b/src/main/CMakeLists.txt
+index 49b86371..bb8e4bb6 100644
+--- a/src/main/CMakeLists.txt
++++ b/src/main/CMakeLists.txt
+@@ -74,3 +74,14 @@ target_link_libraries(main
+   PkgConfig::Sword
+   PkgConfig::Biblesync
+   )
++
++IF (DBUS)
++  target_include_directories (main
++    PRIVATE ${CMAKE_CURRENT_BINARY_DIR}
++    PkgConfig::DBus
++    )
++  target_link_libraries(main
++    PRIVATE
++    PkgConfig::DBus
++    )
++ENDIF (DBUS)
+-- 
+2.34.1
+
diff --git a/pkgs/by-name/xi/xiphos/package.nix b/pkgs/by-name/xi/xiphos/package.nix
new file mode 100644
index 0000000000000..d3aaa70fc9af1
--- /dev/null
+++ b/pkgs/by-name/xi/xiphos/package.nix
@@ -0,0 +1,112 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, fetchpatch
+, appstream-glib
+, biblesync
+, cmake
+, dbus-glib
+, desktop-file-utils
+, docbook2x
+, docbook_xml_dtd_412
+, enchant2
+, glib
+, gtk3
+, gtkhtml
+, icu
+, intltool
+, isocodes
+, itstool
+, libuuid
+, libxslt
+, minizip
+, pkg-config
+, sword
+, webkitgtk
+, wrapGAppsHook3
+, yelp-tools
+, zip
+}:
+
+stdenv.mkDerivation rec {
+  pname = "xiphos";
+  version = "4.2.1";
+
+  src = fetchFromGitHub {
+    owner = "crosswire";
+    repo = "xiphos";
+    rev = version;
+    hash = "sha256-H5Q+azE2t3fgu77C9DxrkeUCJ7iJz3Cc91Ln4dqLvD8=";
+  };
+
+  patches = [
+    # GLIB_VERSION_MIN_REQUIRED is not defined.
+    # https://github.com/crosswire/xiphos/issues/1083#issuecomment-820304874
+    (fetchpatch {
+      name ="xiphos-glibc.patch";
+      url = "https://aur.archlinux.org/cgit/aur.git/plain/xiphos-glibc.patch?h=xiphos&id=bb816f43ba764ffac1287ab1e2a649c2443e3ce8";
+      sha256 = "he3U7phU2/QCrZidHviupA7YwzudnQ9Jbb8eMZw6/ck=";
+      extraPrefix = "";
+    })
+
+    # Fix D-Bus build
+    # https://github.com/crosswire/xiphos/pull/1103
+    ./0001-Add-dbus-glib-dependency-to-main.patch
+  ];
+
+  nativeBuildInputs = [
+    appstream-glib # for appstream-util
+    cmake
+    desktop-file-utils # for desktop-file-validate
+    docbook2x
+    docbook_xml_dtd_412
+    intltool
+    itstool
+    libxslt
+    pkg-config
+    wrapGAppsHook3
+    yelp-tools # for yelp-build
+    zip # for building help epubs
+  ];
+
+  buildInputs = [
+    biblesync
+    dbus-glib
+    enchant2
+    glib
+    gtk3
+    gtkhtml
+    icu
+    isocodes
+    libuuid
+    minizip
+    sword
+    webkitgtk
+  ];
+
+  cmakeFlags = [
+    # WebKit-based editor does not build.
+    "-DGTKHTML=ON"
+  ];
+
+  preConfigure =  ''
+    # The build script won't continue without the version saved locally.
+    echo "${version}" > cmake/source_version.txt
+
+    export SWORD_HOME=${sword};
+  '';
+
+  meta = with lib; {
+    description = "GTK Bible study tool";
+    longDescription = ''
+      Xiphos (formerly known as GnomeSword) is a Bible study tool
+      written for Linux, UNIX, and Windows using GTK, offering a rich
+      and featureful environment for reading, study, and research using
+      modules from The SWORD Project and elsewhere.
+    '';
+    homepage = "https://www.xiphos.org/";
+    license = licenses.gpl2Plus;
+    maintainers = [ maintainers.AndersonTorres ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/by-name/xi/xiu/package.nix b/pkgs/by-name/xi/xiu/package.nix
index 2b2445169e182..fe5ab564e9f71 100644
--- a/pkgs/by-name/xi/xiu/package.nix
+++ b/pkgs/by-name/xi/xiu/package.nix
@@ -11,16 +11,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "xiu";
-  version = "0.12.7";
+  version = "0.13.0";
 
   src = fetchFromGitHub {
     owner = "harlanc";
     repo = "xiu";
     rev = "v${version}";
-    hash = "sha256-tFArcI7NcIopM5uPshaOU3ExJW5URc5Mf2V0ZwwgwKo=";
+    hash = "sha256-EjyvCwqcPkOe69YnDiAExtBNPhsqqGa95ao+bn6wcyA=";
   };
 
-  cargoHash = "sha256-OBL1uDVogcU6saEz2d2sWJTwXM2KE/YfhsNZtH0Cnk8=";
+  cargoHash = "sha256-pW1VvnK7WDRvSVFOMUibtsPn+dhcFp64EpTW5beaJ+s=";
 
   nativeBuildInputs = [
     cmake
@@ -29,9 +29,9 @@ rustPlatform.buildRustPackage rec {
 
   buildInputs = [
     libopus
-  ] ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     openssl
-  ] ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     darwin.apple_sdk.frameworks.SystemConfiguration
   ];
 
diff --git a/pkgs/by-name/xi/xivlauncher/package.nix b/pkgs/by-name/xi/xivlauncher/package.nix
index cea9a6e32eccd..86fb36532711f 100644
--- a/pkgs/by-name/xi/xivlauncher/package.nix
+++ b/pkgs/by-name/xi/xivlauncher/package.nix
@@ -3,7 +3,7 @@
 , useSteamRun ? true }:
 
 let
-  rev = "1.0.8";
+  rev = "1.1.0";
 in
   buildDotnetModule rec {
     pname = "XIVLauncher";
@@ -13,7 +13,7 @@ in
       owner = "goatcorp";
       repo = "XIVLauncher.Core";
       inherit rev;
-      hash = "sha256-x4W5L4k+u0MYKDWJu82QcXARW0zjmqqwGiueR1IevMk=";
+      hash = "sha256-vf9cGY+JvMBpQliS1LDmbWjtAbXByrIeXThKtJGQrO8=";
       fetchSubmodules = true;
     };
 
@@ -24,6 +24,10 @@ in
     projectFile = "src/XIVLauncher.Core/XIVLauncher.Core.csproj";
     nugetDeps = ./deps.nix; # File generated with `nix-build -A xivlauncher.passthru.fetch-deps`
 
+    # please do not unpin these even if they match the defaults, xivlauncher is sensitive to .NET versions
+    dotnet-sdk = dotnetCorePackages.sdk_8_0;
+    dotnet-runtime = dotnetCorePackages.runtime_8_0;
+
     dotnetFlags = [
       "-p:BuildHash=${rev}"
       "-p:PublishSingleFile=false"
@@ -31,7 +35,7 @@ in
 
     postPatch = ''
       substituteInPlace lib/FFXIVQuickLauncher/src/XIVLauncher.Common/Game/Patch/Acquisition/Aria/AriaHttpPatchAcquisition.cs \
-        --replace 'ariaPath = "aria2c"' 'ariaPath = "${aria2}/bin/aria2c"'
+        --replace-fail 'ariaPath = "aria2c"' 'ariaPath = "${aria2}/bin/aria2c"'
     '';
 
     postInstall = ''
@@ -48,7 +52,7 @@ in
       }).run;
     in ''
       substituteInPlace $out/bin/XIVLauncher.Core \
-        --replace 'exec' 'exec ${steam-run}/bin/steam-run'
+        --replace-fail 'exec' 'exec ${steam-run}/bin/steam-run'
     '') + ''
       wrapProgram $out/bin/XIVLauncher.Core --prefix GST_PLUGIN_SYSTEM_PATH_1_0 ":" "$GST_PLUGIN_SYSTEM_PATH_1_0"
       # the reference to aria2 gets mangled as UTF-16LE and isn't detectable by nix: https://github.com/NixOS/nixpkgs/issues/220065