Package Details: pacman-static 7.0.0.r3.g7736133-9

Git Clone URL: https://aur.archlinux.org/pacman-static.git (read-only, click to copy)
Package Base: pacman-static
Description: Statically-compiled pacman (to fix or install systems without libc)
Upstream URL: https://www.archlinux.org/pacman/
Licenses: GPL-2.0-or-later
Submitter: mazieres
Maintainer: Morganamilo (andreas_baumann)
Last Packager: andreas_baumann
Votes: 57
Popularity: 2.77
First Submitted: 2013-01-09 02:17 (UTC)
Last Updated: 2024-11-23 08:26 (UTC)

Dependencies (5)

Required by (0)

Sources (26)

Pinned Comments

Morganamilo commented on 2022-02-20 18:30 (UTC)

There's now a custom repo and binaries again. Though only for x86_64 currently.

Custom Repo
[pacman-static]
SigLevel = Required
Server = https://pkgbuild.com/~morganamilo/$repo/$arch
Pre compiled binaries

https://pkgbuild.com/~morganamilo/pacman-static/x86_64/bin/

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 9 10 .. 13 Next › Last »

phoepsilonix commented on 2024-03-23 11:40 (UTC) (edited on 2024-03-24 22:46 (UTC) by phoepsilonix)

Proposal.
Add -ffat-lto-objects flag to LTOFLAGS to prevent mangling of static libs.(gcc)
If We add -ffat-lto-objects to LTOFLAGS, We don't have to worry about specifying lto options in makepkg.conf or PKGBUILD.

diff --git a/PKGBUILD b/PKGBUILD
index 7e96789..525e004 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -139,6 +139,11 @@ fi
 export CFLAGS+=' -D_LARGEFILE64_SOURCE'
 export CXXFLAGS+=' -D_LARGEFILE64_SOURCE'

+# Add -ffat-lto-objects flag to LTOFLAGS to prevent mangling of static libs.(gcc)
+# In clang-16, there seems to be no problem without this option specified.
+# (The -ffat-lto-objects option is planned to be supported from clang-17.)
+[[ $CC =~ gcc ]] && export LTOFLAGS+=" -fuse-linker-plugin -ffat-lto-objects"
+
 # keep using xz-compressed packages, because one use of the package is to
 # recover on systems with broken zstd support in libarchive
 [[ $PKGEXT = .pkg.tar.zst ]] && PKGEXT=.pkg.tar.xz

andreas_baumann commented on 2024-03-14 09:52 (UTC)

Will update to 6.1 when core-stable goes to 6.1 not if core-testing is on 6.1.

andreas_baumann commented on 2024-03-09 16:13 (UTC)

@Archttila: this doesn't explain anything. What where you doing when you got this error message?

Archttila commented on 2024-03-09 15:43 (UTC)

no such file or directory: PKGBUILD

andreas_baumann commented on 2024-02-16 07:42 (UTC)

For maintainance of the keys:

for i in $( . PKGBUILD; echo "${validpgpkeys[@]}" ); do gpg --receive "$i"; gpg -a --export "$i" > "keys/pgp/$i.asc" ; done

andreas_baumann commented on 2024-02-16 07:39 (UTC) (edited on 2024-02-16 07:42 (UTC) by andreas_baumann)

Ideal would be if we could have a 'keys/pgp' directory as for the "normal" packages, where we could deposit all PGP keys necessary to build the package:

So we could keep the keys of for instance 'openssl' there:

ls keys/pgp/
7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C.asc  A21FAB74B0088AA361152586B8EF1A6BA9DA2D5C.asc
8657ABB260F056B1E5190839D9C4D26D0E604491.asc  EFC0A467D613CB83C7ED6D30D894E2CE8B3D79F5.asc

VorpalWay commented on 2024-02-15 21:56 (UTC) (edited on 2024-02-15 21:59 (UTC) by VorpalWay)

It seems there should probably be a list of GPG keys you need to import to build this somewhere. I ended up extracting all the IDs from the PKGBUILD, but it would be nice to have it collected in a single list given how many there are. As of writing this I ended up with the following list

gpg --recv-keys \
6645B0A8C7005E78DB1D7864F99FFE0FEAE999BD B8151B117037781095514CA7BBDFFC92306B1121 \
27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2 27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2 \
8657ABB260F056B1E5190839D9C4D26D0E604491 7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C \
A21FAB74B0088AA361152586B8EF1A6BA9DA2D5C EFC0A467D613CB83C7ED6D30D894E2CE8B3D79F5 \
8657ABB260F056B1E5190839D9C4D26D0E604491 7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C \
A21FAB74B0088AA361152586B8EF1A6BA9DA2D5C EFC0A467D613CB83C7ED6D30D894E2CE8B3D79F5 \
5ED46A6721D365587791E2AA783FCD8E58BCAFBA 3690C240CE51B4670D30AD1C38EE757D69184620 \
22D465F2B4C173803B20C6DE59FCF207FEA7F445 EC3CFE88F6CA0788774F5C1D1AA44BE649DE760A \
4EF4AC63455FC9F4545D9B7DEF8FE99528B52FFD D8692123C4065DEA5E0F3AB5249B39D24F25E3B6 \
031EC2536E580D8EA286A9F22071B08A33BD3F06 6DAA6E64A76D2840571B4902528897B826403ADA \
AC8E115BF73E2D8D47FA9908E98E9B2D19C6C8BD A5A45B12AD92D964B89EEE2DEC560C81CEC2276E \
DB2C7CF1B4C265FAEF56E3FC5848A18B8F14184B

In fact I believe that it is recommended to bundle the required keys in the package repo these days? I'm pretty sure I saw something about that in some packaging guidelines (probably on the wiki).

BryanLiang commented on 2024-02-07 13:39 (UTC)

The key EFC0A467D613CB83C7ED6D30D894E2CE8B3D79F5 for openssl has been expired.

andreas_baumann commented on 2024-01-24 17:12 (UTC)

updated nghttp2 to 1.59.0 and zlib to 1.3.1

LukeShortCloud commented on 2024-01-18 03:46 (UTC)

Thanks for all of the hints! I did not realize that pacman-key was a shell script. The short conclusion to my problem is that I was able to fix it by running: sudo sed -i s'/pacman-conf/pacman-conf-static/'g /usr/bin/pacman-key.

Good to know that I can also easily look at the code to manually replicate the GPG actions. Also good to know about makepkg being able to use pacman-static! I try to use pre-compiled packages as much as possible (either my own or from the Chaotic repository).

I am the creator of winesapOS and we have an automated upgrade script. One thing I am working on is to refactor it out of the winesapOS project and for it to to work for any generic Arch Linux distribution. I will apply these teachings there!

https://github.com/LukeShortCloud/winesapOS/blob/3.4.0/scripts/winesapos-upgrade.sh

No changes need to be made to the pacman-static package. It was just a lack of knowledge on my side for how some of this worked. Thanks again! :-)