droserasprout / pacman-fix-permissions Goto Github PK
View Code? Open in Web Editor NEWFix broken Arch Linux filesystem permissions
License: GNU General Public License v3.0
Fix broken Arch Linux filesystem permissions
License: GNU General Public License v3.0
Hi there,
Just ran into an issue trying to use the script on archlinuxarm on a raspberrypi 4B+.
The problem is here:
The problem is that uname -m
doesn't give the correct architecture, from pacman's perspective, at least on my machine:
[root@hostname ~]# grep Architecture /etc/pacman.conf
Architecture = armv7h
[root@hostname ~]# uname -m
armv7l
And packages are indeed build as pkgname-pkgver-armv7h
and not -armv7l
, which causes the script to fail with:
[snip]
==> Parsing installed packages list
==> Collecting actual filesystem permissions and correct ones from packages
(1/942) ack 3.4.0-1
(2/942) acl 2.2.53-3
=> acl package is missing, downloading
Traceback (most recent call last):
File "/usr/bin/pacman-fix-permissions", line 33, in <module>
sys.exit(load_entry_point('pacman-fix-permissions==1.1.1', 'console_scripts', 'pacman-fix-permissions')())
File "/usr/lib/python3.9/site-packages/pacman_fix_permissions/__init__.py", line 136, in __main__
pkgtar = getTar(pkgs[i])
File "/usr/lib/python3.9/site-packages/pacman_fix_permissions/__init__.py", line 89, in getTar
raise Exception(
Exception: Can't open or download 'acl' package, check your internet connection
(100/912) dislocker 0.7.1-2
=> dislocker package is missing, downloading
Traceback (most recent call last):
File "/usr/bin/pacman-fix-permissions", line 79, in <module>
main()
File "/usr/bin/pacman-fix-permissions", line 57, in main
old_mode = int(lstat(p).st_mode & 0o7777)
FileNotFoundError: [Errno 2] No such file or directory: '/usr/share/dislocker'
$> sudo python pacman-fix-permissions
Namespace(all=False, filesystem_paths=None, packages=None)
==> Upgrading packages that are out-of-date
:: Synchronizing package databases...
core is up to date
extra is up to date
community is up to date
multilib is up to date
:: Synchronizing package databases...
core 131.6 KiB 940 KiB/s 00:00 [############################################################] 100%
extra 1663.7 KiB 685 KiB/s 00:02 [############################################################] 100%
community 5.2 MiB 1012 KiB/s 00:05 [############################################################] 100%
multilib 158.7 KiB 2.01 MiB/s 00:00 [############################################################] 100%
:: Starting full system upgrade...
there is nothing to do
==> Parsing installed packages list
==> Collecting actual filesystem permissions and correct ones from packages
(1/1034) a52dec 0.7.4-11
=> a52dec package is missing, downloading
Traceback (most recent call last):
File "pacman-fix-permissions", line 105, in <module>
main()
File "pacman-fix-permissions", line 75, in main
pkgtar = getTar(pkgs[i])
File "pacman-fix-permissions", line 47, in getTar
raise Exception("Can't open or download '{}' package, check your internet connection".format(pkg[0]))
Exception: Can't open or download 'a52dec' package, check your internet connection
My connection is fine, probably is just not finding the package to download for some reason, I will try to fix this.
pacman-fix-permissions expects packages to be compressed by .xz whereas the default is .zst now.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.