mirror of
https://abf.rosa.ru/djam/peazip.git
synced 2025-02-23 14:02:54 +00:00
114 lines
4.2 KiB
RPMSpec
114 lines
4.2 KiB
RPMSpec
%define debug_package %{nil}
|
|
%define pkgname PeaZip
|
|
|
|
Summary: File and archive manager
|
|
Name: peazip
|
|
Version: 9.9.1
|
|
Release: 1
|
|
License: LGPLv3+
|
|
Group: File tools
|
|
URL: https://peazip.github.io
|
|
Source0: https://github.com/peazip/PeaZip/archive/%{version}/%{name}-%{version}.tar.gz
|
|
#Source0: https://github.com/peazip/PeaZip/releases/download/%{name}/%{name}-%{version}.src.zip
|
|
Source1000: %{name}.rpmlintrc
|
|
# configure to run in users home appdata
|
|
Source1: altconf.txt
|
|
Source2: rosa-peazip.desktop
|
|
BuildRequires: dos2unix
|
|
BuildRequires: lazarus >= 3.0
|
|
BuildRequires: llvm17
|
|
#BuildRequires: qt5pas-devel
|
|
#BuildRequires: qt5-devel
|
|
BuildRequires: icoutils
|
|
BuildRequires: imagemagick
|
|
BuildRequires: qt515
|
|
BuildRequires: stdc++-gcc10-devel
|
|
Requires: p7zip
|
|
Requires: upx >= 3.09
|
|
Requires: brotli
|
|
Requires: zstd
|
|
Requires: arc
|
|
Requires: zpaq
|
|
# lazaris not build for ARM
|
|
#ExcludeArch: %{armx}
|
|
|
|
%description
|
|
PeaZip is a free cross-platform file archiver that provides an unified
|
|
portable GUI for many Open Source technologies like 7-Zip, FreeArc, PAQ,
|
|
UPX...
|
|
|
|
%files
|
|
%doc README.md LICENSE peazip-sources/res/share/copying peazip-sources/res/share/readme/*Linux.txt peazip-sources/res/share/*.pdf
|
|
%{_bindir}/*
|
|
%{_datadir}/icons/hicolor/*/apps/*.png
|
|
%{_datadir}/applications/*.desktop
|
|
%{_datadir}/kde4/services/ServiceMenus/*.desktop
|
|
%{_datadir}/%{name}
|
|
|
|
|
|
#---------------------------------------------------------------------
|
|
|
|
%prep
|
|
%setup -qn %{pkgname}-%{version}
|
|
%apply_patches
|
|
pushd peazip-sources
|
|
dos2unix readme*
|
|
popd
|
|
|
|
%build
|
|
#lazbuild packages/metadarkstyle-main/metadarkstyle.lpk
|
|
lazbuild peazip-sources/dev/metadarkstyle/metadarkstyle.lpk
|
|
|
|
lazbuild peazip-sources/dev/project_peach.lpi
|
|
lazbuild peazip-sources/dev/project_pea.lpi
|
|
|
|
|
|
%install
|
|
install -d %{buildroot}%{_bindir}
|
|
install -d %{buildroot}%{_datadir}/%{name}/res/share
|
|
cp -a peazip-sources/res/{bin,conf} %{buildroot}%{_datadir}/%{name}/res
|
|
cp -a peazip-sources/res/share/{batch,icons,lang,presets,themes} %{buildroot}%{_datadir}/%{name}/res/share
|
|
install -Dm0644 %{SOURCE1} %{buildroot}%{_datadir}/%{name}/res/conf
|
|
|
|
# rm windows batch
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/res/share/batch//Windows %{buildroot}%{_datadir}/%{name}/res/share/batch//bat
|
|
|
|
#install helper apps
|
|
install -d %{buildroot}%{_datadir}/%{name}/res/bin/{7z,upx,zstd,brotli,arc,zpaq}
|
|
ln -s %{_bindir}/7z %{buildroot}%{_datadir}/%{name}/res/bin/7z/7z
|
|
ln -s %{_bindir}/upx %{buildroot}%{_datadir}/%{name}/res/bin/upx/upx
|
|
ln -s %{_bindir}/zstd %{buildroot}%{_datadir}/%{name}/res/bin/zstd/zstd
|
|
ln -s %{_bindir}/brotli %{buildroot}%{_datadir}/%{name}/res/bin/brotli/brotli
|
|
ln -s %{_bindir}/zpaq %{buildroot}%{_datadir}/%{name}/res/bin/zpaq/zpaq
|
|
ln -s %{_bindir}/arc %{buildroot}%{_datadir}/%{name}/res/bin/arc/arc
|
|
|
|
# clean txt
|
|
find %{buildroot}%{_datadir}/%{name}/res/bin -type f -name "*.txt" -exec rm -f {} \;
|
|
|
|
|
|
install -Dm0755 peazip-sources/dev/pea %{buildroot}%{_datadir}/%{name}/pea
|
|
ln -s %{_datadir}/%{name}/pea %{buildroot}%{_bindir}/pea
|
|
install -Dm0755 peazip-sources/dev/%{name} %{buildroot}%{_datadir}/%{name}/%{name}
|
|
ln -s %{_datadir}/%{name}/%{name} %{buildroot}%{_bindir}/%{name}
|
|
|
|
install -d %{buildroot}%{_datadir}/applications
|
|
cp -a peazip-sources/res/share/batch/freedesktop_integration/*.desktop %{buildroot}%{_datadir}/applications
|
|
|
|
|
|
# KDE 4 integration
|
|
install -d %{buildroot}%{_datadir}/kde4/services/ServiceMenus
|
|
cp -a peazip-sources/res/share/batch/freedesktop_integration/KDE-servicemenus/KDE4-dolphin/*.desktop %{buildroot}%{_datadir}/kde4/services/ServiceMenus/
|
|
|
|
# install icons
|
|
pushd peazip-sources/res/share/batch/freedesktop_integration
|
|
for x in 16 24 32 48 64 96 128 256; do
|
|
install -d %{buildroot}%{_iconsdir}/hicolor/${x}x${x}/apps/
|
|
convert -resize ${x}x${x} peazip.png %{buildroot}%{_iconsdir}/hicolor/${x}x${x}/apps/peazip.png
|
|
convert -resize ${x}x${x} peazip_add.png %{buildroot}%{_iconsdir}/hicolor/${x}x${x}/apps/peazip_add.png
|
|
convert -resize ${x}x${x} peazip_extract.png %{buildroot}%{_iconsdir}/hicolor/${x}x${x}/apps/peazip_extract.png
|
|
done
|
|
popd
|
|
|
|
# clean
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/res/share/icons/{*.ico,*.icl}
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/res/share/batch/{*.bat,SendTo,Windows\ 11\ mini\ context\ menu,macOS\ service\ menus,freedesktop_integration}
|