diff --git a/.reuse/dep5 b/.reuse/dep5 index e1c4096..ab0ea51 100644 --- a/.reuse/dep5 +++ b/.reuse/dep5 @@ -7,7 +7,7 @@ Files: README.md */README.md docs/* .github/ISSUE_TEMPLATE/* Copyright: 2023 - 2024 Benjamin Grande M. S. License: CC-BY-SA-4.0 -Files: salt/*/version +Files: version salt/*/version Copyright: 2023 - 2024 Benjamin Grande M. S. License: CC0-1.0 diff --git a/builder.yml b/builder.yml index e5dbafc..a131d66 100644 --- a/builder.yml +++ b/builder.yml @@ -1,8 +1,9 @@ -## SPDX-FileCopyrightText: 2023 - 2024 Benjamin Grande M. S. +## SPDX-FileCopyrightText: 2024 Benjamin Grande M. S. ## ## SPDX-License-Identifier: AGPL-3.0-or-later --- + git: baseurl: https://github.com prefix: ben-grande/ @@ -10,6 +11,8 @@ git: maintainers: - DF3834875B65758713D92E91A475969DE4E371E3 +key-dirs: + - ../qusal/keys/ backend-vmm: xen debug: true verbose: true @@ -66,8 +69,9 @@ sign-key: rpm: - DF3834875B65758713D92E91A475969DE4E371E3 -# repository-publish: -# components: current +#repository-publish: +# components: current-testing -# repository-upload-remote-host: -# rpm: user@yum.domain.org:/some/path +#repository-upload-remote-host: +# rpm: user@yum.qubes-os.org:/some/path +# deb: user@deb.qubes-os.org:/another/path diff --git a/rpm_spec/qusal-ansible.spec b/rpm_spec/qusal-ansible.spec index 4316f47..3a5fe33 100644 --- a/rpm_spec/qusal-ansible.spec +++ b/rpm_spec/qusal-ansible.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project ansible +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-ansible Version: 0.0.1 Release: 1%{?dist} Summary: Ansible environment in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -41,20 +42,28 @@ Install Ansible and use it on the "ansible" app qube. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -95,6 +104,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Thu Jun 13 2024 Ben Grande - a564b3a - feat: add TCP proxy for remote hosts diff --git a/rpm_spec/qusal-browser.spec b/rpm_spec/qusal-browser.spec index 4b7bc85..87e9098 100644 --- a/rpm_spec/qusal-browser.spec +++ b/rpm_spec/qusal-browser.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project browser +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-browser Version: 0.0.1 Release: 1%{?dist} Summary: Browser environment in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -49,20 +50,28 @@ Firefox-ESR, W3M or Lynx. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -103,6 +112,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Sun Jun 16 2024 Ben Grande - faa00fb - doc: update table of contents diff --git a/rpm_spec/qusal-debian-minimal.spec b/rpm_spec/qusal-debian-minimal.spec index d02f6f9..91b388b 100644 --- a/rpm_spec/qusal-debian-minimal.spec +++ b/rpm_spec/qusal-debian-minimal.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project debian-minimal +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-debian-minimal Version: 0.0.1 Release: 1%{?dist} Summary: Debian Minimal Template in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -43,20 +44,28 @@ it. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -95,6 +104,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Mon Mar 18 2024 Ben Grande - f9ead06 - fix: remove extraneous package repository updates diff --git a/rpm_spec/qusal-debian-xfce.spec b/rpm_spec/qusal-debian-xfce.spec index 28759ba..c68f4b8 100644 --- a/rpm_spec/qusal-debian-xfce.spec +++ b/rpm_spec/qusal-debian-xfce.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project debian-xfce +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-debian-xfce Version: 0.0.1 Release: 1%{?dist} Summary: Debian Xfce Template in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -40,20 +41,28 @@ Creates the Debian Xfce Template as well as a Disposable Template based on it. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -92,6 +101,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed Jun 12 2024 Ben Grande - fc22726 - feat: build and sign RPM packages diff --git a/rpm_spec/qusal-debian.spec b/rpm_spec/qusal-debian.spec index f564b84..9159c8c 100644 --- a/rpm_spec/qusal-debian.spec +++ b/rpm_spec/qusal-debian.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project debian +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-debian Version: 0.0.1 Release: 1%{?dist} Summary: Debian Template in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -40,20 +41,28 @@ Creates the Debian template as well as a Disposable Template based on it. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -92,6 +101,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Mon Mar 18 2024 Ben Grande - f9ead06 - fix: remove extraneous package repository updates diff --git a/rpm_spec/qusal-dev.spec b/rpm_spec/qusal-dev.spec index a942544..be11749 100644 --- a/rpm_spec/qusal-dev.spec +++ b/rpm_spec/qusal-dev.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project dev +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-dev Version: 0.0.1 Release: 1%{?dist} Summary: Development environment in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -47,20 +48,28 @@ allows. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -101,6 +110,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Mon Jun 17 2024 Ben Grande - 534db96 - doc: qusal proxy service requires configuration diff --git a/rpm_spec/qusal-docker.spec b/rpm_spec/qusal-docker.spec index d8df2d2..1102789 100644 --- a/rpm_spec/qusal-docker.spec +++ b/rpm_spec/qusal-docker.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project docker +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-docker Version: 0.0.1 Release: 1%{?dist} Summary: Docker installation in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -41,20 +42,28 @@ Setup docker in Qubes OS with the Docker repository. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -93,6 +102,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed May 29 2024 Ben Grande - 8accc47 - fix: remove old deb repository list format diff --git a/rpm_spec/qusal-dom0.spec b/rpm_spec/qusal-dom0.spec index 1df16b1..ba2098e 100644 --- a/rpm_spec/qusal-dom0.spec +++ b/rpm_spec/qusal-dom0.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project dom0 +%define license_csv AGPL-3.0-or-later,GPL-2.0-only,GPL-3.0-or-later,MIT ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-dom0 Version: 0.0.1 Release: 1%{?dist} Summary: Dom0 environment in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later AND GPL-2.0-only AND GPL-3.0-or-later AND MIT URL: https://github.com/ben-grande/qusal @@ -43,20 +44,28 @@ etc. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -95,6 +104,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Tue Jun 18 2024 Ben Grande - 8d5c1c9 - chore: typo in date command diff --git a/rpm_spec/qusal-dotfiles.spec b/rpm_spec/qusal-dotfiles.spec index d5aa4e9..59f21d1 100644 --- a/rpm_spec/qusal-dotfiles.spec +++ b/rpm_spec/qusal-dotfiles.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project dotfiles +%define license_csv AGPL-3.0-or-later,BSD-2-Clause,CC-BY-SA-3.0,CC-BY-SA-4.0,GFDL-1.3-or-later,GPL-2.0-only,GPL-3.0-only,GPL-3.0-or-later,MIT,Vim ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-dotfiles Version: 0.0.1 Release: 1%{?dist} Summary: Ben Grande's Dotfiles - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later AND BSD-2-Clause AND CC-BY-SA-3.0 AND CC-BY-SA-4.0 AND GFDL-1.3-or-later AND GPL-2.0-only AND GPL-3.0-only AND GPL-3.0-or-later AND MIT AND Vim URL: https://github.com/ben-grande/qusal @@ -55,20 +56,28 @@ Configuration and scripts targeting: %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then diff --git a/rpm_spec/qusal-electrum.spec b/rpm_spec/qusal-electrum.spec index 9e8daac..45baf6e 100644 --- a/rpm_spec/qusal-electrum.spec +++ b/rpm_spec/qusal-electrum.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project electrum +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-electrum Version: 0.0.1 Release: 1%{?dist} Summary: Electrum Bitcoin Wallet in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -57,20 +58,28 @@ usage from ever connecting to the internet. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -114,6 +123,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Tue Jun 04 2024 Ben Grande - 6e85416 - feat: add disposable qubes to bitcoin clients diff --git a/rpm_spec/qusal-element.spec b/rpm_spec/qusal-element.spec index 6a432ac..4e44d24 100644 --- a/rpm_spec/qusal-element.spec +++ b/rpm_spec/qusal-element.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project element +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-element Version: 0.0.1 Release: 1%{?dist} Summary: Element Matrix client installation in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -42,20 +43,28 @@ Matrix account. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -95,6 +104,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed May 29 2024 Ben Grande - 8accc47 - fix: remove old deb repository list format diff --git a/rpm_spec/qusal-fedora-minimal.spec b/rpm_spec/qusal-fedora-minimal.spec index 5ff994c..f9a5275 100644 --- a/rpm_spec/qusal-fedora-minimal.spec +++ b/rpm_spec/qusal-fedora-minimal.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project fedora-minimal +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-fedora-minimal Version: 0.0.1 Release: 1%{?dist} Summary: Fedora Minimal Template in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -43,20 +44,28 @@ it. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -96,6 +105,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed Jun 12 2024 Ben Grande - 6e7774a - feat: bump Fedora version diff --git a/rpm_spec/qusal-fedora-xfce.spec b/rpm_spec/qusal-fedora-xfce.spec index 5cd39d4..d8aaceb 100644 --- a/rpm_spec/qusal-fedora-xfce.spec +++ b/rpm_spec/qusal-fedora-xfce.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project fedora-xfce +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-fedora-xfce Version: 0.0.1 Release: 1%{?dist} Summary: Fedora Xfce Template in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -40,20 +41,28 @@ Creates the Fedora Xfce template as well as a Disposable Template based on it. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -92,6 +101,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed Jun 12 2024 Ben Grande - 6e7774a - feat: bump Fedora version diff --git a/rpm_spec/qusal-fedora.spec b/rpm_spec/qusal-fedora.spec index 388a520..a0f0b8d 100644 --- a/rpm_spec/qusal-fedora.spec +++ b/rpm_spec/qusal-fedora.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project fedora +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-fedora Version: 0.0.1 Release: 1%{?dist} Summary: Fedora Template in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -40,20 +41,28 @@ Creates the Fedora template as well as a Disposable Template based on it. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -92,6 +101,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed Jun 12 2024 Ben Grande - 6e7774a - feat: bump Fedora version diff --git a/rpm_spec/qusal-fetcher.spec b/rpm_spec/qusal-fetcher.spec index 33a8a35..38b6b8a 100644 --- a/rpm_spec/qusal-fetcher.spec +++ b/rpm_spec/qusal-fetcher.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project fetcher +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-fetcher Version: 0.0.1 Release: 1%{?dist} Summary: Fetch publicly accessible files over the internet in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -50,20 +51,28 @@ Supported protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -103,6 +112,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Thu Jun 13 2024 Ben Grande - 7a70535 - fix: Fedora 40 only has wget2 diff --git a/rpm_spec/qusal-kicksecure-minimal.spec b/rpm_spec/qusal-kicksecure-minimal.spec index 2c05089..6fcb506 100644 --- a/rpm_spec/qusal-kicksecure-minimal.spec +++ b/rpm_spec/qusal-kicksecure-minimal.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project kicksecure-minimal +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-kicksecure-minimal Version: 0.0.1 Release: 1%{?dist} Summary: Kicksecure Minimal Template in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -30,7 +31,6 @@ BuildArch: noarch Requires: qubes-mgmt-salt Requires: qubes-mgmt-salt-dom0 Requires: qusal-kicksecure-minimal -Requires: qusal-sys-cacher Requires: qusal-utils @@ -43,20 +43,28 @@ on it. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -96,6 +104,18 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Sat Jun 22 2024 Ben Grande - a6194e0 +- fix: remove cacher tag from Kicksecure template + +* Sat Jun 22 2024 Ben Grande - 7df3be4 +- fix: install caching client before common update + +* Fri Jun 21 2024 Ben Grande - bd5c635 +- fix: remove single quotes from Jinja regex + +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Sun Jun 16 2024 Ben Grande - faa00fb - doc: update table of contents diff --git a/rpm_spec/qusal-mail.spec b/rpm_spec/qusal-mail.spec index 8489c10..758af3c 100644 --- a/rpm_spec/qusal-mail.spec +++ b/rpm_spec/qusal-mail.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project mail +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-mail Version: 0.0.1 Release: 1%{?dist} Summary: Mail operations in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -60,20 +61,28 @@ causes problems. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -119,6 +128,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Tue May 14 2024 Ben Grande - d148599 - doc: nested list indentation diff --git a/rpm_spec/qusal-media.spec b/rpm_spec/qusal-media.spec index d928b7a..c7b0eb3 100644 --- a/rpm_spec/qusal-media.spec +++ b/rpm_spec/qusal-media.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project media +%define license_csv AGPL-3.0-or-later,CC0-1.0 ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-media Version: 0.0.1 Release: 1%{?dist} Summary: Media opener through disposables in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later AND CC0-1.0 URL: https://github.com/ben-grande/qusal @@ -43,20 +44,28 @@ files in a named disposable "disp-media" via MIME configuration. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -96,6 +105,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Tue May 28 2024 Ben Grande - 44ea4c5 - feat: add manual page reader diff --git a/rpm_spec/qusal-mgmt.spec b/rpm_spec/qusal-mgmt.spec index 9e38aae..a8e998a 100644 --- a/rpm_spec/qusal-mgmt.spec +++ b/rpm_spec/qusal-mgmt.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project mgmt +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-mgmt Version: 0.0.1 Release: 1%{?dist} Summary: Management environment in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -44,20 +45,28 @@ of a qube or for Salt Management on DomUs. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -97,6 +106,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Mon Jun 10 2024 Ben Grande - ffe03ba - fix: set global prefs for management_dispvm diff --git a/rpm_spec/qusal-mirage-builder.spec b/rpm_spec/qusal-mirage-builder.spec index 18a723d..a96e8cb 100644 --- a/rpm_spec/qusal-mirage-builder.spec +++ b/rpm_spec/qusal-mirage-builder.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project mirage-builder +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-mirage-builder Version: 0.0.1 Release: 1%{?dist} Summary: Mirage Builder environment in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -48,20 +49,28 @@ installed. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -101,6 +110,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Tue May 14 2024 Ben Grande - d148599 - doc: nested list indentation diff --git a/rpm_spec/qusal-opentofu.spec b/rpm_spec/qusal-opentofu.spec index d7ce966..c6b54c5 100644 --- a/rpm_spec/qusal-opentofu.spec +++ b/rpm_spec/qusal-opentofu.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project opentofu +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-opentofu Version: 0.0.1 Release: 1%{?dist} Summary: OpenTofu installation in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -42,20 +43,28 @@ of Terraform. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -94,6 +103,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed May 29 2024 Ben Grande - 8accc47 - fix: remove old deb repository list format diff --git a/rpm_spec/qusal-qubes-builder.spec b/rpm_spec/qusal-qubes-builder.spec index b95a8ac..8837f20 100644 --- a/rpm_spec/qusal-qubes-builder.spec +++ b/rpm_spec/qusal-qubes-builder.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project qubes-builder +%define license_csv AGPL-3.0-or-later,GPL-2.0-only ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-qubes-builder Version: 0.0.1 Release: 1%{?dist} Summary: Setup Qubes OS Builder V2 in Qubes OS itself - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later AND GPL-2.0-only URL: https://github.com/ben-grande/qusal @@ -53,20 +54,28 @@ and split-ssh-agent will also be installed. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -108,6 +117,12 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Sat Jun 22 2024 Ben Grande - 4276358 +- feat: add development goodies to Qubes Builder + +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed Jun 19 2024 Ben Grande - 99fb138 - fix: correct git repository name in policy diff --git a/rpm_spec/qusal-reader.spec b/rpm_spec/qusal-reader.spec index 3a3fbcf..ca51175 100644 --- a/rpm_spec/qusal-reader.spec +++ b/rpm_spec/qusal-reader.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project reader +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-reader Version: 0.0.1 Release: 1%{?dist} Summary: Reader environment as the default_dispvm in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -44,20 +45,28 @@ necessary packages will be installed in the template. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -98,6 +107,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Sun Jun 09 2024 Ben Grande - 899f7e4 - fix: add Fedora 40 Firefox desktop file to appmenu diff --git a/rpm_spec/qusal-remmina.spec b/rpm_spec/qusal-remmina.spec index 7597db5..3953071 100644 --- a/rpm_spec/qusal-remmina.spec +++ b/rpm_spec/qusal-remmina.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project remmina +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-remmina Version: 0.0.1 Release: 1%{?dist} Summary: Remmina Remote Desktop Client in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -42,20 +43,28 @@ you prefer to use an app qube, a qube named "remmina" will also be created. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -95,6 +104,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Mon Mar 18 2024 Ben Grande - f9ead06 - fix: remove extraneous package repository updates diff --git a/rpm_spec/qusal-signal.spec b/rpm_spec/qusal-signal.spec index e8c0293..171e299 100644 --- a/rpm_spec/qusal-signal.spec +++ b/rpm_spec/qusal-signal.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project signal +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-signal Version: 0.0.1 Release: 1%{?dist} Summary: Signal messaging app in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -42,20 +43,28 @@ Install Signal Desktop and creates an app qube named "signal". %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -96,6 +105,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed Jun 19 2024 Ben Grande - bf0a4bc - fix: terminate option parsing for qvm commands diff --git a/rpm_spec/qusal-ssh.spec b/rpm_spec/qusal-ssh.spec index 9b5b573..380cdc2 100644 --- a/rpm_spec/qusal-ssh.spec +++ b/rpm_spec/qusal-ssh.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project ssh +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-ssh Version: 0.0.1 Release: 1%{?dist} Summary: SSH remote login client in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -47,20 +48,28 @@ in as a one time connection or to an untrusted host use a DispVM based on %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -100,6 +109,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Thu Jun 13 2024 Ben Grande - a564b3a - feat: add TCP proxy for remote hosts diff --git a/rpm_spec/qusal-sys-audio.spec b/rpm_spec/qusal-sys-audio.spec index 039726e..3f5e968 100644 --- a/rpm_spec/qusal-sys-audio.spec +++ b/rpm_spec/qusal-sys-audio.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-audio +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-audio Version: 0.0.1 Release: 1%{?dist} Summary: Audio operations in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -45,20 +46,28 @@ the necessary packages for bluetooth with the provided state. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -98,6 +107,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Fri Jun 07 2024 Ben Grande - c7c85fb - fix: more restrictive Qrexec audio policy diff --git a/rpm_spec/qusal-sys-bitcoin.spec b/rpm_spec/qusal-sys-bitcoin.spec index 5754230..680dca7 100644 --- a/rpm_spec/qusal-sys-bitcoin.spec +++ b/rpm_spec/qusal-sys-bitcoin.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-bitcoin +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-bitcoin Version: 0.0.1 Release: 1%{?dist} Summary: Bitcoin Core in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -68,20 +69,28 @@ At least `1TB` of disk space is required. At block `829054` (2024-02-05), %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -125,6 +134,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Mon Jun 17 2024 Ben Grande - 43e1e32 - feat: bump Bitcoin version diff --git a/rpm_spec/qusal-sys-cacher.spec b/rpm_spec/qusal-sys-cacher.spec index 7e26703..b38647d 100644 --- a/rpm_spec/qusal-sys-cacher.spec +++ b/rpm_spec/qusal-sys-cacher.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-cacher +%define license_csv AGPL-3.0-or-later,GPL-2.0-only ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-cacher Version: 0.0.1 Release: 1%{?dist} Summary: Caching proxy server for software repositories in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later AND GPL-2.0-only URL: https://github.com/ben-grande/qusal @@ -60,20 +61,28 @@ The caching proxy supports: %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -118,6 +127,12 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Sat Jun 22 2024 Ben Grande - a6194e0 +- fix: remove cacher tag from Kicksecure template + +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Mon Jun 17 2024 Ben Grande - 59e8fc3 - fix: GUI Global Config precedes packaged policies @@ -261,6 +276,3 @@ fi * Mon Nov 13 2023 Ben Grande - 963e72c - chore: Fix unman copyright contact - -* Mon Nov 13 2023 Ben Grande - 5eebd78 -- refactor: initial commit diff --git a/rpm_spec/qusal-sys-electrs.spec b/rpm_spec/qusal-sys-electrs.spec index db620de..57f7894 100644 --- a/rpm_spec/qusal-sys-electrs.spec +++ b/rpm_spec/qusal-sys-electrs.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-electrs +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-electrs Version: 0.0.1 Release: 1%{?dist} Summary: Electrs in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -55,20 +56,28 @@ At least `200GB` of disk space is required. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -111,6 +120,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed Jun 19 2024 Ben Grande - 97b2496 - fix: start service after Qubes Service setup diff --git a/rpm_spec/qusal-sys-electrumx.spec b/rpm_spec/qusal-sys-electrumx.spec index d97ca2c..3672c90 100644 --- a/rpm_spec/qusal-sys-electrumx.spec +++ b/rpm_spec/qusal-sys-electrumx.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-electrumx +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-electrumx Version: 0.0.1 Release: 1%{?dist} Summary: ElectrumX in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -55,20 +56,28 @@ At least `200GB` of disk space is required. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -111,6 +120,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Tue Jun 04 2024 Ben Grande - 7873dd8 - fix: remove undesired appmenus from builder qubes diff --git a/rpm_spec/qusal-sys-firewall.spec b/rpm_spec/qusal-sys-firewall.spec index 3b6e5b9..0559614 100644 --- a/rpm_spec/qusal-sys-firewall.spec +++ b/rpm_spec/qusal-sys-firewall.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-firewall +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-firewall Version: 0.0.1 Release: 1%{?dist} Summary: Firewall in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -46,20 +47,28 @@ sys-pihole instead. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -99,6 +108,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Thu Jun 13 2024 Ben Grande - a564b3a - feat: add TCP proxy for remote hosts diff --git a/rpm_spec/qusal-sys-git.spec b/rpm_spec/qusal-sys-git.spec index 870124a..d225d82 100644 --- a/rpm_spec/qusal-sys-git.spec +++ b/rpm_spec/qusal-sys-git.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-git +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-git Version: 0.0.1 Release: 1%{?dist} Summary: Git operations through Qrexec in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -46,20 +47,28 @@ and Init. This is an implementation of split-git. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -99,6 +108,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed Jun 19 2024 Ben Grande - bf0a4bc - fix: terminate option parsing for qvm commands diff --git a/rpm_spec/qusal-sys-mirage-firewall.spec b/rpm_spec/qusal-sys-mirage-firewall.spec index 6632a3e..d6e7965 100644 --- a/rpm_spec/qusal-sys-mirage-firewall.spec +++ b/rpm_spec/qusal-sys-mirage-firewall.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-mirage-firewall +%define license_csv AGPL-3.0-or-later,MIT ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-mirage-firewall Version: 0.0.1 Release: 1%{?dist} Summary: Mirage Firewall in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later AND MIT URL: https://github.com/ben-grande/qusal @@ -47,20 +48,28 @@ You can't use Mirage Firewall to be the updatevm, use another qube instead. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -98,6 +107,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Tue May 14 2024 Ben Grande - d148599 - doc: nested list indentation diff --git a/rpm_spec/qusal-sys-net.spec b/rpm_spec/qusal-sys-net.spec index bb5d011..441f7f2 100644 --- a/rpm_spec/qusal-sys-net.spec +++ b/rpm_spec/qusal-sys-net.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-net +%define license_csv AGPL-3.0-or-later,MIT ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-net Version: 0.0.1 Release: 1%{?dist} Summary: PCI handler of network devices in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later AND MIT URL: https://github.com/ben-grande/qusal @@ -49,20 +50,28 @@ the "qubes.UpdatesProxy" service in case no rule matched before. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -102,6 +111,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Mon Jun 17 2024 Ben Grande - 534db96 - doc: qusal proxy service requires configuration diff --git a/rpm_spec/qusal-sys-pgp.spec b/rpm_spec/qusal-sys-pgp.spec index e51197e..fca756d 100644 --- a/rpm_spec/qusal-sys-pgp.spec +++ b/rpm_spec/qusal-sys-pgp.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-pgp +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-pgp Version: 0.0.1 Release: 1%{?dist} Summary: PGP operations through Qrexec in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -45,20 +46,28 @@ and access to them is made from the client through Qrexec. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -99,6 +108,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Thu Jun 20 2024 Ben Grande - 7ab3b93 - fix: correct upstream repository owner diff --git a/rpm_spec/qusal-sys-pihole.spec b/rpm_spec/qusal-sys-pihole.spec index e8be38a..3c80477 100644 --- a/rpm_spec/qusal-sys-pihole.spec +++ b/rpm_spec/qusal-sys-pihole.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-pihole +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-pihole Version: 0.0.1 Release: 1%{?dist} Summary: Pi-hole DNS Sinkhole in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -52,20 +53,28 @@ to it. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -107,6 +116,12 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Sat Jun 22 2024 Ben Grande - f5528fe +- fix: remove duplicated updates proxy feature + +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Thu Jun 13 2024 Ben Grande - a564b3a - feat: add TCP proxy for remote hosts diff --git a/rpm_spec/qusal-sys-print.spec b/rpm_spec/qusal-sys-print.spec index 3baf4f1..9893fae 100644 --- a/rpm_spec/qusal-sys-print.spec +++ b/rpm_spec/qusal-sys-print.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-print +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-print Version: 0.0.1 Release: 1%{?dist} Summary: Printer environment in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -46,20 +47,28 @@ be done over the network or with IPP-over-USB. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -99,6 +108,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Thu Jun 20 2024 Ben Grande - ab56b5f - feat: allow print calls from qubes with tag diff --git a/rpm_spec/qusal-sys-rsync.spec b/rpm_spec/qusal-sys-rsync.spec index 97a1c3f..03cccb7 100644 --- a/rpm_spec/qusal-sys-rsync.spec +++ b/rpm_spec/qusal-sys-rsync.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-rsync +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-rsync Version: 0.0.1 Release: 1%{?dist} Summary: Rsync over Qrexec in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -49,20 +50,28 @@ the user. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -102,6 +111,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed Jun 19 2024 Ben Grande - 97b2496 - fix: start service after Qubes Service setup diff --git a/rpm_spec/qusal-sys-ssh-agent.spec b/rpm_spec/qusal-sys-ssh-agent.spec index fd9c3bc..a444773 100644 --- a/rpm_spec/qusal-sys-ssh-agent.spec +++ b/rpm_spec/qusal-sys-ssh-agent.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-ssh-agent +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-ssh-agent Version: 0.0.1 Release: 1%{?dist} Summary: SSH Agent through Qrexec in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -55,20 +56,28 @@ only hold the SSH configuration, which can be reconstructed. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -108,6 +117,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Thu Jun 13 2024 Ben Grande - a564b3a - feat: add TCP proxy for remote hosts diff --git a/rpm_spec/qusal-sys-ssh.spec b/rpm_spec/qusal-sys-ssh.spec index ce83d8d..271fd98 100644 --- a/rpm_spec/qusal-sys-ssh.spec +++ b/rpm_spec/qusal-sys-ssh.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-ssh +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-ssh Version: 0.0.1 Release: 1%{?dist} Summary: SSH over Qrexec in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -51,20 +52,28 @@ server qube directly. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -104,6 +113,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed Jun 19 2024 Ben Grande - 97b2496 - fix: start service after Qubes Service setup diff --git a/rpm_spec/qusal-sys-syncthing.spec b/rpm_spec/qusal-sys-syncthing.spec index d504977..9271d1a 100644 --- a/rpm_spec/qusal-sys-syncthing.spec +++ b/rpm_spec/qusal-sys-syncthing.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-syncthing +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-syncthing Version: 0.0.1 Release: 1%{?dist} Summary: Syncthing through Qrexec in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -48,20 +49,28 @@ accessible externally. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -109,6 +118,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed Jun 19 2024 Ben Grande - 97b2496 - fix: start service after Qubes Service setup diff --git a/rpm_spec/qusal-sys-usb.spec b/rpm_spec/qusal-sys-usb.spec index 5136157..b453a8d 100644 --- a/rpm_spec/qusal-sys-usb.spec +++ b/rpm_spec/qusal-sys-usb.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-usb +%define license_csv AGPL-3.0-or-later,GPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-usb Version: 0.0.1 Release: 1%{?dist} Summary: PCI handler of USB devices in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later AND GPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -41,20 +42,28 @@ the USB controllers to different qubes is possible. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -93,6 +102,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Tue Jun 04 2024 Ben Grande - 29601d8 - doc: refer to video-companion for sys-usb webcam diff --git a/rpm_spec/qusal-sys-wireguard.spec b/rpm_spec/qusal-sys-wireguard.spec index 021904b..1ba679f 100644 --- a/rpm_spec/qusal-sys-wireguard.spec +++ b/rpm_spec/qusal-sys-wireguard.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project sys-wireguard +%define license_csv AGPL-3.0-or-later,GPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-sys-wireguard Version: 0.0.1 Release: 1%{?dist} Summary: Wireguard VPN in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later AND GPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -43,20 +44,28 @@ other qubes through the VPN with fail closed mechanism. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -96,6 +105,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed Jun 19 2024 Ben Grande - 6ec0768 - fix: clean Wireguard rules diff --git a/rpm_spec/qusal-terraform.spec b/rpm_spec/qusal-terraform.spec index 51a651f..fddb2b1 100644 --- a/rpm_spec/qusal-terraform.spec +++ b/rpm_spec/qusal-terraform.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project terraform +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-terraform Version: 0.0.1 Release: 1%{?dist} Summary: Terraform installation in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -41,20 +42,28 @@ Install Terraform and use it on the "terraform" app qube. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -93,6 +102,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Wed May 29 2024 Ben Grande - 8accc47 - fix: remove old deb repository list format diff --git a/rpm_spec/qusal-usb.spec b/rpm_spec/qusal-usb.spec index fda9066..eb642f5 100644 --- a/rpm_spec/qusal-usb.spec +++ b/rpm_spec/qusal-usb.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project usb +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-usb Version: 0.0.1 Release: 1%{?dist} Summary: USB client in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -43,20 +44,28 @@ you can base disposable qubes, geared towards USB client usage. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -95,6 +104,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Fri Feb 23 2024 Ben Grande - 5605ec7 - doc: prefix qubesctl with sudo diff --git a/rpm_spec/qusal-utils.spec b/rpm_spec/qusal-utils.spec index c7742d4..733b8a4 100644 --- a/rpm_spec/qusal-utils.spec +++ b/rpm_spec/qusal-utils.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project utils +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-utils Version: 0.0.1 Release: 1%{?dist} Summary: Utilities library for Qusal - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -40,20 +41,28 @@ projects such as macros and common tools to be installed. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -91,6 +100,15 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Sat Jun 22 2024 Ben Grande - a6194e0 +- fix: remove cacher tag from Kicksecure template + +* Sat Jun 22 2024 Ben Grande - 7df3be4 +- fix: install caching client before common update + +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Fri May 24 2024 Ben Grande - cbf61e6 - feat: add Firefox browser from Mozilla repository diff --git a/rpm_spec/qusal-vault.spec b/rpm_spec/qusal-vault.spec index 8be39a5..da96331 100644 --- a/rpm_spec/qusal-vault.spec +++ b/rpm_spec/qusal-vault.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project vault +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-vault Version: 0.0.1 Release: 1%{?dist} Summary: Vault environment in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -43,20 +44,28 @@ keys. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -96,6 +105,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Tue May 28 2024 Ben Grande - 44ea4c5 - feat: add manual page reader diff --git a/rpm_spec/qusal-video-companion.spec b/rpm_spec/qusal-video-companion.spec index 7a61e20..0d3d5fa 100644 --- a/rpm_spec/qusal-video-companion.spec +++ b/rpm_spec/qusal-video-companion.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project video-companion +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-video-companion Version: 0.0.1 Release: 1%{?dist} Summary: Stream webcams and share screens in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -42,20 +43,28 @@ access them without compromising the domains. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -93,6 +102,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Fri Jun 14 2024 Ben Grande - 3ece491 - fix: wrong video-companion package name for dom0 diff --git a/rpm_spec/qusal-whonix-gateway.spec b/rpm_spec/qusal-whonix-gateway.spec index 3ca51cd..f13d04a 100644 --- a/rpm_spec/qusal-whonix-gateway.spec +++ b/rpm_spec/qusal-whonix-gateway.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project whonix-gateway +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-whonix-gateway Version: 0.0.1 Release: 1%{?dist} Summary: Whonix Gateway Template in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -41,20 +42,28 @@ it. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -94,6 +103,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Mon Mar 18 2024 Ben Grande - f9ead06 - fix: remove extraneous package repository updates diff --git a/rpm_spec/qusal-whonix-workstation.spec b/rpm_spec/qusal-whonix-workstation.spec index aae91fa..3bd9b26 100644 --- a/rpm_spec/qusal-whonix-workstation.spec +++ b/rpm_spec/qusal-whonix-workstation.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project whonix-workstation +%define license_csv AGPL-3.0-or-later ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: qusal-whonix-workstation Version: 0.0.1 Release: 1%{?dist} Summary: Whonix Workstation Template in Qubes OS - Group: qusal -Packager: Ben Grande +Packager: %{?_packager}%{!?_packager:Ben Grande } Vendor: Ben Grande License: AGPL-3.0-or-later URL: https://github.com/ben-grande/qusal @@ -42,20 +43,28 @@ based on it. %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}/srv/salt/qusal/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}/srv/salt/qusal/%{name} %post if test "$1" = "1"; then @@ -95,6 +104,9 @@ fi %dnl TODO: missing '%ghost', files generated during %post, such as Qrexec policies. %changelog +* Fri Jun 21 2024 Ben Grande - c84dfea +- fix: generate RPM Specs for Qubes Builder V2 + * Mon Mar 18 2024 Ben Grande - f9ead06 - fix: remove extraneous package repository updates diff --git a/rpm_spec/template/template.spec b/rpm_spec/template/template.spec index 91dfb23..6c52e72 100644 --- a/rpm_spec/template/template.spec +++ b/rpm_spec/template/template.spec @@ -2,24 +2,25 @@ # # SPDX-License-Identifier: AGPL-3.0-or-later +%define project @NAME@ +%define license_csv @LICENSE_CSV@ ## Reproducibility. %define source_date_epoch_from_changelog 1 %define use_source_date_epoch_as_buildtime 1 %define clamp_mtime_to_source_date_epoch 1 -# Changelog is trimmed according to current date, not last date from changelog. +## Changelog is trimmed according to current date, not last date from changelog. %define _changelog_trimtime 0 %define _changelog_trimage 0 %global _buildhost %{name} -# Python bytecode interferes when updates occur and restart is not done. +## Python bytecode interferes when updates occur and restart is not done. %undefine __brp_python_bytecompile Name: @PROJECT@ Version: @VERSION@ Release: 1%{?dist} Summary: @SUMMARY@ - Group: @GROUP@ -Packager: @PACKAGER@ +Packager: %{?_packager}%{!?_packager:@PACKAGER@} Vendor: @VENDOR@ License: @LICENSE@ URL: @URL@ @@ -39,20 +40,28 @@ Requires: qubes-mgmt-salt-dom0 %build +%check + +%pre + %install rm -rf %{buildroot} install -m 755 -d \ - %{buildroot}@FILE_ROOTS@ \ + %{buildroot}/srv/salt/qusal \ %{buildroot}%{_docdir}/%{name} \ %{buildroot}%{_defaultlicensedir}/%{name} -install -m 644 %{name}/LICENSES/* %{buildroot}%{_defaultlicensedir}/%{name}/ -install -m 644 %{name}/README.md %{buildroot}%{_docdir}/%{name}/ -rm -rv %{name}/LICENSES %{name}/README.md -cp -rv %{name} %{buildroot}@FILE_ROOTS@/%{name} -%check +for license in $(echo "%{license_csv}" | tr "," " "); do + license_dir="LICENSES" + if test -d "salt/%{project}/LICENSES"; then + license_dir="salt/%{project}/LICENSES" + fi + install -m 644 "${license_dir}/${license}.txt" %{buildroot}%{_defaultlicensedir}/%{name}/ +done -%dnl %pre +install -m 644 salt/%{project}/README.md %{buildroot}%{_docdir}/%{name}/ +rm -rf salt/%{project}/LICENSES salt/%{project}/README.md +cp -rv salt/%{project} %{buildroot}@FILE_ROOTS@/%{name} %post if test "$1" = "1"; then diff --git a/salt/dotfiles b/salt/dotfiles index 404d5d2..06a5db7 160000 --- a/salt/dotfiles +++ b/salt/dotfiles @@ -1 +1 @@ -Subproject commit 404d5d259891e92b159d8bc92d7f79431fe8d2ba +Subproject commit 06a5db7cde8a500aa4caf07d1cde79e26e9a0e31 diff --git a/scripts/spec-build.sh b/scripts/spec-build.sh index 4ed93ab..a3e4422 100755 --- a/scripts/spec-build.sh +++ b/scripts/spec-build.sh @@ -34,15 +34,9 @@ build_rpm(){ "${build_dir}/BUILD/${group}-${project}/LICENSES/" \ "${build_dir}/SOURCES/${group}-${project}/LICENSES" - cp -r "salt/${project}/"* "${build_dir}/BUILD/${group}-${project}/" - cp -r "salt/${project}/"* "${build_dir}/SOURCES/${group}-${project}/" - for license in $(echo "${license_csv}" | tr "," " "); do - license_dir="LICENSES" - if test -d "salt/${project}/LICENSES"; then - license_dir="salt/${project}/LICENSES" - fi - cp "${license_dir}/${license}.txt" "${build_dir}/BUILD/${group}-${project}/LICENSES/" - done + ## TODO: generate tarball to sources. + cp -r . "${build_dir}/BUILD/${group}-${project}/" + cp -r . "${build_dir}/SOURCES/${group}-${project}/" ## TODO: use qubes-builderv2 with mock or qubes executor rpmbuild -ba --quiet --clean -- "${spec}" diff --git a/scripts/spec-gen.sh b/scripts/spec-gen.sh index 7817c68..31b1a42 100755 --- a/scripts/spec-gen.sh +++ b/scripts/spec-gen.sh @@ -72,6 +72,7 @@ gen_spec(){ project_name="$(get_spec project)" version="$(get_spec version)" license="$(get_spec license)" + license_csv="$(get_spec license_csv)" vendor="$(get_spec vendor)" packager="$(get_spec packager)" url="$(get_spec url)" @@ -101,6 +102,7 @@ gen_spec(){ -e "s/@POSTUN_UNINSTALL@/${postun_uninstall}/" \ -e "s/@POSTUN_UPGRADE@/${postun_upgrade}/" \ -e "s|@FILE_ROOTS@|${file_roots}|" \ + -e "s/@NAME@/${project}/" \ -e "s/@PROJECT@/${project_name}/" \ -e "s/@VERSION@/${version}/" \ -e "s/@SUMMARY@/${summary}/" \ @@ -108,6 +110,7 @@ gen_spec(){ -e "s/@PACKAGER@/${packager}/" \ -e "s/@VENDOR@/${vendor}/" \ -e "s/@LICENSE@/${license}/" \ + -e "s/@LICENSE_CSV@/${license_csv}/" \ -e "s|@BUG_URL@|${bug_url}|" \ -e "s|@URL@|${url}|" \ -e "s|@DESCRIPTION@|${description}|" \ diff --git a/scripts/spec-get.sh b/scripts/spec-get.sh index f8f6f88..0b2c2c4 100755 --- a/scripts/spec-get.sh +++ b/scripts/spec-get.sh @@ -58,7 +58,7 @@ group="${toplevel##*/}" block_max_chars group "${group}" 70 file_roots="/srv/salt/${group}" vendor="${SPEC_VENDOR:-"$(git config --get user.name)"}" -packager="${SPEC_PACKAGER:-"${vendor}"}" +packager="${SPEC_PACKAGER:-"${vendor} <$(git config --get user.email)>"}" url="${SPEC_URL:-"https://github.com/ben-grande/qusal"}" bug_url="${SPEC_BUGURL:-"${url}/issues"}" diff --git a/version b/version new file mode 100644 index 0000000..8acdd82 --- /dev/null +++ b/version @@ -0,0 +1 @@ +0.0.1