From f56a2a9181c44eed96068fc3ee20857531ffabe6 Mon Sep 17 00:00:00 2001 From: Otto Liljalaakso Date: Jul 04 2024 18:39:42 +0000 Subject: [PATCH 1/7] Remove unneeded scripts Both build.sh and preview.sh have been replaced with builder.sh, and already did nothing but return a removal notice. --- diff --git a/build.sh b/build.sh deleted file mode 100755 index 6655313..0000000 --- a/build.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -echo "Deprecated. Use the builder.sh script instead" diff --git a/preview.sh b/preview.sh deleted file mode 100755 index 6655313..0000000 --- a/preview.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -echo "Deprecated. Use the builder.sh script instead" From a34a137860f3ee12f3b00caaad5aa50cc3771da3 Mon Sep 17 00:00:00 2001 From: Otto Liljalaakso Date: Jul 04 2024 18:39:42 +0000 Subject: [PATCH 2/7] Improve `check-links.sh` 1. linkchecker had removed option `--complete`, so have to remove it from here as well. 2. Many errors were not actionable, because they came from Docs stylesheet. Add `--ignore-url` entries to silence such errors. --- diff --git a/check-links.sh b/check-links.sh index 8042e38..cdb41ae 100755 --- a/check-links.sh +++ b/check-links.sh @@ -1,3 +1,33 @@ #!/bin/sh -linkchecker http://localhost:8080 --complete --check-extern +# Stylesheet's 'Edit this file' generates file links +PATTERN_FILE_URL='^file:///' +# Stylesheet's language selector generated links with 'en-US' language tag +PATTERN_EN_US='^http://localhost:8080/en-US/package-maintainers/' +# These three are in stylesheet footer +PATTERN_LEGAL='^http://localhost:8080/legal/$' +PATTERN_PRIVACY='^http://localhost:8080/legal/privacy/$' +PATTERN_COC='^http://localhost:8080/project/code-of-conduct/$' +PATTERN_SPONSORS='^https://getfedora.org/en/sponsors/$' +PATTERN_CC_BYSA='^http://creativecommons.org/licenses/by-sa/4.0/legalcode$' +PATTERN_LICENSING='^https://fedoraproject.org/wiki/Licensing' +PATTERN_FEDORA_RHEL='^https://www.redhat.com/en/technologies/linux-platforms/articles/relationship-between-fedora-and-rhel$' +# Stylesheet CSS generates this +PATTERN_FONT='^http://localhost:8080/_/font/' + +# Major weakness: Is not able to check xref's to other Fedora Docs pages. +# If other pages are not added to site.yml, the xrefs render as text. +# If other pages are added to site.yml, this checker checks also links from those other pages. + +linkchecker http://localhost:8080 \ + --check-extern \ + --ignore-url $PATTERN_FILE_URL \ + --ignore-url $PATTERN_EN_US \ + --ignore-url $PATTERN_LEGAL \ + --ignore-url $PATTERN_PRIVACY \ + --ignore-url $PATTERN_COC \ + --ignore-url $PATTERN_SPONSORS \ + --ignore-url $PATTERN_CC_BYSA \ + --ignore-url $PATTERN_LICENSING \ + --ignore-url $PATTERN_FEDORA_RHEL \ + --ignore-url $PATTERN_FONT \ From a1287f0c49287dd1a43062d9763c98ed2d9ab199 Mon Sep 17 00:00:00 2001 From: Otto Liljalaakso Date: Jul 04 2024 18:39:42 +0000 Subject: [PATCH 3/7] Use https instead of http in links This is the modern way, and also removes many warnings from `check-links.sh` output. --- diff --git a/LICENSE b/LICENSE index ba8d521..73e4eb9 100644 --- a/LICENSE +++ b/LICENSE @@ -1,7 +1,7 @@ The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at -http://creativecommons.org/licenses/by-sa/3.0/. In accordance with +https://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version. diff --git a/README.md b/README.md index 0d619d2..2f7a2d9 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ Some useful information about AsciiDoc can be found below: This repository attempts to follow the following: -* Use [Semantic Line Breaks](http://sembr.org/) to make diffing simpler. +* Use [Semantic Line Breaks](https://sembr.org/) to make diffing simpler. * Prefer `https://example.com[here]` over `link:https://example.com[here]` * Prefer `[#some-ref]` over `[[some-ref]]` diff --git a/modules/ROOT/pages/CommonRpmlintIssues.adoc b/modules/ROOT/pages/CommonRpmlintIssues.adoc index 5c0c3c9..1d07b3c 100644 --- a/modules/ROOT/pages/CommonRpmlintIssues.adoc +++ b/modules/ROOT/pages/CommonRpmlintIssues.adoc @@ -110,7 +110,7 @@ Instead, use a rpath to let the application locate the library. See also: * link:#no_soname[no-soname] -* http://lists.fedoraproject.org/pipermail/devel/2012-April/166104.html[thread on fedora-devel] +* https://lists.fedoraproject.org/pipermail/devel/2012-April/166104.html[thread on fedora-devel] [[no_binary]] == no-binary diff --git a/modules/ROOT/pages/How_to_Get_Sponsored_into_the_Packager_Group.adoc b/modules/ROOT/pages/How_to_Get_Sponsored_into_the_Packager_Group.adoc index 79138de..01413bb 100644 --- a/modules/ROOT/pages/How_to_Get_Sponsored_into_the_Packager_Group.adoc +++ b/modules/ROOT/pages/How_to_Get_Sponsored_into_the_Packager_Group.adoc @@ -34,7 +34,7 @@ perhaps from the previous maintainer or a potential sponsor. If you plan to comment on review requests to demonstrate your level of understanding, you can search the https://fedoraproject.org/PackageReviewStatus/in_progress.html[list of reviews in progress] -and the http://fedoraproject.org/PackageReviewStatus/reviewable.html[list of unassigned review requests] +and the https://fedoraproject.org/PackageReviewStatus/reviewable.html[list of unassigned review requests] for review requests to comment on. [#how_to_find_a_sponsor] diff --git a/modules/ROOT/pages/New_Package_Process_for_Existing_Contributors.adoc b/modules/ROOT/pages/New_Package_Process_for_Existing_Contributors.adoc index 1f83757..87f75b4 100644 --- a/modules/ROOT/pages/New_Package_Process_for_Existing_Contributors.adoc +++ b/modules/ROOT/pages/New_Package_Process_for_Existing_Contributors.adoc @@ -25,7 +25,7 @@ They will be used during the package review. . Upload your SRPM and SPEC files onto the internet somewhere. ** If you have already got a Fedora Account -then you can use your storage at http://fedorapeople.org for this. +then you can use your storage at https://fedorapeople.org for this. . Make sure you have a Bugzilla account at bugzilla.redhat.com diff --git a/modules/ROOT/pages/New_Package_Process_for_New_Contributors.adoc b/modules/ROOT/pages/New_Package_Process_for_New_Contributors.adoc index be4ff87..600fda6 100644 --- a/modules/ROOT/pages/New_Package_Process_for_New_Contributors.adoc +++ b/modules/ROOT/pages/New_Package_Process_for_New_Contributors.adoc @@ -24,7 +24,7 @@ make sure that the software is not already in the Fedora repository: * Check if the package already exists by searching in https://packages.fedoraproject.org/[Fedora Packages]. -* Search in the http://fedoraproject.org/PackageReviewStatus/[Review Tracker] +* Search in the https://fedoraproject.org/PackageReviewStatus/[Review Tracker] for packages under review. * Check the https://packager-dashboard.fedoraproject.org/user/orphan[orphaned or retired packages that need new maintainers]. @@ -71,7 +71,7 @@ Fill out https://bugzilla.redhat.com/bugzilla/enter_bug.cgi?product=Fedora&forma * Before submitting your request, be sure there’s not a previous request for the same package. -There is a convenient search box on the http://fedoraproject.org/PackageReviewStatus/[package review status page]. +There is a convenient search box on the https://fedoraproject.org/PackageReviewStatus/[package review status page]. * Make sure that you put the *name of the package* (excluding version and release numbers) diff --git a/modules/ROOT/pages/Package_Maintenance_Guide.adoc b/modules/ROOT/pages/Package_Maintenance_Guide.adoc index a6a8006..f198e35 100644 --- a/modules/ROOT/pages/Package_Maintenance_Guide.adoc +++ b/modules/ROOT/pages/Package_Maintenance_Guide.adoc @@ -3,7 +3,7 @@ include::{partialsdir}/attributes.adoc[] = Package Maintenance Guide This page provides some basic instructions for day-to-day usage -of the http://git-scm.com/[git]-based package maintenance system for Fedora. +of the https://git-scm.com/[git]-based package maintenance system for Fedora. It is intended primarily for new and current Fedora package maintainers, but does briefly xref:using_fedpkg_anonymously[cover anonymous read-only use of the system]. It is not a guide to RPM packaging per se. @@ -376,7 +376,7 @@ and consider how your changes will affect others. This is a large topic and somewhat beyond the scope of this guide, but we can give basic pointers. -There are other good references in the http://git-scm.com/book/en/Git-Branching-Basic-Branching-and-Merging[Git book] +There are other good references in the https://git-scm.com/book/en/Git-Branching-Basic-Branching-and-Merging[Git book] and at https://help.github.com/articles/resolving-a-merge-conflict-from-the-command-line[GitHub]. When you merge and a conflict occurs, diff --git a/modules/ROOT/pages/Package_Review_Process.adoc b/modules/ROOT/pages/Package_Review_Process.adoc index 3dc08f1..3439937 100644 --- a/modules/ROOT/pages/Package_Review_Process.adoc +++ b/modules/ROOT/pages/Package_Review_Process.adoc @@ -187,7 +187,7 @@ who is a member of the https://accounts.fedoraproject.org/group/packager/[packag the review can still proceed to completion but they will need to find a sponsor at some point.) -* Search http://fedoraproject.org/PackageReviewStatus/[Package Review Tracker] for a review request +* Search https://fedoraproject.org/PackageReviewStatus/[Package Review Tracker] for a review request that needs a reviewer: `fedora-review` flag is blank or the bug is assigned to `nobody@fedoraproject.org`. * If you notice some issues that need to be solved @@ -327,6 +327,6 @@ by someone doing their first package review. [#tracking_of_package_requests] == Tracking of Package Requests -The http://fedoraproject.org/PackageReviewStatus[Package Review Tracker] provides various review-related reports +The https://fedoraproject.org/PackageReviewStatus[Package Review Tracker] provides various review-related reports and a simple way to search for reviews by package name or reporter name or others. diff --git a/modules/ROOT/pages/Packaging_Tutorial_2_GNU_Hello.adoc b/modules/ROOT/pages/Packaging_Tutorial_2_GNU_Hello.adoc index 7e5e588..fe5bc65 100644 --- a/modules/ROOT/pages/Packaging_Tutorial_2_GNU_Hello.adoc +++ b/modules/ROOT/pages/Packaging_Tutorial_2_GNU_Hello.adoc @@ -55,7 +55,7 @@ Release: %autorelease Summary: Produces a familiar, friendly greeting License: GPL-3.0-or-later URL: https://www.gnu.org/software/hello/ -Source: http://ftp.gnu.org/gnu/hello/hello-%{version}.tar.gz +Source: https://ftp.gnu.org/gnu/hello/hello-%{version}.tar.gz BuildRequires: gcc BuildRequires: make BuildRequires: texinfo @@ -342,8 +342,8 @@ Release: %autorelease Summary: Produces a familiar, friendly greeting License: GPL-3.0-or-later -URL: http://ftp.gnu.org/gnu/%{name} -Source: http://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.gz +URL: https://ftp.gnu.org/gnu/%{name} +Source: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.gz BuildRequires: bash BuildRequires: coreutils diff --git a/modules/ROOT/pages/Staying_Close_to_Upstream_Projects.adoc b/modules/ROOT/pages/Staying_Close_to_Upstream_Projects.adoc index c76eec0..8fe8245 100644 --- a/modules/ROOT/pages/Staying_Close_to_Upstream_Projects.adoc +++ b/modules/ROOT/pages/Staying_Close_to_Upstream_Projects.adoc @@ -295,7 +295,7 @@ Fixes related to bundling should of course be sent upstream if possible. == References -* http://fedoraproject.org/wiki/Objectives +* https://fedoraproject.org/wiki/Objectives * xref:packaging-guidelines::index.adoc#_all_patches_should_have_an_upstream_bug_link_or_comment[All patches should have an upstream bug link or comment] -* http://fedoraproject.org/wiki/PackageMaintainers/TrackingUpstream -* http://fedoraproject.org/wiki/PackageMaintainers/TrackingDownstream +* https://fedoraproject.org/wiki/PackageMaintainers/TrackingUpstream +* https://fedoraproject.org/wiki/PackageMaintainers/TrackingDownstream diff --git a/modules/ROOT/pages/Upstream_Release_Monitoring.adoc b/modules/ROOT/pages/Upstream_Release_Monitoring.adoc index 5578894..6f08446 100644 --- a/modules/ROOT/pages/Upstream_Release_Monitoring.adoc +++ b/modules/ROOT/pages/Upstream_Release_Monitoring.adoc @@ -84,11 +84,11 @@ but no scratch build will be made. [#related_projects] == Related Projects -* http://github.com/tannewt/open-source-watershed[OSWatershed] - Monitors several distributions at once +* https://github.com/tannewt/open-source-watershed[OSWatershed] - Monitors several distributions at once * https://ppisar.fedorapeople.org/cpandistributionsinfedora.xhtml[Perl package monitoring] -* http://rpms.famillecollet.com/rpmphp/[Reports from Remi] PECL, pear and R extensions upstream comparison and stable repo with rawhide comparison for all packages -* http://distrowatch.com/table.php?distribution=fedora[DistroWatch.com: Fedora] -* http://youri.zarb.org/[Youri] http://check.mageia.org/[in action] http://svnweb.mageia.org/adm/puppet/modules/youri-check/[puppet modules] A generic framework +* https://rpms.remirepo.net/rpmphp/[Reports from Remi] PECL, pear and R extensions upstream comparison and stable repo with rawhide comparison for all packages +* https://distrowatch.com/table.php?distribution=fedora[DistroWatch.com: Fedora] +* Youri https://check.mageia.org/[in action] https://svnweb.mageia.org/adm/puppet/modules/youri-check/[puppet modules] A generic framework * https://github.com/jness/ossvt[ossvt] Developed for https://ius.io/[IUS] * https://fedorapeople.org/cgit/till/public_git/cnucnu.git/[cnucnu] — the tool previously used to provide this service for Fedora -* http://repology.org/metapackages/outdated-in-repo/fedora_rawhide/[Repology] cross distro version comparison +* https://repology.org/metapackages/outdated-in-repo/fedora_rawhide/[Repology] cross distro version comparison diff --git a/modules/ROOT/pages/Using_the_Koji_Build_System.adoc b/modules/ROOT/pages/Using_the_Koji_Build_System.adoc index 959aefc..bef9a30 100644 --- a/modules/ROOT/pages/Using_the_Koji_Build_System.adoc +++ b/modules/ROOT/pages/Using_the_Koji_Build_System.adoc @@ -258,10 +258,10 @@ For example to get the latest buildroot for `f{MAJOROSVER}-build` run: [subs="attributes+"] .... -koji mock-config --tag f{MAJOROSVER}-build --arch=x86_64 --topurl=http://kojipkgs.fedoraproject.org/ f{MAJOROSVER} +koji mock-config --tag f{MAJOROSVER}-build --arch=x86_64 --topurl=https://kojipkgs.fedoraproject.org/ f{MAJOROSVER} .... -You must pass `--topurl=http://kojipkgs.fedoraproject.org/` to any mock-config command +You must pass `--topurl=https://kojipkgs.fedoraproject.org/` to any mock-config command to get a working mock-config from Fedora's koji. [#using_koji_to_control_tasks] diff --git a/modules/ROOT/pages/index.adoc b/modules/ROOT/pages/index.adoc index 1c4169d..c6135a0 100644 --- a/modules/ROOT/pages/index.adoc +++ b/modules/ROOT/pages/index.adoc @@ -35,7 +35,7 @@ for writing SPEC files for software in Fedora. [#introduction_to_packaging] === Introduction to packaging -* http://rpm.org/max-rpm-snapshot/[Maximum RPM Book] +* https://rpm.org/max-rpm-snapshot/[Maximum RPM Book] — most detailed, but slightly obsolete. * https://rpm-packaging-guide.github.io/[RPM Packaging Guide] From 7033af84d67303fcc75cb86497ee9e8e9e2ffbe3 Mon Sep 17 00:00:00 2001 From: Otto Liljalaakso Date: Jul 04 2024 18:39:42 +0000 Subject: [PATCH 4/7] Replace Wiki links that already redirected to Fedora Docs Redirects show unnecessary warnings in `check-links.sh` output, and using the Wiki for anything documentation related should be avoided. --- diff --git a/modules/ROOT/pages/Joining_the_Package_Maintainers.adoc b/modules/ROOT/pages/Joining_the_Package_Maintainers.adoc index cbfbedb..843dd84 100644 --- a/modules/ROOT/pages/Joining_the_Package_Maintainers.adoc +++ b/modules/ROOT/pages/Joining_the_Package_Maintainers.adoc @@ -40,7 +40,7 @@ should be the same email address as you use in the xref:create_a_fedora_account[ [#create_a_fedora_account] === Create a Fedora Account -Create an account in the https://fedoraproject.org/wiki/Account_System?rd=Infrastructure/AccountSystem[Fedora Account System]. +Create an account in the xref:fedora-accounts::user.adoc[Fedora Account System]. (This is _not_ the same as the Bugzilla account.) . Visit the account system home: https://accounts.fedoraproject.org/ diff --git a/modules/ROOT/pages/Package_Maintenance_Guide.adoc b/modules/ROOT/pages/Package_Maintenance_Guide.adoc index f198e35..81a0dbc 100644 --- a/modules/ROOT/pages/Package_Maintenance_Guide.adoc +++ b/modules/ROOT/pages/Package_Maintenance_Guide.adoc @@ -636,5 +636,5 @@ and failures because of test suites that depend on operations finish on precise * https://src.fedoraproject.org/ * https://fedoraproject.org/wiki/Infrastructure/Kerberos[Infrastructure/Kerberos] * https://fedoraproject.org/wiki/Packaging_tricks?rd=PackageMaintainers/PackagingTricks[PackageMaintainers/PackagingTricks] -* https://fedoraproject.org/wiki/Fedora_Release_Life_Cycle?rd=Policy_for_package_lifecycle[Fedora_Release_Life_Cycle] +* xref:releases::lifecycle.adoc[Fedora Linux Release Life Cycle] * https://fedoraproject.org/wiki/Infrastructure/VersionControl/dist-git[Infrastructure/VersionControl/dist-git] diff --git a/modules/ROOT/pages/Package_Update_Guide.adoc b/modules/ROOT/pages/Package_Update_Guide.adoc index ad67d70..d402a0a 100644 --- a/modules/ROOT/pages/Package_Update_Guide.adoc +++ b/modules/ROOT/pages/Package_Update_Guide.adoc @@ -147,7 +147,7 @@ that an update is available. If you mark your update as fixing the bug(s), Bodhi will move the report(s) through the `MODIFIED`, `ON_QA` and `CLOSED ERRATA` states -of the https://fedoraproject.org/wiki/BugZappers/BugStatusWorkFlow[bug workflow] +of the xref:bug_status.adoc[Bug Status Workflow] as your update reaches various points in the process. Using this mechanism can be very useful both for you and for users of your package. diff --git a/modules/ROOT/pages/Staying_Close_to_Upstream_Projects.adoc b/modules/ROOT/pages/Staying_Close_to_Upstream_Projects.adoc index 8fe8245..7d8142c 100644 --- a/modules/ROOT/pages/Staying_Close_to_Upstream_Projects.adoc +++ b/modules/ROOT/pages/Staying_Close_to_Upstream_Projects.adoc @@ -295,7 +295,7 @@ Fixes related to bundling should of course be sent upstream if possible. == References -* https://fedoraproject.org/wiki/Objectives +* xref:project::initiatives.adoc[Current Initiatives] * xref:packaging-guidelines::index.adoc#_all_patches_should_have_an_upstream_bug_link_or_comment[All patches should have an upstream bug link or comment] * https://fedoraproject.org/wiki/PackageMaintainers/TrackingUpstream * https://fedoraproject.org/wiki/PackageMaintainers/TrackingDownstream diff --git a/modules/ROOT/pages/index.adoc b/modules/ROOT/pages/index.adoc index c6135a0..bbb76ca 100644 --- a/modules/ROOT/pages/index.adoc +++ b/modules/ROOT/pages/index.adoc @@ -22,7 +22,7 @@ as well as tutorials, guides and howtos. * https://fedoraproject.org/wiki/Category:Packaging_SIGs[Packaging SIGs] — Informal groups of packagers working on specific areas of the distribution -* https://fedoraproject.org/wiki/EPEL[EPEL] +* xref:epel::index.adoc[EPEL] — Rebuild of Fedora packages for RHEL or compatible derivatives [#packaging_guidelines] @@ -51,7 +51,7 @@ for writing SPEC files for software in Fedora. * https://fedoraproject.org/wiki/Milestone_freezes[Milestone freezes] — how the Fedora Beta and Final freezes affect packagers -* https://fedoraproject.org/wiki/Fedora_Release_Life_Cycle[Fedora Release Life Cycle] +* xref:releases::lifecycle.adoc[Fedora Release Life Cycle] — information on the Fedora development process, particularly various freeze dates and such From 379152348f6cd0ada1ec4751b651a4e8c366f24b Mon Sep 17 00:00:00 2001 From: Otto Liljalaakso Date: Jul 04 2024 18:39:42 +0000 Subject: [PATCH 5/7] Fix many `link-checker.sh` warnings and errors The most common warning is about redirects. Such links are replaced with direct links. In some cases better syntax for the same URL is used, and in a single case the link target seems to be completely gone, so the link is just removed. --- diff --git a/modules/ROOT/pages/Package_Maintenance_Guide.adoc b/modules/ROOT/pages/Package_Maintenance_Guide.adoc index 81a0dbc..067e543 100644 --- a/modules/ROOT/pages/Package_Maintenance_Guide.adoc +++ b/modules/ROOT/pages/Package_Maintenance_Guide.adoc @@ -376,8 +376,8 @@ and consider how your changes will affect others. This is a large topic and somewhat beyond the scope of this guide, but we can give basic pointers. -There are other good references in the https://git-scm.com/book/en/Git-Branching-Basic-Branching-and-Merging[Git book] -and at https://help.github.com/articles/resolving-a-merge-conflict-from-the-command-line[GitHub]. +There are other good references in the https://git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Merging[Git book] +and at https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-using-the-command-line[GitHub Docs]. When you merge and a conflict occurs, you can edit the files that have conflicts. @@ -533,7 +533,7 @@ Release: 1%{?dist}.1 .... Then tag and build as usual. -This approach was initially discussed https://www.redhat.com/archives/fedora-extras-list/2006-May/msg00083.html[in this mailing list thread]. +This approach was initially discussed https://listman.redhat.com/archives/fedora-extras-list/2006-May/msg00083.html[in this mailing list thread]. [#removing_a_package_build_pending_for_rawhide_or_branched] === Removing a package build pending for Rawhide or Branched @@ -573,7 +573,7 @@ in your `~/.ssh/config` file. This will result in using DNS to check that the key is correct. But you can also manually check -against the list of keys at https://admin.fedoraproject.org[https://admin.fedoraproject.org]. +against the list of keys at https://apps.fedoraproject.org/[Fedora Apps]. The strings there are what ends up in your `~/.ssh/known_hosts` file. So you can accept the fingerprint when prompted and then check that the correct string for src.fedoraproject.org diff --git a/modules/ROOT/pages/Package_Review_Process.adoc b/modules/ROOT/pages/Package_Review_Process.adoc index 3439937..d5474dd 100644 --- a/modules/ROOT/pages/Package_Review_Process.adoc +++ b/modules/ROOT/pages/Package_Review_Process.adoc @@ -327,6 +327,6 @@ by someone doing their first package review. [#tracking_of_package_requests] == Tracking of Package Requests -The https://fedoraproject.org/PackageReviewStatus[Package Review Tracker] provides various review-related reports +The https://fedoraproject.org/PackageReviewStatus/[Package Review Tracker] provides various review-related reports and a simple way to search for reviews by package name or reporter name or others. diff --git a/modules/ROOT/pages/Upstream_Release_Monitoring.adoc b/modules/ROOT/pages/Upstream_Release_Monitoring.adoc index 6f08446..8a9f7f1 100644 --- a/modules/ROOT/pages/Upstream_Release_Monitoring.adoc +++ b/modules/ROOT/pages/Upstream_Release_Monitoring.adoc @@ -35,7 +35,7 @@ This service is divided into three components: Available at https://release-monitoring.org[release-monitoring.org], Anitya provides a web service where anyone can register a project. -Anitya will then broadcast a https://fedmsg.readthedocs.io/[fedmsg] message +Anitya will then broadcast a https://fedmsg.readthedocs.io/en/stable/[fedmsg] message when it finds a new release. Checks are run by cron twice a day. diff --git a/modules/ROOT/pages/Utilities.adoc b/modules/ROOT/pages/Utilities.adoc index 98708fb..e50d1f1 100644 --- a/modules/ROOT/pages/Utilities.adoc +++ b/modules/ROOT/pages/Utilities.adoc @@ -57,6 +57,7 @@ One can add a comment with `[fedora-review-service-build]` to re-run the review == Automating package updates: Packit link:https://packit.dev/[Packit] is a service that enables automated pull request creation for new upstream releases. -More information on configuring dist-git repositories to use Packit can be found link:https://packit.dev/docs/fedora-releases-guide/#pull-from-upstream-job[in the documentation]. +More information on configuring dist-git repositories to use Packit +can be found https://packit.dev/docs/fedora-releases-guide[in the documentation]. Please remember to run impact checks before pushing updates. diff --git a/modules/ROOT/pages/index.adoc b/modules/ROOT/pages/index.adoc index bbb76ca..619b8ff 100644 --- a/modules/ROOT/pages/index.adoc +++ b/modules/ROOT/pages/index.adoc @@ -46,8 +46,6 @@ for writing SPEC files for software in Fedora. * https://fedoraproject.org/wiki/Using_Mock_to_test_package_builds[Using Mock to test package builds] -* https://bodhi.fedoraproject.org/docs/user/man_pages/bodhi.html[Using the Bodhi CLI tool] - * https://fedoraproject.org/wiki/Milestone_freezes[Milestone freezes] — how the Fedora Beta and Final freezes affect packagers From e3fc9e1a0f8faea38fd34b1c316cb03a56f41d59 Mon Sep 17 00:00:00 2001 From: Otto Liljalaakso Date: Jul 04 2024 18:39:42 +0000 Subject: [PATCH 6/7] Replace `builder.sh` with newer `docsbuilder.sh` The script comes from [fedora-docs-template][1], which already a long time ago released a new version. And also changed script name. Update to match upstream, and to benefit from new features and fixes, whatever they may be. [1]: https://gitlab.com/fedora/docs/templates/fedora-docs-template --- diff --git a/README.md b/README.md index 2f7a2d9..8094cb2 100644 --- a/README.md +++ b/README.md @@ -78,7 +78,7 @@ The script works on Fedora (using Podman) and macOS (using Docker). To build, watch and preview the site, run: ``` -$ ./builder.sh +$ ./docsbuilder.sh ``` The result will be available at http://localhost:8080 diff --git a/builder.sh b/builder.sh index cf5129b..b776d61 100755 --- a/builder.sh +++ b/builder.sh @@ -1,223 +1,2 @@ #!/bin/bash - -# script to watch source directory for changes, and automatically call build.sh to rebuild as required. - -image="docker.io/antora/antora" -cmd="--html-url-extension-style=indexify site.yml" -srcdir="modules" -buildir="public" -previewpidfile="preview.pid" - -# 4913: for vim users, vim creates a temporary file to test it can write to -# directory -# https://groups.google.com/g/vim_dev/c/sppdpElxY44 -# .git: so we don't get rebuilds each time git metadata changes -inotifyignore="\.git.*|4913" - -watch_and_build () { - if ! command -v inotifywait > /dev/null - then - echo "inotifywait command could not be found. Please install inotify-tools." - echo "On Fedora, run: sudo dnf install inotify-tools" - stop_preview_and_exit - else - # check for git - # required to get ignorelist - if ! command -v git > /dev/null - then - echo "git command could not be found. Please install git." - echo "On Fedora, run: sudo dnf install git-core" - stop_preview_and_exit - else - # Get files not being tracked, we don't watch for changes in these. - # Could hard code, but people use different editors that may create - # temporary files that are updated regularly and so on, so better - # to get the list from git. It'll also look at global gitingore - # settings and so on. - inotifyignore="$(git status -s --ignored | grep '^!!' | sed -e 's/^!! //' | tr '\n' '|')${inotifyignore}" - fi - - while true - do - echo "Watching current directory (excluding: ${inotifyignore}) for changes and re-building as required. Use Ctrl C to stop." - inotifywait -q --exclude "($inotifyignore)" -e modify,create,delete,move -r . && echo "Change detected, rebuilding.." && build - done - fi -} - -build () { - if [ "$(uname)" == "Darwin" ]; then - # Running on macOS. - # Let's assume that the user has the Docker CE installed - # which doesn't require a root password. - echo "" - echo "This build script is using Docker container runtime to run the build in an isolated environment." - echo "" - docker run --rm -it -v $(pwd):/antora $image $cmd - - elif [ "$(expr substr $(uname -s) 1 5)" == "Linux" ]; then - # Running on Linux. - # Check whether podman is available, else falls back to docker - # which requires root. - - if [ -f /usr/bin/podman ]; then - echo "" - echo "This build script is using Podman to run the build in an isolated environment." - echo "" - podman run --rm -it -v $(pwd):/antora:z $image $cmd --stacktrace - - elif [ -f /usr/bin/docker ]; then - echo "" - echo "This build script is using Docker to run the build in an isolated environment." - echo "" - - if groups | grep -wq "docker"; then - docker run --rm -it -v $(pwd):/antora:z $image $cmd - else - echo "" - echo "This build script is using $runtime to run the build in an isolated environment. You might be asked for your password." - echo "You can avoid this by adding your user to the 'docker' group, but be aware of the security implications. See https://docs.docker.com/install/linux/linux-postinstall/." - echo "" - sudo docker run --rm -it -v $(pwd):/antora:z $image $cmd - fi - - else - echo "" - echo "Error: Container runtime haven't been found on your system. Fix it by:" - echo "$ sudo dnf install podman" - exit 1 - fi - fi -} - -start_preview () { - - # clean up a preview that may be running - stop_preview - - # always run an initial build so preview shows latest version - build - - if [ "$(uname)" == "Darwin" ]; then - # Running on macOS. - # Let's assume that the user has the Docker CE installed - # which doesn't require a root password. - echo "The preview will be available at http://localhost:8080/" - docker run --rm -v $(pwd):/antora:ro -v $(pwd)/nginx.conf:/etc/nginx/conf.d/default.conf:ro -p 8080:80 nginx - - elif [ "$(expr substr $(uname -s) 1 5)" == "Linux" ]; then - # Running on Linux. - # Fedora Workstation has python3 installed as a default, so using that - echo "" - echo "The preview is available at http://localhost:8080" - echo "" - pushd "${buildir}" > /dev/null 2>&1 - python3 -m http.server 8080 & - echo "$!" > ../"${previewpidfile}" - popd > /dev/null 2>&1 - fi -} - -stop_preview () { - if [ -e "${previewpidfile}" ] - then - PID=$(cat "${previewpidfile}") - kill $PID - echo "Stopping preview server (running with PID ${PID}).." - rm -f "${previewpidfile}" - else - echo "No running preview server found to stop: no ${previewpidfile} file found." - fi -} - -stop_preview_and_exit () -{ - # stop and also exit the script - - # if stop_preview is trapped, then SIGINT doesn't stop the build loop. So - # we need to make sure we also exit the script. - - # stop_preview is called before other functions, so we cannot add exit to - # it. - stop_preview - exit 0 -} - -usage() { - echo "$0: Build and preview Fedora antora based documentation" - echo - echo "Usage: $0 [-awbpkh]" - echo - echo "-a: start preview, start watcher and rebuilder" - echo "-w: start watcher and rebuilder" - echo "-b: rebuild" - echo "-p: start_preview" - echo "-k: stop_preview" - echo "-h: print this usage text and exit" - echo - echo "Maintained by the Fedora documentation team." - echo "Please contact on our channels: https://docs.fedoraproject.org/en-US/fedora-docs/#find-docs" -} - -# check if the script is being run in a Fedora docs repository -if [ ! -e "site.yml" ] -then - echo "site.yml not be found." - echo "This does not appear to be a Fedora Antora based documentation repository." - echo "Exiting." - echo - usage - exit 1 -fi - -if [ $# -lt 1 ] -then - echo "No options provided, running preview with watch and build." - echo "Run script with '-h' to see all available options." - echo - echo - trap stop_preview_and_exit INT - start_preview - watch_and_build - stop_preview -fi - -# parse options -while getopts "awbpkh" OPTION -do - case $OPTION in - a) - # handle sig INT to stop the preview - trap stop_preview_and_exit INT - start_preview - watch_and_build - stop_preview - exit 0 - ;; - w) - watch_and_build - exit 0 - ;; - b) - build - exit 0 - ;; - p) - start_preview - echo "Please run ./builder.sh -k to stop the preview server" - exit 0 - ;; - k) - stop_preview - exit 0 - ;; - h) - usage - exit 0 - ;; - ?) - usage - exit 1 - ;; - esac -done +echo "Replaced with docsbuilder.sh. Use that instead." diff --git a/docsbuilder.sh b/docsbuilder.sh new file mode 100755 index 0000000..9507b84 --- /dev/null +++ b/docsbuilder.sh @@ -0,0 +1,292 @@ +#!/bin/bash +# script to watch source directory for changes, and re-run build and preview +# +# License: MIT +# https://fedoraproject.org/wiki/Licensing:MIT#Another_Minimal_variant_(found_in_libatomic_ops) +# +# Copyright (c) Fedora community contributors. +# +# THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED OR +# IMPLIED. ANY USE IS AT YOUR OWN RISK. +# +# Permission is hereby granted to use or copy this program for any purpose, +# provided the above notices are retained on all copies. Permission to modify +# the code and to distribute modified code is granted, provided the above +# notices are retained, and a notice that the code was modified is included +# with the above copyright notice. + + +script_name="docsbuilder.sh" +script_source="https://gitlab.com/fedora/docs/templates/fedora-docs-template/-/raw/main/${script_name}" +version="1.2.0" +image="registry.gitlab.com/fedora/docs/docs-website/docs-fp-o:latest" +cmd="--html-url-extension-style=indexify site.yml" +srcdir="modules" +buildir="public" +previewpidfile="preview.pid" + +# 4913: for vim users, vim creates a temporary file to test it can write to +# directory +# https://groups.google.com/g/vim_dev/c/sppdpElxY44 +# .git: so we don't get rebuilds each time git metadata changes +inotifyignore="\.git.*|4913" + +watch_and_build () { + if ! command -v inotifywait > /dev/null + then + echo "inotifywait command could not be found. Please install inotify-tools." + echo "On Fedora, run: sudo dnf install inotify-tools" + stop_preview_and_exit + else + # check for git + # required to get ignorelist + if ! command -v git > /dev/null + then + echo "git command could not be found. Please install git." + echo "On Fedora, run: sudo dnf install git-core" + stop_preview_and_exit + else + # Get files not being tracked, we don't watch for changes in these. + # Could hard code, but people use different editors that may create + # temporary files that are updated regularly and so on, so better + # to get the list from git. It'll also look at global gitingore + # settings and so on. + inotifyignore="$(git status -s --ignored | grep '^!!' | sed -e 's/^!! //' | tr '\n' '|')${inotifyignore}" + fi + + while true + do + echo "Watching current directory (excluding: ${inotifyignore}) for changes and re-building as required. Use Ctrl C to stop." + inotifywait -q --exclude "($inotifyignore)" -e modify,create,delete,move -r . && echo "Change detected, rebuilding.." && build + done + fi +} + +build () { + if [ "$(uname)" == "Darwin" ]; then + # Running on macOS. + # Let's assume that the user has the Docker CE installed + # which doesn't require a root password. + echo "" + echo "This build script is using Docker container runtime to run the build in an isolated environment." + echo "" + docker run --rm -it -v $(pwd):/antora $image $cmd + + elif [ "$(expr substr $(uname -s) 1 5)" == "Linux" ]; then + # Running on Linux. + # Check whether podman is available, else faill back to docker + # which requires root. + + if [ -n "$(command -v podman)" ]; then + echo "" + echo "This build script is using Podman to run the build in an isolated environment." + echo "" + podman run --rm -it -v $(pwd):/antora:z $image $cmd --stacktrace + + elif [ -n "$(command -v docker)" ]; then + echo "" + echo "This build script is using Docker to run the build in an isolated environment." + echo "" + + if groups | grep -wq "docker"; then + docker run --rm -it -v $(pwd):/antora:z $image $cmd + else + echo "" + echo "This build script is using $runtime to run the build in an isolated environment. You might be asked for your password." + echo "You can avoid this by adding your user to the 'docker' group, but be aware of the security implications. See https://docs.docker.com/install/linux/linux-postinstall/." + echo "" + sudo docker run --rm -it -v $(pwd):/antora:z $image $cmd + fi + + else + echo "" + echo "Error: Container runtime haven't been found on your system. Fix it by:" + echo "$ sudo dnf install podman" + exit 1 + fi + fi +} + +start_preview () { + + # clean up a preview that may be running + stop_preview + + # always run an initial build so preview shows latest version + build + + if [ "$(uname)" == "Darwin" ]; then + # Running on macOS. + # Let's assume that the user has the Docker CE installed + # which doesn't require a root password. + echo "The preview will be available at http://localhost:8080/" + docker run --rm -v $(pwd):/antora:ro -v $(pwd)/nginx.conf:/etc/nginx/conf.d/default.conf:ro -p 8080:80 nginx + + elif [ "$(expr substr $(uname -s) 1 5)" == "Linux" ]; then + # Running on Linux. + # Fedora Workstation has python3 installed as a default, so using that + echo "" + echo "The preview is available at http://localhost:8080" + echo "" + pushd "${buildir}" > /dev/null 2>&1 + python3 -m http.server 8080 & + echo "$!" > ../"${previewpidfile}" + popd > /dev/null 2>&1 + fi +} + +stop_preview () { + if [ -e "${previewpidfile}" ] + then + PID=$(cat "${previewpidfile}") + kill $PID + echo "Stopping preview server (running with PID ${PID}).." + rm -f "${previewpidfile}" + else + echo "No running preview server found to stop: no ${previewpidfile} file found." + fi +} + +stop_preview_and_exit () +{ + # stop and also exit the script + + # if stop_preview is trapped, then SIGINT doesn't stop the build loop. So + # we need to make sure we also exit the script. + + # stop_preview is called before other functions, so we cannot add exit to + # it. + stop_preview + exit 0 +} + + +# https://apple.stackexchange.com/questions/83939/compare-multi-digit-version-numbers-in-bash/123408#123408 +version () { echo "$@" | awk -F. '{ printf("%d%03d%03d%03d\n", $1,$2,$3,$4); }'; } + + +check_update () { + if ! command -v curl > /dev/null + then + echo "curl command could not be found. Please install curl." + echo "On Fedora, run: sudo dnf install curl" + exit 0 + fi + script_version="$(grep "^version=" ${script_name} | cut -d '=' -f2 | tr --delete '"')" + tempdir="$(mktemp -d)" + echo "$tempdir" + pushd "$tempdir" > /dev/null 2>&1 + curl "$script_source" --silent --output "${script_name}" + upstream_version="$(grep "^version=" ${script_name} | cut -d '=' -f2 | tr --delete '"')" + echo "${upstream_version}" + if [ $(version $upstream_version) -gt $(version $script_version) ]; then + echo "Update available" + echo "Script version $upstream_version is available at $script_source" + echo "This version is $script_version." + echo "Please use the '-U' option to update." + echo + fi + popd > /dev/null 2&>1 +} + +install_update () { + if ! command -v curl > /dev/null + then + echo "curl command could not be found. Please install curl." + echo "On Fedora, run: sudo dnf install curl" + exit 0 + fi + curl "$script_source" --silent --output "${script_name}.new" + mv "${script_name}.new" "${script_name}" + chmod +x "${script_name}" +} + +usage() { + echo "$0: Build and preview Fedora antora based documentation" + echo + echo "Usage: $0 [-awbpkh]" + echo + echo "-a: start preview, start watcher and rebuilder" + echo "-w: start watcher and rebuilder" + echo "-b: rebuild" + echo "-p: start_preview" + echo "-k: stop_preview" + echo "-h: print this usage text and exit" + echo "-u: check builder script update" + echo "-U: install builder script from upstream" + echo + echo "Maintained by the Fedora documentation team." + echo "Please contact on our channels: https://docs.fedoraproject.org/en-US/fedora-docs/#find-docs" +} + +# check if the script is being run in a Fedora docs repository +if [ ! -e "site.yml" ] +then + echo "site.yml not be found." + echo "This does not appear to be a Fedora Antora based documentation repository." + echo "Exiting." + echo + usage + exit 1 +fi + + +if [ $# -lt 1 ] +then + echo "No options provided, running preview with watch and build." + echo "Run script with '-h' to see all available options." + echo + echo + trap stop_preview_and_exit INT + start_preview + watch_and_build + stop_preview +fi + +# parse options +while getopts "awbpkhuU" OPTION +do + case $OPTION in + a) + # handle sig INT to stop the preview + trap stop_preview_and_exit INT + start_preview + watch_and_build + stop_preview + exit 0 + ;; + w) + watch_and_build + exit 0 + ;; + b) + build + exit 0 + ;; + p) + start_preview + echo "Please run ./${script_name} -k to stop the preview server" + exit 0 + ;; + k) + stop_preview + exit 0 + ;; + h) + usage + exit 0 + ;; + u) + check_update + exit 0 + ;; + U) + install_update + exit 0 + ;; + ?) + usage + exit 1 + ;; + esac +done From e044d4c4b91ef3ddf2459c5cdef53d41a41035a5 Mon Sep 17 00:00:00 2001 From: Otto Liljalaakso Date: Jul 04 2024 18:39:42 +0000 Subject: [PATCH 7/7] Replace mention of _master_ branch with its primary name _main_ --- diff --git a/README.md b/README.md index 8094cb2..a4d3c86 100644 --- a/README.md +++ b/README.md @@ -38,7 +38,7 @@ The documentation is intended to be maintained collectively by all Fedora packagers. Trivial changes, such as adding links or correcting typos, -can be committed directly to the `master` branch. +can be committed directly to the `main` branch. More substantial changes should be submitted through pull requests and be reviewed by another contributor before merging.