0x4E4F

joined 9 months ago
MODERATOR OF
[โ€“] [email protected] 1 points 7 months ago (6 children)

How does xbps-src handle dependencies?

Regarding feeding it rpm/deb packages, it reads the dependencies from the deb/rpm package and uses the equvalent names in shlibs (shared libraries). That's basically a list of libs that some applications expect to find, so xbps-src just makes a symbolic link to the equvalent lib with the name that the app expects to find. Look at the example I gave above with libtiff.

Regarding everything else built from source, there are 3 types of dependencies, since the packages are built in a chroot: hostdepends - dependcies that are requires by the chroot system, makedepends - dependencies that are required to build the package, depends - dependencies that are required to run the package. The ones that are required just to run the thing are the just depends, the other 2 are required for building only.

What happens if a dependency is not available in the Void repos?

You find the equivalent lib in Void (the xtools package is a great help for a lot of things, including repackaging), add it to shlibs and that's it. If it's proprietery or Void doesn't have it (higly unlikely if it's open source... I have yest to run in a case like that), you have to put in the template as a distfile (if proprietery and only binary versions are available), or you have to compile from source (also done automatically by xbps-src once it detect there are distfiles for the lib and is not present in the repos).

Building from source is also easy in most cases (when no patches need to be applied). xbps-src has build styles (gnu-make, meson, etc.), so you just define that in the buildstyle parameter and it does everything automatically, including adding missing build dependencies.

xbps-src goes through a lot of trouble to make packaging and building as automatic as possible.

[โ€“] [email protected] 2 points 7 months ago

Meeh, it was funny... not a meme per say, but still, funny ๐Ÿ˜.

[โ€“] [email protected] 3 points 7 months ago* (last edited 7 months ago)

No, just bootup and general responsivness of the system. Software is still compiled by the ssme compilers used in other distros. Everything is not magically faster.

Though on the musl build, yeah, it is faster. Trouble is, you can't run glibc software on it. Through chroot, yeah, but natively, no.

[โ€“] [email protected] 4 points 7 months ago (1 children)

OK, I have to admit, i kinda fell for it ๐Ÿ˜‚.

[โ€“] [email protected] 2 points 7 months ago* (last edited 7 months ago) (8 children)

The syntax is a bit different, but everything else, more or less the same. In fact, if you just wanna repackage a deb or an rpm, it's even easier than in Arch, xbps-src can handle deb and rpm automatically, it detects dependencies and does repackaging on it's own. You basically just have to feed it the deb/rpm file in a one liner, that's it.

I should probably give an example. Here is the template file (they're called templates in Void) for Viber. You basically just feed it the deb, do a vcopy (copy operation specific to xbps-src) and that's it, everything else regarding the repackaging is done automatically by xbps-src.

[โ€“] [email protected] 1 points 7 months ago (10 children)

Repackaging is easy though with xbps-src.

[โ€“] [email protected] 0 points 7 months ago

Void runs even faster, I've tried (on an older RPi, but still).

[โ€“] [email protected] 1 points 7 months ago

Some patches are there for software that reauires systemd or parts of it.

[โ€“] [email protected] 1 points 7 months ago* (last edited 7 months ago)

Not just musl, software that depends on systemd (or parts of it) as well.

We also need to patch binaries as well sometimes ๐Ÿ˜. It is fun though, cutter and/or iaito are great tools.

[โ€“] [email protected] 2 points 7 months ago (1 children)

Yes, there are basically 2 builds for every architecture. One is glibc, the other is musl. I haven't used the musl builds that much, just toyed with them a few times (mainly because of lack of software), but if you only use open source software that doesn't specifically depend on the GNU toolchain, yes, you can daily drive it, no doubt there. And yes, it is faster than the glibc builds.

[โ€“] [email protected] 1 points 7 months ago (3 children)

No, I just don't like systemd. It's bloated and full of bugs. Just because almost every distro out there uses it, doesn't mean it's good.

[โ€“] [email protected] 4 points 7 months ago* (last edited 7 months ago)

Runit is even easier than doing things in systemd.

https://youtu.be/PRpcqj9QR68

It really is that easy. Runit is probably the simplest init/service manager there is out there.

54
To time a wave (files.catbox.moe)
80
To eat in peace (files.catbox.moe)
471
submitted 8 months ago* (last edited 8 months ago) by [email protected] to c/[email protected]
 
 
 
 
 
view more: โ€น prev next โ€บ