Compare commits
30 Commits
Author | SHA1 | Date | |
---|---|---|---|
b388a6a2d8 | |||
e42d325030 | |||
d37f7eed35 | |||
30216648f2 | |||
5c2befe23d | |||
28a0e262bd | |||
b21fd31898 | |||
267805319b | |||
dae9026410 | |||
4556772ee8 | |||
10b9674a06 | |||
b19a5fc07d | |||
ff292a3ee7 | |||
f4c578278e | |||
403f576071 | |||
65d43abd26 | |||
23bccafac9 | |||
cb77f82c8b | |||
ffd5429fd4 | |||
0ee2d92880 | |||
650d77e77c | |||
82980de381 | |||
aca9932ef6 | |||
6f03484126 | |||
b525cdaa1c | |||
2e3d9dc219 | |||
62167f035e | |||
acc4c2af3f | |||
c0feb53574 | |||
db552093f7 |
23
.chglog/CHANGELOG.tpl.md
Executable file
23
.chglog/CHANGELOG.tpl.md
Executable 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
25
.chglog/config.yml
Executable 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
3
.drone.env
Normal 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
132
.drone.jsonnet
Normal 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,
|
||||
]
|
104
.drone.star
104
.drone.star
@ -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')])
|
||||
]
|
152
.drone.yml
152
.drone.yml
@ -1,57 +1,85 @@
|
||||
---
|
||||
kind: pipeline
|
||||
name: build
|
||||
name: test
|
||||
|
||||
platform:
|
||||
os: linux
|
||||
arch: amd64
|
||||
|
||||
steps:
|
||||
- name: build
|
||||
image: xoxys/rpmbuild
|
||||
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"
|
||||
environment:
|
||||
CUPSRELEASE: "${DRONE_TAG##v}"
|
||||
- name: markdownlint
|
||||
image: thegeeklab/markdownlint-cli
|
||||
commands:
|
||||
- markdownlint 'README.md'
|
||||
|
||||
- name: checksum
|
||||
image: alpine
|
||||
commands:
|
||||
- apk add --no-cache coreutils
|
||||
- "sha256sum -b rpms/x86_64/* > sha256sum.txt"
|
||||
trigger:
|
||||
ref:
|
||||
- refs/heads/master
|
||||
- refs/tags/**
|
||||
- refs/pull/**
|
||||
|
||||
- name: gpgsign
|
||||
pull: always
|
||||
image: plugins/gpgsign:1
|
||||
settings:
|
||||
detach_sign: true
|
||||
files:
|
||||
- "rpms/x86_64/*"
|
||||
key:
|
||||
from_secret: gpgsign_key
|
||||
passphrase:
|
||||
from_secret: gpgsign_passphrase
|
||||
when:
|
||||
ref:
|
||||
exclude:
|
||||
- "refs/pull/**"
|
||||
---
|
||||
kind: pipeline
|
||||
name: build-packages
|
||||
|
||||
- name: publish
|
||||
image: plugins/gitea-release
|
||||
settings:
|
||||
api_key:
|
||||
from_secret: gitea_token
|
||||
base_url: https://gitea.rknet.org
|
||||
files:
|
||||
- "rpms/x86_64/*"
|
||||
- sha256sum.txt
|
||||
title: "${DRONE_TAG}"
|
||||
when:
|
||||
ref:
|
||||
- "refs/tags/**"
|
||||
platform:
|
||||
os: linux
|
||||
arch: amd64
|
||||
|
||||
steps:
|
||||
- name: build-el7
|
||||
image: thegeeklab/rpmbuild:7
|
||||
commands:
|
||||
- make all
|
||||
- ls -l /drone/src/dist/RPMS/x86_64/
|
||||
|
||||
- name: build-el8
|
||||
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
|
||||
@ -62,30 +90,36 @@ platform:
|
||||
arch: amd64
|
||||
|
||||
steps:
|
||||
- name: matrix
|
||||
image: plugins/matrix
|
||||
settings:
|
||||
homeserver: https://matrix.rknet.org
|
||||
password:
|
||||
from_secret: matrix_password
|
||||
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
|
||||
- name: matrix
|
||||
image: thegeeklab/drone-matrix
|
||||
settings:
|
||||
homeserver:
|
||||
from_secret: matrix_homeserver
|
||||
password:
|
||||
from_secret: matrix_password
|
||||
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
|
||||
when:
|
||||
status:
|
||||
- success
|
||||
- failure
|
||||
|
||||
trigger:
|
||||
ref:
|
||||
- refs/heads/master
|
||||
- "refs/tags/**"
|
||||
- refs/heads/master
|
||||
- refs/tags/**
|
||||
status:
|
||||
- success
|
||||
- failure
|
||||
- success
|
||||
- failure
|
||||
|
||||
depends_on:
|
||||
- build
|
||||
- build-packages
|
||||
|
||||
---
|
||||
kind: signature
|
||||
hmac: 1ded387fbbaa7f8c65b0d80499e0c3bac52839f76e8a5530a5ca2ffd3032c02a
|
||||
hmac: ae411b705b8d3e347ad85503dac21d286bffe6a0aa69949ed86617b9e23d581b
|
||||
|
||||
...
|
||||
|
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
dist/
|
||||
CHANGELOG.md
|
6
.markdownlint.yml
Normal file
6
.markdownlint.yml
Normal file
@ -0,0 +1,6 @@
|
||||
---
|
||||
default: True
|
||||
MD013: False
|
||||
MD041: False
|
||||
MD004:
|
||||
style: dash
|
2
.prettierignore
Normal file
2
.prettierignore
Normal file
@ -0,0 +1,2 @@
|
||||
.drone.yml
|
||||
*.tpl.md
|
19
Makefile
Normal file
19
Makefile
Normal 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)
|
18
README.md
18
README.md
@ -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
456
cups.spec
Normal 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
0
patches/.keep
Normal file
4
renovate.json
Normal file
4
renovate.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
||||
"extends": ["github>thegeeklab/renovate-presets:docker"]
|
||||
}
|
Reference in New Issue
Block a user