c0fd8f46f1
Resolves: RHEL-62834
208 lines
7.0 KiB
RPMSpec
208 lines
7.0 KiB
RPMSpec
# the package can work with devices from network, so use hardened build
|
|
%global _hardened_build 1
|
|
|
|
Name: lprint
|
|
Version: 1.3.1
|
|
Release: 8%{?dist}
|
|
Summary: A Label Printer Application
|
|
|
|
License: Apache-2.0
|
|
URL: https://www.msweet.org/lprint
|
|
Source0: https://github.com/michaelrsweet/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.gz
|
|
Source1: lprint.conf
|
|
|
|
|
|
# UPSTREAM PATCHES
|
|
# fix putting state file into correct place
|
|
# https://github.com/michaelrsweet/lprint/commit/648bc20171
|
|
Patch001: 0001-Update-state-filename-to-current-PAPPL-standard-rena.patch
|
|
# https://github.com/michaelrsweet/lprint/pull/151
|
|
Patch002: 0001-lprint.c-Enable-TLS-support-in-Web-UI.patch
|
|
|
|
|
|
# dns-sd support for register/sharing devices
|
|
BuildRequires: pkgconfig(avahi-client) >= 0.7
|
|
# uses CUPS API for arrays, options, rastering, HTTP, IPP support
|
|
BuildRequires: pkgconfig(cups) >= 2.4.0
|
|
# written in C
|
|
BuildRequires: gcc
|
|
# for autosetup
|
|
BuildRequires: git-core
|
|
# uses Makefile
|
|
BuildRequires: make
|
|
# the basic printer application related structures are now implemented in PAPPL
|
|
BuildRequires: pkgconfig(pappl) >= 1.2
|
|
# using pkg-config in configure script
|
|
BuildRequires: pkgconf-pkg-config
|
|
# for macros in rpm scriptlets
|
|
BuildRequires: systemd-rpm-macros
|
|
|
|
# lprint server can run as a systemd service, but to don't require systemd by default,
|
|
# require filesystem (provides /usr/lib/systemd/system too)
|
|
Requires: filesystem
|
|
# RHEL-67908 lprint requires avahi-daemon.socket, but does not install avahi
|
|
Requires: avahi
|
|
|
|
%description
|
|
LPrint is a label printer application for macOS and Linux. Basically,
|
|
LPrint is a print spooler optimized for label printing. It accepts
|
|
"raw" print data as well as PNG images (like those used for shipping
|
|
labels by most shippers' current web APIs) and has built-in "drivers"
|
|
to send the print data to USB and network-connected label printers.
|
|
|
|
|
|
%prep
|
|
%autosetup -S git
|
|
|
|
|
|
%build
|
|
# use gcc
|
|
export CC=%{__cc}
|
|
|
|
# get system default CFLAGS and LDFLAGS
|
|
%set_build_flags
|
|
|
|
%configure
|
|
|
|
%make_build
|
|
|
|
|
|
%install
|
|
%make_install DESTDIR=''
|
|
|
|
install -p -D -m 0644 %{SOURCE1} %{buildroot}/%{_sysconfdir}/lprint.conf
|
|
|
|
%pre
|
|
# migration scriptlet to take care of incorrect conf locations
|
|
if [ $1 -gt 1 ]
|
|
then
|
|
# daemon moved /etc/lprint.conf into /var/lib/lprint.state if the latter was missing and
|
|
# no HOME env set - this is incorrect, move it back to /etc (server-options are present only in
|
|
# system conf file). It was daemon solution for migration of configuration after fixing the bug
|
|
# which gets fixed by next scriptlet (the state was written into /etc)
|
|
if test -f /var/lib/lprint.state
|
|
then
|
|
! grep -q "^server-options" /var/lib/lprint.state || mv -f /var/lib/lprint.state /etc/lprint.conf
|
|
fi
|
|
|
|
# the original issue - state was written into /etc instead of /var/lib - check if the /etc/lprint.conf
|
|
# is an actual state file, and if it is, move it into right directory if state file does not exist.
|
|
if test ! -f /var/lib/lprint.state -a -f /etc/lprint.conf
|
|
then
|
|
# if the lprint.conf is the default one from RPM, do not move
|
|
grep -q "^server-options" /etc/lprint.conf || mv -f /etc/lprint.conf /var/lib/lprint.state
|
|
fi
|
|
fi
|
|
|
|
%post
|
|
# generate an empty state file to prevent /etc config file being moved into
|
|
# /var/lib/ - it will be rewritten by the daemon either way
|
|
if test ! -f /var/lib/lprint.state
|
|
then
|
|
touch /var/lib/lprint.state
|
|
fi
|
|
|
|
%systemd_post lprint.service
|
|
|
|
%preun
|
|
%systemd_preun lprint.service
|
|
|
|
%postun
|
|
%systemd_postun_with_restart lprint.service
|
|
|
|
%files
|
|
%doc README.md DOCUMENTATION.md CONTRIBUTING.md CHANGES.md
|
|
%license LICENSE NOTICE
|
|
%config(noreplace) %{_sysconfdir}/lprint.conf
|
|
%{_bindir}/lprint
|
|
%{_mandir}/man1/lprint-add.1*
|
|
%{_mandir}/man1/lprint-cancel.1*
|
|
%{_mandir}/man1/lprint-default.1*
|
|
%{_mandir}/man1/lprint-delete.1*
|
|
%{_mandir}/man1/lprint-devices.1*
|
|
%{_mandir}/man1/lprint-drivers.1*
|
|
%{_mandir}/man1/lprint-jobs.1*
|
|
%{_mandir}/man1/lprint-modify.1*
|
|
%{_mandir}/man1/lprint-options.1*
|
|
%{_mandir}/man1/lprint-printers.1*
|
|
%{_mandir}/man1/lprint-server.1*
|
|
%{_mandir}/man1/lprint-shutdown.1*
|
|
%{_mandir}/man1/lprint-status.1*
|
|
%{_mandir}/man1/lprint-submit.1*
|
|
%{_mandir}/man1/lprint.1*
|
|
%{_mandir}/man5/lprint.conf.5*
|
|
%{_unitdir}/lprint.service
|
|
%ghost %verify(not mode) %{_sharedstatedir}/lprint.state
|
|
|
|
|
|
%changelog
|
|
* Mon Nov 18 2024 Zdenek Dohnal <zdohnal@redhat.com> - 1.3.1-8
|
|
- RHEL-62834 ignore the mode on lprint.state
|
|
|
|
* Mon Nov 18 2024 Zdenek Dohnal <zdohnal@redhat.com> - 1.3.1-7
|
|
- RHEL-62834 Fix post scriptlet
|
|
|
|
* Mon Nov 18 2024 Zdenek Dohnal <zdohnal@redhat.com> - 1.3.1-6
|
|
- RHEL-67908 lprint requires avahi-daemon.socket, but does not install avahi
|
|
|
|
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 1.3.1-5
|
|
- Bump release for October 2024 mass rebuild:
|
|
Resolves: RHEL-64018
|
|
|
|
* Wed Oct 16 2024 Zdenek Dohnal <zdohnal@redhat.com> - 1.3.1-4
|
|
- RHEL-62834 Fix post scriptlet
|
|
|
|
* Thu Aug 08 2024 Zdenek Dohnal <zdohnal@redhat.com> - 1.3.1-3
|
|
- rebuilt with updated pappl
|
|
|
|
* Tue Aug 06 2024 Zdenek Dohnal <zdohnal@redhat.com> - 1.3.1-2
|
|
- RHEL-25502 set common server settings by /etc/lprint.conf
|
|
|
|
* Wed Jul 17 2024 Zdenek Dohnal <zdohnal@redhat.com> - 1.3.1-1
|
|
- RHEL-25806 [lprint] rebase lprint to 1.3.1 or newer upstream version
|
|
|
|
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 1.2.0-7
|
|
- Bump release for June 2024 mass rebuild
|
|
|
|
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.0-6
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
|
|
|
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.0-5
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
|
|
|
* Wed Jul 26 2023 Zdenek Dohnal <zdohnal@redhat.com> - 1.2.0-4
|
|
- SPDX migration and require filesystem instead of systemd
|
|
|
|
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.0-3
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
|
|
|
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.0-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
|
|
|
* Tue Jan 03 2023 Zdenek Dohnal <zdohnal@redhat.com> - 1.2.0-1
|
|
- 2157610 - lprint-1.2.0 is available
|
|
|
|
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.0-4
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
|
|
|
* Fri May 06 2022 Zdenek Dohnal <zdohnal@redhat.com> - 1.1.0-3
|
|
- path to lprint was hardcoded in service file
|
|
|
|
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.0-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
|
|
|
* Tue Jan 04 2022 Zdenek Dohnal <zdohnal@redhat.com> - 1.1.0-1
|
|
- 2035381 - lprint-1.1.0 is available
|
|
|
|
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.0-4
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
|
|
|
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.0-3
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
|
|
|
* Thu Nov 05 2020 Zdenek Dohnal <zdohnal@redhat.com> - 1.0-2
|
|
- use smaller git-core instead of git
|
|
|
|
* Mon Aug 17 2020 Zdenek Dohnal <zdohnal@redhat.com> - 1.0-1
|
|
- Initial import (#1867587)
|