You are not logged in.
Hi community!
I've read How to Request a Package and the linked wiki pages but my PKGBUILD doesn't work yet. Thank you for assisting.
Download page of Codux: https://www.codux.com/download
Package file download URL: https://github.com/wixplosives/codux-ve … x64.pacman
The downloadable .pacman file can be installed using pacman -U:
$ sudo pacman -U Codux-15.40.0.x64.pacman
It seems to be a .tar.xz file:
$ file Codux-15.40.0.x64.pacman
Codux-15.40.0.x64.pacman: XZ compressed data, checksum CRC32
Here is my PKGBUILD:
# Maintainer: Your Name <your.email@example.com>
pkgname=codux
pkgver=15.40.0
pkgrel=1
pkgdesc="Codux - A visual IDE for React projects"
arch=('x86_64')
url="https://github.com/wixplosives/codux-versions"
license=('custom')
source=("https://github.com/wixplosives/codux-versions/releases/download/$pkgver/Codux-$pkgver.x64.pacman")
sha256sums=('7e76fc4c050f865d3fd977eae8094900a699c1888e66f92e19acc219bd07369a')
package() {
# attempt 1
tar -xf "$srcdir/Codux-$pkgver.x64.pacman" -C "$pkgdir"
# attempt 2
# Extract the .pacman package
bsdtar -xf "$srcdir/Codux-$pkgver.x64.pacman" -C "$pkgdir"
# Optionally set permissions or move files, if needed
# Example: chmod -R 755 "$pkgdir/usr/share/codux"
# attempt 3
mv "$srcdir/Codux-$pkgver.x64.pacman" "$pkgname-$pkgver-$pkgrel-x86_64.pkg.tar.xz"
# final attempt
# just use the .pacman file as the desired package because it can be used through pacman -U
}
build() {
echo "build()"
}
Thank you for your guidance.
Regards
Offline
Okay so, what you're trying to do is basically creating a pacman package out of a pacman package. This is not how the makepkg tool is intended to be used. It trys to create it in the unpacked .pacman-tree and that is not possible, because the package information is already there.
Offline
Many upstream provided binary packages are generated by automated tooling that (often) does a bad job.
Does the program work when installed with pacman -U and/or are adjustments needed ?
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Online
I briefly went through all of their GitHub repositories but couldn't find the actual PKGBUILD they use to build their ".pacman" file. It's also weird that they do not list any dependencies anywhere in their "Download and Install" documentation (which should be in the PKGBUILD as well).
If we assume they are not deliberately hiding the PKGBUILD, maybe reach out to them and see if they can point you to it? A proper PKGBUILD would be much better to work with. I assume they must have one on their own build server that pushes the binary to their codux-versions repo?
Offline
Thanks for your replies.
Okay so, what you're trying to do is basically creating a pacman package out of a pacman package. This is not how the makepkg tool is intended to be used. [...]
Should I use the .rpm file instead? There should be working AUR packages providing that functionality.
Does the program work when installed with pacman -U and/or are adjustments needed ?
Yes. No adjustments are needed.
It's also weird that they do not list any dependencies anywhere [...]
During my attempts I found a file src/.PKGINFO that looks like this.
# Generated by fpm
# Hello packaging friend!
#
# If you find yourself using this 'fpm --edit' feature frequently, it is
# a sign that fpm is missing a feature! I welcome your feature requests!
# Please visit the following URL and ask for a feature that helps you never
# need to edit this file again! :)
# https://github.com/jordansissel/fpm/issues
# ------------------------------------------------------------------------
#
pkgname = Codux
pkgver = 15.40.0-1
pkgdesc =
Codux
url = https://www.codux.com
builddate = 1735051223
packager = Wix.com
size = 535388160
arch = x86_64
license = UNLICENSED
group = default
depend = c-ares
depend = ffmpeg
depend = gtk3
depend = http-parser
depend = libevent
depend = libvpx
depend = libxslt
depend = libxss
depend = minizip
depend = nss
depend = re2
depend = snappy
depend = libnotify
depend = libappindicator-gtk3
And a pkg/codux/.BUILDINFO:
format = 2
pkgname = codux
pkgbase = codux
pkgver = 15.40.0-1
pkgarch = x86_64
pkgbuild_sha256sum = df5a31b1b5e8ef3e090f0dd04caac578abe8775d9f215be050c7b678aca724c0
packager = Unknown Packager
builddate = 1735489229
builddir = /home/foo/codux
startdir = /home/foo/codux
buildtool = makepkg
buildtoolver = 7.0.0
buildenv = !distcc
buildenv = color
buildenv = !ccache
buildenv = check
buildenv = !sign
options = strip
options = docs
options = !libtool
options = !staticlibs
options = emptydirs
options = zipman
options = purge
options = debug
options = lto
installed = [list of all my packages, removed]
I hope this helps.
Last edited by auipga (2025-01-03 16:34:44)
Offline
# Generated by fpm
that's a tool to adjust installs to work with multiple package managers. It probably created the neccessary files from whatever format upstream builds in directly to files needed by pacman.
The .rpm download also contains only binaries.
The .PKGINFO atleast lists all deps and could be useful to create a proper -bin package.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Online