Compare commits

...

30 Commits

Author SHA1 Message Date
b388a6a2d8 chore(deps): update dependency openprinting/cups to v2.4.7 (#15)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #15
Co-authored-by: Renovator Bot <renovator@rknet.org>
Co-committed-by: Renovator Bot <renovator@rknet.org>
2023-10-09 14:20:57 +02:00
e42d325030 chore(deps): update dependency openprinting/cups to v2.4.6 (#13)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
Reviewed-on: #13
Co-authored-by: Renovator Bot <renovator@rknet.org>
Co-committed-by: Renovator Bot <renovator@rknet.org>
2023-06-22 13:31:50 +02:00
d37f7eed35 chore(deps): update dependency openprinting/cups to v2.4.5 (#12)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
Reviewed-on: #12
Co-authored-by: Renovator Bot <renovator@rknet.org>
Co-committed-by: Renovator Bot <renovator@rknet.org>
2023-06-14 13:16:09 +02:00
30216648f2 chore(deps): update dependency openprinting/cups to v2.4.4 (#11)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
Reviewed-on: #11
Co-authored-by: Renovator Bot <renovator@rknet.org>
Co-committed-by: Renovator Bot <renovator@rknet.org>
2023-06-06 16:15:59 +02:00
5c2befe23d chore(deps): update dependency openprinting/cups to v2.4.3 (#10)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
Reviewed-on: #10
Co-authored-by: Renovator Bot <renovator@rknet.org>
Co-committed-by: Renovator Bot <renovator@rknet.org>
2023-06-05 10:47:16 +02:00
28a0e262bd
fix drone-matrix template
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-08 21:29:04 +01:00
b21fd31898 chore(deps): update dependency openprinting/cups to v2.4.2 (#9)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: Renovator Bot <renovator@rknet.org>
Co-committed-by: Renovator Bot <renovator@rknet.org>
2022-05-26 15:45:31 +02:00
267805319b
fix suffix splitting
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-01-28 14:24:16 +01:00
dae9026410
fix: auto-detect release version from git tag
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-01-28 13:36:47 +01:00
4556772ee8 chore(deps): update dependency openprinting/cups to v2.4.1 (#8)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
Co-authored-by: Renovator Bot <renovator@rknet.org>
Co-committed-by: Renovator Bot <renovator@rknet.org>
2022-01-28 12:05:10 +01:00
10b9674a06 fix: fix german localization template (#7)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
Co-authored-by: Robert Kaussow <xoxys@rknet.org>
Co-committed-by: Robert Kaussow <xoxys@rknet.org>
2021-12-16 11:22:09 +01:00
b19a5fc07d
chore: bump release
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2021-12-12 15:11:43 +01:00
ff292a3ee7
fix: add dir /usr/share/cups/banners
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-12 15:03:32 +01:00
f4c578278e chore: adjust changelog template to link to prs instead of issues (#6)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
Co-authored-by: Robert Kaussow <xoxys@rknet.org>
Co-committed-by: Robert Kaussow <xoxys@rknet.org>
2021-12-12 13:36:25 +01:00
403f576071
chore: add gitignore file
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-12 13:29:35 +01:00
65d43abd26 chore(deps): update dependency openprinting/cups to v2.4.0 (#5)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: Renovator Bot <renovator@rknet.org>
Co-committed-by: Renovator Bot <renovator@rknet.org>
2021-12-04 14:59:40 +01:00
23bccafac9 chore(deps): update dependency openprinting/cups to v2.3.3op2 (#4)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
Co-authored-by: Renovator Bot <renovator@rknet.org>
Co-committed-by: Renovator Bot <renovator@rknet.org>
2021-10-24 16:46:00 +02:00
cb77f82c8b
chore: use loose versioning in renovate config
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-24 16:08:23 +02:00
ffd5429fd4 refactor: modernize drone config (#1)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: Robert Kaussow <xoxys@rknet.org>
Co-committed-by: Robert Kaussow <xoxys@rknet.org>
2021-10-24 14:44:00 +02:00
0ee2d92880
fix refs to migrated repos
All checks were successful
continuous-integration/drone/push Build is passing
2020-09-27 22:48:45 +02:00
650d77e77c
[SKIP CI] fix typo 2020-06-12 23:11:46 +02:00
82980de381
[SKIP CI] fix build badge 2020-06-12 23:10:25 +02:00
aca9932ef6
[SKIP CI] fix build badge 2020-06-12 23:09:01 +02:00
6f03484126
add quit flag to source download
All checks were successful
continuous-integration/drone/push Build is passing
2020-06-12 13:30:30 +02:00
b525cdaa1c
restructure build output
Some checks failed
continuous-integration/drone/push Build is failing
2020-06-12 13:28:29 +02:00
2e3d9dc219 enable gitea release again
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2020-06-05 14:23:29 +02:00
62167f035e [SKIP CI] temp disable gitea releases
All checks were successful
continuous-integration/drone/tag Build is passing
2020-06-05 14:08:41 +02:00
acc4c2af3f bump default build version to v2.3.3
All checks were successful
continuous-integration/drone/push Build is passing
2020-06-05 14:05:40 +02:00
c0feb53574 bump default build version to v2.3.3
Some checks are pending
continuous-integration/drone/push Build is pending
2020-06-05 14:05:16 +02:00
db552093f7 refactor drone config
All checks were successful
continuous-integration/drone/push Build is passing
2020-06-05 14:01:51 +02:00
14 changed files with 779 additions and 167 deletions

23
.chglog/CHANGELOG.tpl.md Executable file
View File

@ -0,0 +1,23 @@
# Changelog
{{ range .Versions -}}
## {{ if .Tag.Previous }}[{{ .Tag.Name }}]({{ $.Info.RepositoryURL }}/compare/{{ .Tag.Previous.Name }}...{{ .Tag.Name }}){{ else }}{{ .Tag.Name }}{{ end }} ({{ datetime "2006-01-02" .Tag.Date }})
{{ range .CommitGroups -}}
### {{ .Title }}
{{ range .Commits -}}
- {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ (regexReplaceAll "(.*)/issues/(.*)" (regexReplaceAll "(Co-\\w*-by.*)" .Subject "") "${1}/pulls/${2}") | trim }}
{{ end }}
{{- end -}}
{{- if .NoteGroups -}}
{{ range .NoteGroups -}}
### {{ .Title }}
{{ range .Notes }}
{{ .Body }}
{{ end }}
{{ end -}}
{{ end -}}
{{ end -}}

25
.chglog/config.yml Executable file
View File

@ -0,0 +1,25 @@
style: github
template: CHANGELOG.tpl.md
info:
title: CHANGELOG
repository_url: https://gitea.rknet.org/rpmbuild/cups
options:
commit_groups:
title_maps:
feat: Features
fix: Bug Fixes
perf: Performance Improvements
refactor: Code Refactoring
chore: Others
test: Testing
ci: CI Pipeline
docs: Documentation
header:
pattern: "^(\\w*)(?:\\(([\\w\\$\\.\\-\\*\\s]*)\\))?\\:\\s(.*)$"
pattern_maps:
- Type
- Scope
- Subject
notes:
keywords:
- BREAKING CHANGE

3
.drone.env Normal file
View File

@ -0,0 +1,3 @@
# renovate: datasource=github-releases depName=OpenPrinting/cups versioning=loose
export CUPS_VERSION="${CUPS_VERSION:-v2.4.7}"
export CUPS_RELEASE="$(awk -F"-" '{print $2}' <<< $DRONE_TAG)"

132
.drone.jsonnet Normal file
View File

@ -0,0 +1,132 @@
local PipelineTest = {
kind: 'pipeline',
name: 'test',
platform: {
os: 'linux',
arch: 'amd64',
},
steps: [
{
name: 'markdownlint',
image: 'thegeeklab/markdownlint-cli',
commands: [
"markdownlint 'README.md'",
],
},
],
trigger: {
ref: ['refs/heads/master', 'refs/tags/**', 'refs/pull/**'],
},
};
local DistVersion(version='7') = {
name: 'build-el' + version,
image: 'thegeeklab/rpmbuild:' + version,
commands: [
'make all',
'ls -l /drone/src/dist/RPMS/x86_64/',
],
};
local PipelineBuildPackage = {
kind: 'pipeline',
name: 'build-packages',
platform: {
os: 'linux',
arch: 'amd64',
},
steps: [
DistVersion(version='7'),
DistVersion(version='8'),
{
name: 'checksum',
image: 'alpine',
commands: [
'cd /drone/src/dist/RPMS/x86_64/ && sha256sum * > /drone/src/dist/sha256sum.txt',
],
},
{
name: 'changelog-generate',
image: 'thegeeklab/git-chglog',
commands: [
'git fetch -tq',
'git-chglog --no-color --no-emoji -o CHANGELOG.md ${DRONE_TAG:---next-tag unreleased unreleased}',
],
},
{
name: 'changelog-format',
image: 'thegeeklab/alpine-tools',
commands: [
'prettier CHANGELOG.md',
'prettier -w CHANGELOG.md',
],
},
{
name: 'publish-gitea',
image: 'plugins/gitea-release',
settings: {
api_key: {
from_secret: 'gitea_token',
},
base_url: 'https://gitea.rknet.org',
files: [
'/drone/src/dist/RPMS/x86_64/*',
'/drone/src/dist/sha256sum.txt',
],
note: 'CHANGELOG.md',
overwrite: true,
title: '${DRONE_TAG}',
},
when: {
ref: [
'refs/tags/**',
],
},
},
],
depends_on: [
'test',
],
trigger: {
ref: ['refs/heads/master', 'refs/tags/**', 'refs/pull/**'],
},
};
local PipelineNotifications = {
kind: 'pipeline',
name: 'notifications',
platform: {
os: 'linux',
arch: 'amd64',
},
steps: [
{
name: 'matrix',
image: 'thegeeklab/drone-matrix',
settings: {
homeserver: { from_secret: 'matrix_homeserver' },
roomid: { from_secret: 'matrix_roomid' },
template: 'Status: **{{ .Build.Status }}**<br/> Build: [{{ .Repo.Owner }}/{{ .Repo.Name }}]({{ .Build.Link }}){{ if .Build.Branch }} ({{ .Build.Branch }}){{ end }} by {{ .Commit.Author }}<br/> Message: {{ .Commit.Message.Title }}',
username: { from_secret: 'matrix_username' },
password: { from_secret: 'matrix_password' },
},
when: {
status: ['success', 'failure'],
},
},
],
depends_on: [
'build-packages',
],
trigger: {
ref: ['refs/heads/master', 'refs/tags/**'],
status: ['success', 'failure'],
},
};
[
PipelineTest,
PipelineBuildPackage,
PipelineNotifications,
]

View File

@ -1,104 +0,0 @@
def pipeline_build():
step_build = {
'image': 'xoxys/rpmbuild',
'name': 'build',
'environment': {
'CUPSRELEASE': '${DRONE_TAG##v}'
},
'commands': [
'[ -z "$CUPSRELEASE" ] && CUPSRELEASE=2.2.10',
'wget https://github.com/apple/cups/releases/download/v$CUPSRELEASE/cups-$CUPSRELEASE-source.tar.gz',
'mkdir ./rpms',
'rpmbuild -ta --define "_rpmdir $(pwd)/rpms" --without libusb1 cups-$CUPSRELEASE-source.tar.gz'
]
}
step_checksum = {
'name': 'checksum',
'image': 'alpine',
'commands': [
'apk add --no-cache coreutils',
'sha256sum -b rpms/x86_64/* > sha256sum.txt'
]
}
step_sign = {
'name': 'gpgsign',
'image': 'plugins/gpgsign:1',
'pull': 'always',
'settings': {
'key': { 'from_secret': 'gpgsign_key' },
'passphrase': { 'from_secret': 'gpgsign_passphrase' },
'detach_sign': True,
'files': [
'rpms/x86_64/*'
]
},
'when': {
'ref': {
'exclude': ['refs/pull/**'],
},
},
}
step_publish = {
'name': 'publish',
'image': 'plugins/gitea-release',
'settings': {
'base_url': 'https://gitea.rknet.org',
'api_key': { 'from_secret': 'gitea_token' },
'files': [
'rpms/x86_64/*',
'sha256sum.txt'
],
'title': '${DRONE_TAG}'
},
'when': {
'ref': ['refs/tags/**'],
}
}
return {
'kind': 'pipeline',
'name': 'build',
'steps': [
step_build,
step_checksum,
step_sign,
step_publish
]
}
def pipeline_notify(deps=[]):
step_matrix = {
'name': 'matrix',
'image': 'plugins/matrix',
'settings': {
'homeserver': 'https://matrix.rknet.org',
'roomid': 'MtidqQXWWAtQcByBhH:rknet.org',
'template': 'Status: **{{ build.status }}**<br/> Build: [{{ repo.Owner }}/{{ repo.Name }}]({{ build.link }}) ({{ build.branch }}) by {{ build.author }}<br/> Message: {{ build.message }}',
'username': { 'from_secret': 'matrix_username' },
'password': { 'from_secret': 'matrix_password' },
}
}
return {
'kind': 'pipeline',
'name': 'notifications',
'steps': [
step_matrix,
],
'depends_on': deps,
'trigger': {
'ref': ['refs/heads/master', 'refs/tags/**'],
'status': [ 'success', 'failure' ],
},
}
def main():
return [
pipeline_build(),
pipeline_notify(deps=[pipeline_build().get('name')])
]

View File

@ -1,57 +1,85 @@
--- ---
kind: pipeline kind: pipeline
name: build name: test
platform: platform:
os: linux os: linux
arch: amd64 arch: amd64
steps: steps:
- name: build - name: markdownlint
image: xoxys/rpmbuild image: thegeeklab/markdownlint-cli
commands: commands:
- "[ -z \"$CUPSRELEASE\" ] && CUPSRELEASE=2.2.10" - markdownlint 'README.md'
- wget https://github.com/apple/cups/releases/download/v$CUPSRELEASE/cups-$CUPSRELEASE-source.tar.gz
- mkdir ./rpms
- "rpmbuild -ta --define \"_rpmdir $(pwd)/rpms\" --without libusb1 cups-$CUPSRELEASE-source.tar.gz"
environment:
CUPSRELEASE: "${DRONE_TAG##v}"
- name: checksum trigger:
image: alpine ref:
commands: - refs/heads/master
- apk add --no-cache coreutils - refs/tags/**
- "sha256sum -b rpms/x86_64/* > sha256sum.txt" - refs/pull/**
- name: gpgsign ---
pull: always kind: pipeline
image: plugins/gpgsign:1 name: build-packages
settings:
detach_sign: true
files:
- "rpms/x86_64/*"
key:
from_secret: gpgsign_key
passphrase:
from_secret: gpgsign_passphrase
when:
ref:
exclude:
- "refs/pull/**"
- name: publish platform:
image: plugins/gitea-release os: linux
settings: arch: amd64
api_key:
from_secret: gitea_token steps:
base_url: https://gitea.rknet.org - name: build-el7
files: image: thegeeklab/rpmbuild:7
- "rpms/x86_64/*" commands:
- sha256sum.txt - make all
title: "${DRONE_TAG}" - ls -l /drone/src/dist/RPMS/x86_64/
when:
ref: - name: build-el8
- "refs/tags/**" image: thegeeklab/rpmbuild:8
commands:
- make all
- ls -l /drone/src/dist/RPMS/x86_64/
- name: checksum
image: alpine
commands:
- cd /drone/src/dist/RPMS/x86_64/ && sha256sum * > /drone/src/dist/sha256sum.txt
- name: changelog-generate
image: thegeeklab/git-chglog
commands:
- git fetch -tq
- git-chglog --no-color --no-emoji -o CHANGELOG.md ${DRONE_TAG:---next-tag unreleased unreleased}
- name: changelog-format
image: thegeeklab/alpine-tools
commands:
- prettier CHANGELOG.md
- prettier -w CHANGELOG.md
- name: publish-gitea
image: plugins/gitea-release
settings:
api_key:
from_secret: gitea_token
base_url: https://gitea.rknet.org
files:
- /drone/src/dist/RPMS/x86_64/*
- /drone/src/dist/sha256sum.txt
note: CHANGELOG.md
overwrite: true
title: ${DRONE_TAG}
when:
ref:
- refs/tags/**
trigger:
ref:
- refs/heads/master
- refs/tags/**
- refs/pull/**
depends_on:
- test
--- ---
kind: pipeline kind: pipeline
@ -62,30 +90,36 @@ platform:
arch: amd64 arch: amd64
steps: steps:
- name: matrix - name: matrix
image: plugins/matrix image: thegeeklab/drone-matrix
settings: settings:
homeserver: https://matrix.rknet.org homeserver:
password: from_secret: matrix_homeserver
from_secret: matrix_password password:
roomid: MtidqQXWWAtQcByBhH:rknet.org from_secret: matrix_password
template: "Status: **{{ build.status }}**<br/> Build: [{{ repo.Owner }}/{{ repo.Name }}]({{ build.link }}) ({{ build.branch }}) by {{ build.author }}<br/> Message: {{ build.message }}" roomid:
username: from_secret: matrix_roomid
from_secret: matrix_username template: "Status: **{{ .Build.Status }}**<br/> Build: [{{ .Repo.Owner }}/{{ .Repo.Name }}]({{ .Build.Link }}){{ if .Build.Branch }} ({{ .Build.Branch }}){{ end }} by {{ .Commit.Author }}<br/> Message: {{ .Commit.Message.Title }}"
username:
from_secret: matrix_username
when:
status:
- success
- failure
trigger: trigger:
ref: ref:
- refs/heads/master - refs/heads/master
- "refs/tags/**" - refs/tags/**
status: status:
- success - success
- failure - failure
depends_on: depends_on:
- build - build-packages
--- ---
kind: signature kind: signature
hmac: 1ded387fbbaa7f8c65b0d80499e0c3bac52839f76e8a5530a5ca2ffd3032c02a hmac: ae411b705b8d3e347ad85503dac21d286bffe6a0aa69949ed86617b9e23d581b
... ...

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
dist/
CHANGELOG.md

6
.markdownlint.yml Normal file
View File

@ -0,0 +1,6 @@
---
default: True
MD013: False
MD041: False
MD004:
style: dash

2
.prettierignore Normal file
View File

@ -0,0 +1,2 @@
.drone.yml
*.tpl.md

19
Makefile Normal file
View File

@ -0,0 +1,19 @@
WORKDIR := /drone/src
BASEDIR := dist
.PHONY: all
all: prepare build
.PHONY: prepare
prepare:
mkdir -p $(WORKDIR)/$(BASEDIR)/{BUILD,RPMS,SOURCES,SPECS,SRPMS}; \
rsync -avHAX -q --ignore-missing-args $(WORKDIR)/patches/ $(WORKDIR)/$(BASEDIR)/SOURCES/
.PHONY: build
build:
source $(WORKDIR)/.drone.env && \
rpmbuild -ba --without libusb1 --define "release_ $${CUPS_RELEASE:-0}" --define "version_ $${CUPS_VERSION##v}" cups.spec
.PHONY: clean
clean:
rm -rf $(WORKDIR)/$(BASEDIR)

View File

@ -1,9 +1,19 @@
# cups-rpm # cups
[![Build Status](https://drone.rknet.org/api/badges/xoxys/cups-rpm/status.svg)](https://drone.rknet.org/xoxys/cups-rpm) [![Build Status](https://img.shields.io/drone/build/rpmbuild/cups?logo=drone&server=https%3A%2F%2Fdrone.rknet.org)](https://drone.rknet.org/rpmbuild/cups)
[![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](https://gitea.rknet.org/rpmbuild/cups/src/branch/master/LICENSE)
[OpenPrinting CUPS](https://github.com/OpenPrinting/cups) is a standards-based, open source printing system for Linux® and other Unix®-like operating systems.
[CUPS](https://github.com/apple/cups) is a standards-based, open source printing system developed by Apple Inc. This repository is a simple wrapper to provide CI driven RMP builds from upstream releases.
This repository is a simple wrapper to provide CI driven RMP builds from upstream releases. All RPM's are built under CentOS 7. ## Build
```Shell
docker run -v $(pwd):/drone/src --workdir /drone/src -it thegeeklab/rpmbuild:7 make all
docker run -v $(pwd):/drone/src --workdir /drone/src -it thegeeklab/rpmbuild:8 make all
```
## License
This project is licensed under the MIT License - see the [LICENSE](https://gitea.rknet.org/rpmbuild/cups/src/branch/master/LICENSE) file for details.

456
cups.spec Normal file
View File

@ -0,0 +1,456 @@
#
# RPM "spec" file for CUPS.
#
# Original version by Jason McMullan <jmcc@ontv.com>.
#
# Copyright © 2020 by OpenPrinting
# Copyright © 2007-2019 by Apple Inc.
# Copyright © 1999-2007 by Easy Software Products, all rights reserved.
#
# Licensed under Apache License v2.0. See the file "LICENSE" for more
# information.
#
# Conditional build options (--with name/--without name):
#
# dbus - Enable/disable DBUS support (default = enable)
# dnssd - Enable/disable DNS-SD support (default = enable)
# libusb1 - Enable/disable LIBUSB 1.0 support (default = enable)
# static - Enable/disable static libraries (default = enable)
# systemd - Enable/disable systemd support (default = enable)
%{!?_with_dbus: %{!?_without_dbus: %define _with_dbus --with-dbus}}
%{?_with_dbus: %define _dbus --enable-dbus}
%{!?_with_dbus: %define _dbus --disable-dbus}
%{!?_with_dnssd: %{!?_without_dnssd: %define _with_dnssd --with-dnssd}}
%{?_with_dnssd: %define _dnssd --enable-avahi}
%{!?_with_dnssd: %define _dnssd --disable-avahi}
%{!?_with_libusb1: %{!?_without_libusb1: %define _with_libusb1 --with-libusb1}}
%{?_with_libusb1: %define _libusb1 --enable-libusb}
%{!?_with_libusb1: %define _libusb1 --disable-libusb}
%{!?_with_static: %{!?_without_static: %define _without_static --without-static}}
%{?_with_static: %define _static --enable-static}
%{!?_with_static: %define _static --disable-static}
%{!?_with_systemd: %{!?_without_systemd: %define _with_systemd --with-systemd}}
%{?_with_systemd: %define _systemd --enable-systemd}
%{!?_with_systemd: %define _systemd --disable-systemd}
%undefine _disable_source_fetch
Summary: CUPS
Name: cups
Version: %{version_}
Release: %{release_}%{?dist}
Epoch: 1
License: GPL
Group: System Environment/Daemons
Source: https://github.com/OpenPrinting/cups/releases/download/v%{version}/cups-%{version}-source.tar.gz
Url: http://www.cups.org
Packager: Robert Kaussow <mail@thegeeklab.de>
Vendor: OpenPrinting
# Package names are as defined for Red Hat (and clone) distributions
BuildRequires: gnutls-devel, pam-devel
%if %{?_with_dbus:1}%{!?_with_dbus:0}
BuildRequires: dbus-devel
%endif
%if %{?_with_dnssd:1}%{!?_with_dnssd:0}
BuildRequires: avahi-devel
%endif
%if %{?_with_libusb1:1}%{!?_with_libusb1:0}
BuildRequires: libusb-devel >= 1.0
%endif
%if %{?_with_systemd:1}%{!?_with_systemd:0}
BuildRequires: systemd-devel
%endif
# Use buildroot so as not to disturb the version already installed
BuildRoot: /tmp/%{name}-root
# Dependencies...
Requires: %{name}-libs = %{epoch}:%{version}
Obsoletes: lpd, lpr, LPRng
Provides: lpd, lpr, LPRng
Obsoletes: cups-da, cups-de, cups-es, cups-et, cups-fi, cups-fr, cups-he
Obsoletes: cups-id, cups-it, cups-ja, cups-ko, cups-nl, cups-no, cups-pl
Obsoletes: cups-pt, cups-ru, cups-sv, cups-zh
%package devel
Summary: CUPS - development environment
Group: Development/Libraries
Requires: %{name}-libs = %{epoch}:%{version}
%package libs
Summary: CUPS - shared libraries
Group: System Environment/Libraries
Provides: libcups1
%package lpd
Summary: CUPS - LPD support
Group: System Environment/Daemons
Requires: %{name} = %{epoch}:%{version} xinetd
%description
CUPS is the standards-based, open source printing system developed by
Apple Inc. and maintained by OpenPrinting for macOS® and other UNIX®-like
operating systems.
%description devel
This package provides the CUPS headers and development environment.
%description libs
This package provides the CUPS shared libraries.
%description lpd
This package provides LPD client support.
%prep
%setup
%build
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" LDFLAGS="$RPM_OPT_FLAGS" \
./configure %{_dbus} %{_dnssd} %{_libusb1} %{_static} %{_systemd} \
--enable-debug \
--with-exe-file-perm=0755 \
--with-cupsd-file-perm=0755 \
--with-log-file-perm=0600 \
--with-xinetd=no
# If we got this far, all prerequisite libraries must be here.
make
%install
# Make sure the RPM_BUILD_ROOT directory exists.
rm -rf $RPM_BUILD_ROOT
make BUILDROOT=$RPM_BUILD_ROOT install
rm -rf $RPM_BUILD_ROOT/usr/share/cups/data
%post
%if %{?_with_systemd:1}%{!?_with_systemd:0}
/bin/systemctl enable cups.service
if test $1 -ge 1; then
/bin/systemctl stop cups.service
/bin/systemctl start cups.service
fi
%else
/sbin/chkconfig --add cups
/sbin/chkconfig cups on
# Restart cupsd if we are upgrading...
if test $1 -gt 1; then
/sbin/service cups stop
/sbin/service cups start
fi
%endif
%post libs
/sbin/ldconfig
%preun
%if %{?_with_systemd:1}%{!?_with_systemd:0}
if test $1 -ge 1; then
/bin/systemctl stop cups.service
/bin/systemctl disable cups.service
fi
%else
if test $1 = 0; then
/sbin/service cups stop
/sbin/chkconfig --del cups
fi
%endif
%postun
%if %{?_with_systemd:1}%{!?_with_systemd:0}
if test $1 -ge 1; then
/bin/systemctl stop cups.service
/bin/systemctl start cups.service
fi
%else
if test $1 -ge 1; then
/sbin/service cups stop
/sbin/service cups start
fi
%endif
%postun libs
/sbin/ldconfig
%clean
rm -rf $RPM_BUILD_ROOT
%files
%docdir /usr/share/doc/cups
%defattr(-,root,root)
%dir /etc/cups
%config(noreplace) /etc/cups/*.conf
/etc/cups/cups-files.conf.default
/etc/cups/cupsd.conf.default
/etc/cups/snmp.conf.default
%dir /etc/cups/ppd
%attr(0700,root,root) %dir /etc/cups/ssl
%if %{?_with_dbus:1}%{!?_with_dbus:0}
# DBUS
/etc/dbus-1/system.d/*
%endif
# PAM
%dir /etc/pam.d
/etc/pam.d/*
%if %{?_with_systemd:1}%{!?_with_systemd:0}
# SystemD
/usr/lib/systemd/system/cups.*
%else
# Legacy init support on Linux
/etc/init.d/*
/etc/rc0.d/*
/etc/rc2.d/*
/etc/rc3.d/*
/etc/rc5.d/*
%endif
/usr/bin/cancel
/usr/bin/cupstestppd
/usr/bin/ippeveprinter
/usr/bin/ipptool
/usr/bin/lp*
%dir /usr/lib/cups
%dir /usr/lib/cups/backend
%if %{?_with_dnssd:1}%{!?_with_dnssd:0}
# DNS-SD
/usr/bin/ippfind
/usr/lib/cups/backend/dnssd
%endif
/usr/lib/cups/backend/http
/usr/lib/cups/backend/https
%attr(0700,root,root) /usr/lib/cups/backend/ipp
/usr/lib/cups/backend/ipps
%attr(0700,root,root) /usr/lib/cups/backend/lpd
/usr/lib/cups/backend/snmp
/usr/lib/cups/backend/socket
/usr/lib/cups/backend/usb
%dir /usr/lib/cups/cgi-bin
/usr/lib/cups/cgi-bin/*
%dir /usr/lib/cups/command
/usr/lib/cups/command/*
%dir /usr/lib/cups/daemon
/usr/lib/cups/daemon/cups-deviced
/usr/lib/cups/daemon/cups-driverd
/usr/lib/cups/daemon/cups-exec
%dir /usr/lib/cups/driver
%dir /usr/lib/cups/filter
/usr/lib/cups/filter/*
%dir /usr/lib/cups/monitor
/usr/lib/cups/monitor/*
%dir /usr/lib/cups/notifier
/usr/lib/cups/notifier/*
/usr/sbin/*
%dir /usr/share/cups
%dir /usr/share/cups/banners
%dir /usr/share/cups/drv
/usr/share/cups/drv/*
%dir /usr/share/cups/ipptool
/usr/share/cups/ipptool/*
%dir /usr/share/cups/mime
/usr/share/cups/mime/*
%dir /usr/share/cups/model
%dir /usr/share/cups/ppdc
/usr/share/cups/ppdc/*
%dir /usr/share/cups/templates
/usr/share/cups/templates/*
%if %{?_with_libusb1:1}%{!?_with_libusb1:0}
# LIBUSB quirks files
%dir /usr/share/cups/usb
/usr/share/cups/usb/*
%endif
%dir /usr/share/doc/cups
/usr/share/doc/cups/*.*
%dir /usr/share/doc/cups/help
/usr/share/doc/cups/help/accounting.html
/usr/share/doc/cups/help/admin.html
/usr/share/doc/cups/help/cgi.html
/usr/share/doc/cups/help/encryption.html
/usr/share/doc/cups/help/firewalls.html
/usr/share/doc/cups/help/glossary.html
/usr/share/doc/cups/help/kerberos.html
/usr/share/doc/cups/help/license.html
/usr/share/doc/cups/help/man-*.html
/usr/share/doc/cups/help/network.html
/usr/share/doc/cups/help/options.html
/usr/share/doc/cups/help/overview.html
/usr/share/doc/cups/help/policies.html
/usr/share/doc/cups/help/ref-*.html
/usr/share/doc/cups/help/security.html
/usr/share/doc/cups/help/sharing.html
/usr/share/doc/cups/help/translation.html
%dir /usr/share/doc/cups/images
/usr/share/doc/cups/images/*
#%dir /usr/share/doc/cups/ca
#/usr/share/doc/cups/ca/*
#%dir /usr/share/doc/cups/cs
#/usr/share/doc/cups/cs/*
%dir /usr/share/doc/cups/de
/usr/share/doc/cups/de/*
%dir /usr/share/doc/cups/es
/usr/share/doc/cups/es/*
#%dir /usr/share/doc/cups/fr
#/usr/share/doc/cups/fr/*
%dir /usr/share/doc/cups/ja
/usr/share/doc/cups/ja/*
%dir /usr/share/doc/cups/pt_BR
/usr/share/doc/cups/pt_BR/*
%dir /usr/share/doc/cups/ru
/usr/share/doc/cups/ru/*
%dir /usr/share/doc/cups/da
/usr/share/doc/cups/da/*
%dir /usr/share/doc/cups/fr
/usr/share/doc/cups/fr/*
%dir /usr/share/locale/ca
/usr/share/locale/ca/cups_ca.po
%dir /usr/share/locale/cs
/usr/share/locale/cs/cups_cs.po
%dir /usr/share/locale/de
/usr/share/locale/de/cups_de.po
%dir /usr/share/locale/en
/usr/share/locale/en/cups_en.po
%dir /usr/share/locale/es
/usr/share/locale/es/cups_es.po
%dir /usr/share/locale/fr
/usr/share/locale/fr/cups_fr.po
%dir /usr/share/locale/it
/usr/share/locale/it/cups_it.po
%dir /usr/share/locale/ja
/usr/share/locale/ja/cups_ja.po
%dir /usr/share/locale/pt_BR
/usr/share/locale/pt_BR/cups_pt_BR.po
%dir /usr/share/locale/ru
/usr/share/locale/ru/cups_ru.po
%dir /usr/share/locale/zh_CN
/usr/share/locale/zh_CN/cups_zh_CN.po
%dir /usr/share/locale/da
/usr/share/locale/da/cups_da.po
%dir /usr/share/man/man1
/usr/share/man/man1/cancel.1.gz
/usr/share/man/man1/cups.1.gz
/usr/share/man/man1/cupstestppd.1.gz
/usr/share/man/man1/ippeveprinter.1.gz
%if %{?_with_dnssd:1}%{!?_with_dnssd:0}
# DNS-SD
/usr/share/man/man1/ippfind.1.gz
%endif
/usr/share/man/man1/ipptool.1.gz
/usr/share/man/man1/lp.1.gz
/usr/share/man/man1/lpoptions.1.gz
/usr/share/man/man1/lpq.1.gz
/usr/share/man/man1/lpr.1.gz
/usr/share/man/man1/lprm.1.gz
/usr/share/man/man1/lpstat.1.gz
%dir /usr/share/man/man5
/usr/share/man/man5/*.conf.5.gz
/usr/share/man/man5/cupsd-logs.5.gz
/usr/share/man/man5/ipptoolfile.5.gz
/usr/share/man/man5/mime.*.5.gz
%dir /usr/share/man/man7
/usr/share/man/man7/ippevepcl.7.gz
/usr/share/man/man7/ippeveps.7.gz
%dir /usr/share/man/man8
/usr/share/man/man8/cups-deviced.8.gz
/usr/share/man/man8/cups-driverd.8.gz
/usr/share/man/man8/cups-exec.8.gz
/usr/share/man/man8/cups-snmp.8.gz
/usr/share/man/man8/cupsaccept.8.gz
/usr/share/man/man8/cupsctl.8.gz
/usr/share/man/man8/cupsfilter.8.gz
/usr/share/man/man8/cupsd.8.gz
/usr/share/man/man8/cupsd-helper.8.gz
/usr/share/man/man8/cupsdisable.8.gz
/usr/share/man/man8/cupsenable.8.gz
/usr/share/man/man8/cupsreject.8.gz
/usr/share/man/man8/lpadmin.8.gz
/usr/share/man/man8/lpc.8.gz
/usr/share/man/man8/lpinfo.8.gz
/usr/share/man/man8/lpmove.8.gz
%dir /var/cache/cups
%attr(0775,root,sys) %dir /var/cache/cups/rss
%dir /var/log/cups
%dir /var/run/cups
%attr(0711,lp,sys) %dir /var/run/cups/certs
%attr(0710,lp,sys) %dir /var/spool/cups
%attr(1770,lp,sys) %dir /var/spool/cups/tmp
# Desktop files
/usr/share/applications/*
/usr/share/icons/*
%files devel
%defattr(-,root,root)
%dir /usr/share/cups/examples
/usr/share/cups/examples/*
%dir /usr/share/man/man1
/usr/share/man/man1/cups-config.1.gz
/usr/share/man/man1/ppd*.1.gz
%dir /usr/share/man/man5
/usr/share/man/man5/ppdcfile.5.gz
/usr/share/man/man7/backend.7.gz
/usr/share/man/man7/filter.7.gz
/usr/share/man/man7/notifier.7.gz
/usr/lib/pkgconfig/cups.pc
/usr/bin/cups-config
/usr/bin/ppd*
%dir /usr/include/cups
/usr/include/cups/*
/usr/lib*/*.so
%if %{?_with_static:1}%{!?_with_static:0}
/usr/lib*/*.a
%endif
%dir /usr/share/doc/cups/help
/usr/share/doc/cups/help/api*.html
/usr/share/doc/cups/help/cupspm.*
/usr/share/doc/cups/help/postscript-driver.html
/usr/share/doc/cups/help/ppd-compiler.html
/usr/share/doc/cups/help/raster-driver.html
/usr/share/doc/cups/help/spec*.html
%files libs
%defattr(-,root,root)
/usr/lib*/*.so.*
%files lpd
%defattr(-,root,root)
%if %{?_with_systemd:1}%{!?_with_systemd:0}
# SystemD
/usr/lib/systemd/system/cups-lpd*
%else
# Legacy xinetd
/etc/xinetd.d/cups-lpd
%endif
%dir /usr/lib/cups
%dir /usr/lib/cups/daemon
/usr/lib/cups/daemon/cups-lpd
%dir /usr/share/man/man8
/usr/share/man/man8/cups-lpd.8.gz

0
patches/.keep Normal file
View File

4
renovate.json Normal file
View File

@ -0,0 +1,4 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": ["github>thegeeklab/renovate-presets:docker"]
}