Skip to content

Conversation

deepfriedmind
Copy link

@deepfriedmind deepfriedmind commented Oct 2, 2025

This facilitates installing/updating with https://github.com/ich777/un-get

Note: I've changed it so that README.md.template gets copied to README.md, and then the template string substitutions are performed. This means that future changes to the README should be made in the template file. I hope that's okay with you.

Summary by CodeRabbit

  • New Features

    • Published a Slackware repository for Fish; package now available under slackware/fish with file list and checksums.
  • Documentation

    • Expanded README with two installation methods (manual and via un-get), instructions to set Fish as default shell, and clarified "About Fish".
    • Added a README template for consistent, environment-driven release notes.
  • Chores

    • CI workflow now builds the Slackware repo, generates repository metadata, updates README from the template, and publishes the package.

Copy link

coderabbitai bot commented Oct 2, 2025

Walkthrough

Adds a Slackware repo metadata generator script, integrates README templating and repo updates into the build workflow, and adds repository metadata entries and a README template for the fish package.

Changes

Cohort / File(s) Summary
Repo metadata script
.github/scripts/generate-repo-files.sh
New shell script that enumerates package files, writes atomic FILE_LIST and CHECKSUMS.md5 (using stat/md5sum), excludes temp files, and is robust to missing files/errors.
GitHub Actions workflow updates
.github/workflows/build-fish.yml
Workflow steps added/changed to create slackware structure, move package into slackware/fish, generate metadata via the new script, generate README.md from README.md.template (placeholder substitutions), and commit/push repo changes; release artifact path updated.
README and template
README.md, README.md.template
README.md reflowed with explicit install methods and default-shell instructions; new README.md.template added with placeholders {{PKG_FILE}}, {{UPSTREAM_FILE}}, {{REPO_URL}} for workflow-driven README generation.
Slackware repo outputs
slackware/CHECKSUMS.md5, slackware/FILE_LIST
Added entries for ./fish/fish-4.1.1-x86_64-1_da.txz to CHECKSUMS.md5 and FILE_LIST (permissions, size, timestamp recorded).

Sequence Diagram(s)

sequenceDiagram
  autonumber
  actor Runner as GitHub Actions Runner
  participant WF as build-fish.yml
  participant FS as Workspace FS
  participant Script as generate-repo-files.sh
  participant Git as Git Remote

  Runner->>WF: start job (release/build)
  WF->>FS: create slackware/ folders
  WF->>FS: move built package -> slackware/fish/
  WF->>FS: render README.md from README.md.template (env placeholders)
  WF->>Script: execute Script (cwd: slackware)
  Script->>FS: scan files, collect stat metadata -> FILE_LIST.tmp
  Script->>FS: compute md5s -> CHECKSUMS.md5.tmp
  Script->>FS: atomically rename tmp files -> FILE_LIST, CHECKSUMS.md5
  WF->>FS: git add README, slackware/*
  WF->>Git: commit & push (if not skipped)
  Git-->>WF: push result
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

  • Release description changed to {{ env.latest_file }} #8 — Modifies the release asset/path in .github/workflows/build-fish.yml, closely related to this PR’s artifact changes.
  • Dev test4 #11 — Adjusts README update/substitution steps in the workflow; related to the templated README approach here.
  • Dev test4 #10 — Adds/adjusts pkg_file/release-asset workflow variables and README steps; code-level overlap with this workflow update.

Poem

In bins and bytes I twitch my nose,
I tally files where checksum goes.
A temp file hops, then swaps in place,
README reads its templated face.
I push, I leap—repository grows. 🐇✨

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The title succinctly describes the primary intent of the changeset, which is adding Slackware compatibility to the repository by generating metadata and updating workflows and documentation to support Slackware.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
  • 📝 Generate Docstrings
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 7772367 and 185993b.

📒 Files selected for processing (2)
  • .github/scripts/generate-repo-files.sh (1 hunks)
  • README.md (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • .github/scripts/generate-repo-files.sh

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3b0d120 and 5414acf.

📒 Files selected for processing (6)
  • .github/scripts/generate-repo-files.sh (1 hunks)
  • .github/workflows/build-fish.yml (4 hunks)
  • README.md (1 hunks)
  • README.md.template (1 hunks)
  • slackware/CHECKSUMS.md5 (1 hunks)
  • slackware/FILELIST.TXT (1 hunks)
🧰 Additional context used
🪛 markdownlint-cli2 (0.18.1)
README.md

32-32: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 5414acf and 7772367.

📒 Files selected for processing (6)
  • .github/scripts/generate-repo-files.sh (1 hunks)
  • .github/workflows/build-fish.yml (4 hunks)
  • README.md (1 hunks)
  • README.md.template (1 hunks)
  • slackware/CHECKSUMS.md5 (1 hunks)
  • slackware/FILE_LIST (1 hunks)
✅ Files skipped from review due to trivial changes (1)
  • slackware/FILE_LIST
🚧 Files skipped from review as they are similar to previous changes (2)
  • README.md.template
  • slackware/CHECKSUMS.md5
🔇 Additional comments (1)
README.md (1)

23-24: ...

Also applies to: 38-38

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant