Skip to content

build: add nfpms config to generate deb and rpm packages - #501

Open
Vaishnav88sk wants to merge 1 commit into
microcks:masterfrom
Vaishnav88sk:feature/issue-153-apt-packaging
Open

build: add nfpms config to generate deb and rpm packages#501
Vaishnav88sk wants to merge 1 commit into
microcks:masterfrom
Vaishnav88sk:feature/issue-153-apt-packaging

Conversation

@Vaishnav88sk

@Vaishnav88sk Vaishnav88sk commented Aug 12, 2026

Copy link
Copy Markdown

Description

  • This PR addresses issue Publish microcks to apt-get package manager for installation on linux/debian based systems #153 by configuring GoReleaser to automatically build native Linux packages (.deb and .rpm).
  • Currently, Linux users must manually download the raw binary via curl and move it to their executable path. By adding the nfpms block to our .goreleaser.yaml, we now generate official .deb (Debian/Ubuntu) and .rpm (RedHat/CentOS) packages alongside our existing release artifacts.
  • Added nfpms block below the brews block in .goreleaser.yaml.

Next Steps & Discussion

This PR provides the raw packages, which users can now download and install via sudo dpkg -i microcks.deb.
To fully achieve the apt-get install microcks experience requested in the issue, we will need to host these packages in an APT repository. I highly recommend using Gemfury, as it provides a free tier for OSS and integrates natively with GoReleaser. Once we have a Gemfury organization account set up, we can easily add the fury publisher block in a follow-up PR or update in this PR!

Ref:

Related issue(s)

Fixes #153

Signed-off-by: Vaishnav88sk <vaishnavsk8804@gmail.com>
@Vaishnav88sk
Vaishnav88sk force-pushed the feature/issue-153-apt-packaging branch from 8c8cff8 to 5914eb5 Compare August 12, 2026 18:18
@Vaishnav88sk

Copy link
Copy Markdown
Author

To fully resolve this and provide a seamless apt-get install microcks experience, I recommend using Gemfury to host the APT repository. It provides a 100% free tier for public open-source packages and integrates natively with our existing GoReleaser setup.

Here is the proposed process to implement this:

  1. Packaging: We update our .goreleaser.yaml to include the nfpms plugin, which will automatically generate .deb and .rpm packages during the build process.
  2. Hosting Account: We need to create a free Gemfury organization account for Microcks.
  3. CI/CD Integration:
    • We generate a Gemfury API token and add it to our repository's GitHub Secrets (e.g., FURY_TOKEN).
    • We add the fury publisher block to .goreleaser.yaml.
    • Going forward, every GitHub release will automatically trigger GoReleaser to upload the new .deb packages directly to the Gemfury APT repository.

@Vaishnav88sk

Vaishnav88sk commented Aug 12, 2026

Copy link
Copy Markdown
Author

cc @Harsh4902 @lbroudoux @yada

@github-actions

Copy link
Copy Markdown

👋 @Vaishnav88sk

Welcome to the Microcks community! 💖

Thanks and congrats 🎉 for opening your first pull request here! Be sure to follow the pull request template or please update it accordingly.

Hope you have a great time there!

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.

Publish microcks to apt-get package manager for installation on linux/debian based systems

1 participant