1 (edited by bernhard.ernst 2022-10-27 20:04:50)

Topic: New to Hyperbola

Hi there,
I'm Berni from Germany and new to Hyperbola, however not new to Linux and other Unixes. Especially I am a BSD fanboy, using Open- and NetBSD.
Some days ago I installed Hyperbola on 2 machines and everything went fine. No bloatware, but a small simple OS, which has everything I need - nearly everything. There were 3 apps I missed:
- joe, my beloved editor. OK, it was no problem to built joe from source.
- xenodm, the OpenBSD DM. I expected to get it when installing xenocara, but it seems not to be in the packages. Any reason for that?
- the pax tools, also not in the repo. I used an Arch package on machine 1 and installed it with pacman -U and it worked: I have my pax tool. Then I did the same on machine 2, very similar mainboard, same processor. But calling "pax" gives the message "glibc_2.33 not found". This is correct, as the current glibc ist version 2.30.

Can one of you cracks enlighten me and explain, why pax runs perfect on machine 1 and not on machine 2?

Beside this small problem I am quite satisfied with Hyperbola.

Regards
Berni

2

Re: New to Hyperbola

Hello berni, welcome to the forums. About the missing packages in general: It depends on their stand. For "joe": If there is a BSD-port available we can look out for adding it as Hyperbola is transitioning main towards BSD on its own. smile

For "xenodm" I'm not finally sure at the moment, but we have a bunch of other window-managers nevertheless available. I will clear that point and come back later with an answer for sure.

But about the "pax-tools": You have mentioned that you have used the Arch-package. Hyperbola only shares basics with Arch GNU/Linux, the rest is complete on its own as Hyperbola is using a different approach with many parts. We are for example not using zstd-compression for the packages and it seems the package you have used was built with a different version of the glibc. This can be the reasoning when you have downloaded the same package but on different dates as Arch GNU/Linux may have refreshed their version and uploaded the new build in their repositories. The conclusion would be therefore: Compiling your own pacage perhaps? If you want I can assist and help you here for sure within this thread, guiding you through the course doing that. smile

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!

3

Re: New to Hyperbola

Hi throgh,
thanks for your helpfull words.  Off course I can live with other DMs and I selected slim now, which works fine, but is no longer maintained. Basicly the DM is not the most important application for me. :-)

OpenBSD as well as NetBSD have joe into their ports, but compiling it from source was OK for me.

Still unclear is the behaviour of the paxtools. I downloaded the Arch package and used the same file for both of my computers. Simply copying the binary file (pax) from machine 1 to 2, it runs also there. But I know that this ist not a proper solution.
I would really like to compile my own paxtool package, but I am not a programmer. Joe was running straight through the compiler, but if there a larger problems compiling the source, I will be lost.
So I would highly appreciate your help in this manner. Let me please be member of your course.

Regards
Berni

4

Re: New to Hyperbola

Okay, we will look for sure about what is possible especially when it comes to xenodm. But let's look towards pax-utils (I hope I have selected the correct one). I will list first the generic steps:

1. Enumerate the package itself throughout either Arch GNU/Linux or Debian. In that case: Arch has all fitting here.
2. Let's look into the PKGBUILD and the corresponding parts: https://github.com/archlinux/svntogit-c … tils/trunk
3. At best you download the PKGBUILD-script complete within a selected folder: https://raw.githubusercontent.com/archl … k/PKGBUILD
4. When something is missing you will also need to compile the dependencies the same way. I see there is python-pyelftools needed.

In the end: If this is the wrong package, the steps are nevertheless the same. When you have all fitting in the folder you can use the command makepkg to try a first build for the corresponding package. It is not bad if you know state for yourself this is quite too much. Being here to go step by step and this would be only a first tryout. Learning by doing as technical emancipation is one of our highest values here. smile

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!

5

Re: New to Hyperbola

Great throgh, thanks a lot. Even if I don' understand what exactly is to do I will figure it out. Give me a little time for that.

But I meant a more simple pax: The copy util. Looks like also these fittings can be found on the Arch page: https://archlinux.org/packages/community/x86_64/pax/
Now I have to read a little. But thats the way I like it, really. :-)

6

Re: New to Hyperbola

Oh sorry, than I had the wrong package, but the steps are surely the same. That is even easier as the dependencies are not much. But to clear that up: A PKGBUILD has three possible sets of dependencies:

depends means as keyword all depedencies you will surely need at runtim.
makedepends means as keyword all dependencies you will need at build-time.
optdepends means as keyword all optional dependencies.

This would the PKGBUILD you all need:

# Maintainer: Daniel Bermond <dbermond@archlinux.org>

pkgname=pax
pkgver=20201030
pkgrel=2
pkgdesc='Portable Archive Interchange - the POSIX standard archive tool for cpio and tar formats'
arch=('x86_64')
url='https://www.mirbsd.org/pax.htm'
license=('BSD')
depends=('glibc')
source=("https://www.mirbsd.org/MirOS/dist/mir/cpio/paxmirabilis-${pkgver}.cpio.gz")
noextract=("paxmirabilis-${pkgver}.cpio.gz")
sha256sums=('fe3f99c28ba7a46c4bce0b329da3742908b87fe8fbe17f0db1f99a1bd053d46b')

prepare() {
    mkdir -p "${pkgname}-${pkgver}/build"
    bsdtar -x -f "paxmirabilis-${pkgver}.cpio.gz" -C "$pkgname-${pkgver}" --strip-components='1'
}

build() {
    cd "${pkgname}-${pkgver}/build"
    sh ../Build.sh -r -tpax
    
    # license
    sed -n '5,36p' ../pax.h > LICENSE # create file
    sed -i '1,32s/^.\{,3\}//' LICENSE # erase C comments
}

package(){
    # executables
    install -D -m755 "${pkgname}-${pkgver}/build/pax" -t "${pkgdir}/usr/bin"
    ln -s pax "${pkgdir}/usr/bin/paxcpio"
    ln -s pax "${pkgdir}/usr/bin/paxtar"
    
    # man pages
    install -D -m644 "${pkgname}-${pkgver}/build/mans/"*.1 -t "${pkgdir}/usr/share/man/man1"
    
    # license
    install -D -m644 "${pkgname}-${pkgver}/build/LICENSE" -t "${pkgdir}/usr/share/licenses/${pkgname}"
}
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!

7

Re: New to Hyperbola

Hi,
back from a short trip and ready to go on with Hyperbola packages. First of all my main question:

What is the recommended way to start? Looking for the sources for, lets say, joe, and start the project from scratch?
Or using an existing package from Arch and modify it?

Regards
Berni

8

Re: New to Hyperbola

Hello, hope you had a good time. For a first tryou can test the PKGBUILD from Arch GNU/Linux and try for building a package for a local installation afterwards.

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!