Initial commit

This commit is contained in:
eabdullin 2025-07-24 14:32:21 +03:00
commit f90dbcd77c
5 changed files with 153 additions and 0 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
xorriso-1.5.7.tar

View File

@ -0,0 +1,20 @@
Patch by Robert Scheck <robert@fedoraproject.org> for libisoburn >= 1.5.4 to work around the Debian
specific aclocal/libtool behaviour not covering /usr/lib64 or /lib64 paths for 64 bit libraries.
--- libisoburn-1.5.4/configure 2021-01-30 15:32:57.000000000 +0100
+++ libisoburn-1.5.4/configure.rpath 2021-07-23 03:13:01.956656342 +0200
@@ -11541,10 +11541,13 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # Add ABI-specific directories to the system library path.
+ sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on

1
sources Normal file
View File

@ -0,0 +1 @@
ed64583189b745b9d64d2a0281e041fe7122f921b1557f34cb87c303f23798f6807c950c350a344a33818294f5e28f24e1b400103f9c1a60ac6d7c9f887d43ed xorriso-1.5.7.tar

120
xorriso.spec Normal file
View File

@ -0,0 +1,120 @@
Name: xorriso
Version: 1.5.7
Release: 1%{?dist}.alma.1
License: GPL-2.0-or-later
Summary: ISO-9660 and Rock Ridge image manipulation tool
URL: http://scdbackup.sourceforge.net/xorriso_eng.html
# Generated from https://www.gnu.org/software/xorriso/xorriso-1.5.7.tar
Source0: xorriso-%{version}.tar
Source3: xorriso_extract_iso_image.desktop
Patch1: libisoburn-1.5.4-rpath.patch
BuildRequires: gnupg2
BuildRequires: gcc, gcc-c++, make, readline-devel, libacl-devel, zlib-devel
BuildRequires: autoconf, automake, libtool
BuildRequires: libburn-devel >= 1.5.6
BuildRequires: libisofs-devel >= 1.5.6
Requires: %{name}%{?_isa} >= 1.5.6
Requires(post): %{_sbindir}/alternatives, coreutils
Requires(preun): %{_sbindir}/alternatives
%description
Xorriso is a program which copies file objects from POSIX compliant
filesystems into Rock Ridge enhanced ISO-9660 filesystems and allows
session-wise manipulation of such filesystems. It can load management
information of existing ISO images and it writes the session results
to optical media or to filesystem objects. Vice versa xorriso is able
to copy file objects out of ISO-9660 filesystems.
Filesystem manipulation capabilities surpass those of mkisofs. Xorriso
is especially suitable for backups, because of its high fidelity of
file attribute recording and its incremental update sessions. Optical
supported media: CD-R, CD-RW, DVD-R, DVD-RW, DVD+R, DVD+R DL, DVD+RW,
DVD-RAM, BD-R and BD-RE.
%prep
%setup -q
%patch1 -p1 -b .rpath
%build
%configure --disable-static
%make_build
%install
%make_install
# Don't install any libtool .la files
rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}.la
# Install the KDE service menu handler
%if 0%{!?_without_kde:1} && (0%{?fedora} || 0%{?rhel} == 7 || (0%{?rhel} && "%{name}" != "%{pkgname}"))
install -D -p -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_datadir}/kde4/services/ServiceMenus/xorriso_extract_iso_image.desktop
install -D -p -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_datadir}/kservices5/ServiceMenus/xorriso_extract_iso_image.desktop
%endif
# RHEL ships a xorriso package already
%if 0%{!?_without_kde:1}
sed -e 's@ xorriso @ xorriso @g' \
-i $RPM_BUILD_ROOT%{_datadir}/{kde4/services,kservices5}/ServiceMenus/xorriso_extract_iso_image.desktop
touch -c -r %{SOURCE3} $RPM_BUILD_ROOT%{_datadir}/{kde4/services,kservices5}/ServiceMenus/xorriso_extract_iso_image.desktop
%endif
# Prepare alternatives handling for cdrecord -> xorrecord and mkisofs -> xorriso
touch $RPM_BUILD_ROOT{%{_bindir}/{cdrecord,mkisofs},%{_mandir}/man1/{cdrecord,mkisofs}.1.gz}
# Some file cleanups
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
# Don't ship proof of concept for the moment
rm -f $RPM_BUILD_ROOT{%{_bindir},%{_infodir},%{_mandir}/man1}/xorriso-tcltk*
%check
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$RPM_BUILD_ROOT%{_libdir}"
cd releng
./run_all_auto -x ../xorriso/xorriso || (cat releng_generated_data/log.*; exit 1)
%ldconfig_scriptlets
%post
%{_sbindir}/alternatives --install %{_bindir}/cdrecord cdrecord %{_bindir}/xorrecord 50 \
--slave %{_mandir}/man1/cdrecord.1.gz cdrecord-cdrecordman %{_mandir}/man1/xorrecord.1.gz
%{_sbindir}/alternatives --install %{_bindir}/mkisofs mkisofs %{_bindir}/xorrisofs 50 \
--slave %{_mandir}/man1/mkisofs.1.gz mkisofs-mkisofsman %{_mandir}/man1/xorrisofs.1.gz
%preun
if [ $1 -eq 0 ]; then
%{_sbindir}/alternatives --remove cdrecord %{_bindir}/xorrecord
%{_sbindir}/alternatives --remove mkisofs %{_bindir}/xorrisofs
fi
%files
%license COPYING
%doc AUTHORS COPYRIGHT README ChangeLog
%ghost %{_bindir}/cdrecord
%ghost %{_bindir}/mkisofs
%{_bindir}/osirrox
%{_bindir}/xorrecord
%{_bindir}/xorriso
%{_bindir}/xorrisofs
%{_bindir}/xorriso-dd-target
%ghost %{_mandir}/man1/cdrecord.1*
%ghost %{_mandir}/man1/mkisofs.1*
%{_mandir}/man1/xorrecord.1*
%{_mandir}/man1/xorriso.1*
%{_mandir}/man1/xorrisofs.1*
%{_mandir}/man1/xorriso-dd-target.1*
%{_infodir}/xorrecord.info*
%{_infodir}/xorriso.info*
%{_infodir}/xorrisofs.info*
%{_infodir}/xorriso-dd-target.info*
%if 0%{!?_without_kde:1} && (0%{?fedora} || 0%{?rhel} == 7 || (0%{?rhel} && "%{name}" != "%{pkgname}"))
%{_datadir}/kde4/services/ServiceMenus/xorriso_extract_iso_image.desktop
%{_datadir}/kservices5/ServiceMenus/xorriso_extract_iso_image.desktop
%endif
%changelog
* Wed Jul 23 2025 Eduard Abdullin <eabdullin@almalinux.org> - 1.5.7-1.alma.1
- Initial build for AlmaLinux 10

View File

@ -0,0 +1,11 @@
[Desktop Entry]
Type=Service
X-KDE-ServiceTypes=KonqPopupMenu/Plugin
MimeType=application/x-cd-image;
Actions=xorrisoExtractHere;
[Desktop Action xorrisoExtractHere]
Name=Extract ISO image using Xorriso here
Name[de]=ISO-Abbild mit Xorriso hier entpacken
Icon=media-optical
Exec=/bin/nice -n 19 ionice -n7 -c3 xorriso -indev "%F" -osirrox on -cp_rx "*" "$(dirname %F)"