1

Topic: [Hyperbola] Useful links for packaging

Hello dear community,

Hyperbola is done by the community for the community, so this thread is for sure a noted help for everyone interested in packaging and sharing the results later. So if you find sources by yourself post them within here. I start with one helper being useful: https://github.com/OpenRC/openrc/blob/m … t-guide.md

Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

2 (edited by auanta 2023-03-15 01:59:26)

Re: [Hyperbola] Useful links for packaging

I only know how to compile things from git. I am new to packaging and have a list of desired packages I want to set up, got done reading the wiki's packaging guidelines and still not sure what the specific steps/workflow are to properly compile a package, specifically using libretools and chroot for secure build environment.

I know what the standards are, but:
What are the steps I need to take to follow the security and privacy guidelines?
Does it matter if I use chroot, firejail, bubblewrap or containers?

Should I follow the Parabola workflows? -->
https://wiki.parabola.nu/Package_maintainer_guide
https://wiki.parabola.nu/How_to_help
https://wiki.parabola.nu/Category:Packaging
https://wiki.parabola.nu/Creating_-libre_packages
https://wiki.archlinux.org/title/Develo … ean_Chroot
https://wiki.parabola.nu/Libremakepkg
https://wiki.parabola.nu/PKGBUILD


I tend to do well if there are some instructiions. So if anyone can recommend some links to guides to make packages on Hyperbola in a way that follows the standards, please post them!

I plan on learning to do the good practices well for myself before taking on the further responsibility.

3

Re: [Hyperbola] Useful links for packaging

Yes, good to bring the links here and asking: For a first tryout you can look at some packages here provided. You can use all pf them, as example: 3proxy

The PKGBUILD is the central file needed, for the mentioned package there are more besides the source-file: Another local patchset and the service-definitions being used later on. When downloaded within a folder, you can use the command makepkg for a local tryout (outside of a clean chroot). When dependencies are missing: makepkg -s

When further packages are missed you should for sure add them throughout the same workflow. This is only the first run for starting. I have mentioned the chroot-environment: This would be the next step. Here to read more about: https://forums.hyperbola.info/viewtopic.php?id=632

Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

4

Re: [Hyperbola] Useful links for packaging

Hello again! Thanks! Looks like there is a dead link in that thread:
https://git.conocimientoslibres.ga/docu … 90d4ce7a2b

The entire website is down! Will I be needing this?

5

Re: [Hyperbola] Useful links for packaging

Oh, sorry. Yes, would be helpful. But I will post the corresponding contents again later. Seems like the most websites from that region are offline for the moment. The content would be for sure helpful for a better understanding!

Human being in favor with clear principles and so also for freedom in soft- and hardware!

Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!

6 (edited by auanta 2023-03-24 04:30:41)

Re: [Hyperbola] Useful links for packaging

OK so it dawned on me that PKGBUILDS are just bash scripts. This will help. I just need to get familiar with the PKGBUILD functions and consult BASH scripting if I don't know how to write something

https://unix.stackexchange.com/question … a-pkgbuild
https://wiki.archlinux.org/title/PKGBUILD
https://wiki.archlinux.org/title/Creating_packages

I see that in my Hyperbola install, I can look at PKGBUILD templates with all the variables under /usr/share/pacman:
PKGBUILD.proto : this is the most commonly used template, and you would copy the release version number from the source
PKGBUILD-split.proto : this one is used only when the package is a split package (rare and probably never gonna happen in Hyperbola)
PKGBUILD-vcs.proto : this one is used only when the source is only available on a version control system like git, in which case all version numbers must be whole integers and not decimal points.
proto.install : is a default template for a post-install script, if the source uses one

In order to package, then, we would consult the package source for the functions we need to include in the PKGBUILD.

ArchWiki wrote:

Download the source tarball of the software you want to package, extract it, and follow the author's steps to install the program. Make a note of all commands and/or steps needed to compile and install it. You will be repeating those same commands in the PKGBUILD file.

For good hygiene, we should create a chroot, follow the compilation and install process and then create a PKGBUILD from that. If the install process fails, we should delete the chroot and start over with a clean one until the package compiles and installs successfully, Then PKGBUILD must draw from a successful install. Then, create a separate chroot for making a nice Hyperbola package, and using the PKGBUILD follow the Hyperbola install process. If it fails, delete chroot and make a fresh one, correct the PKGBUILD file, and try again. Sooner or later, the package will build, and so long as the Hyperbola Packaging Guidelines are followed you will have created a package that can be included.

7

Re: [Hyperbola] Useful links for packaging

throgh wrote:

Hello dear community,

Hyperbola is done by the community for the community, so this thread is for sure a noted help for everyone interested in packaging and sharing the results later. So if you find sources by yourself post them within here. I start with one helper being useful: https://github.com/OpenRC/openrc/blob/m … t-guide.md

Appreciate the link.

Btw, I keep forgetting to ask Luke, about something specific.

HyperbolaBSD: The Future of Secure Libre Lightweight Operating Systems!

8

Re: [Hyperbola] Useful links for packaging

What do people think, did I summarize the packaging steps correctly?