Coder Social home page Coder Social logo

termux-pacman / pacman-for-termux Goto Github PK

View Code? Open in Web Editor NEW
63.0 5.0 6.0 4.21 MB

Special configured pacman for termux.

Home Page: https://termux-pacman.dev

License: MIT License

Shell 19.78% CSS 0.01% Meson 2.83% C 61.31% Perl 0.43% Python 15.65%
termux pacman makepkg arch-linux archlinux termux-pacman

pacman-for-termux's People

Contributors

kxxt avatar maxython avatar perosar avatar yisus7u7 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

pacman-for-termux's Issues

Can't create '/go/to/file'

I decided to experiment with installing packages without dependency. As a result, it was installed by pacman, but it was not installed in /usr/bin.
Example gcc installation:

~ $ pacman -Sdd gcc
warning: gcc-10.2.0-1 is up to date -- reinstalling
looking for conflicting packages...

Packages (1) gcc-10.2.0-1

Total Installed Size:  124.23 MiB
Net Upgrade Size:        0.00 MiB

:: Proceed with installation? [Y/n] y
(1/1) checking keys in keyring                     [####] 100%
(1/1) checking package integrity                   [####] 100%
(1/1) loading package files                        [####] 100%
(1/1) checking for file conflicts                  [####] 100%
(1/1) checking available disk space                [####] 100%
warning: could not get file information for usr/bin/aarch64-unknown-linux-gnu-g++
warning: could not get file information for usr/bin/aarch64-unknown-linux-gnu-gcc-10.2.0
warning: could not get file information for usr/bin/c++
warning: could not get file information for usr/bin/g++
warning: could not get file information for usr/bin/gcc
warning: could not get file information for usr/bin/gcc-ar
warning: could not get file information for usr/bin/gcc-nm
warning: could not get file information for usr/bin/gcc-ranlib
:: Processing package changes...
(1/1) reinstalling gcc                             [####] 100%
warning: warning given when extracting /usr/bin/aarch64-unknown-linux-gnu-g++ (Can't create '/usr/bin/aarch64-unknown-linux-gnu-g++')
warning: warning given when extracting /usr/bin/aarch64-unknown-linux-gnu-gcc-10.2.0 (Can't create '/usr/bin/aarch64-unknown-linux-gnu-gcc-10.2.0')
warning: warning given when extracting /usr/bin/c++ (Can't create '/usr/bin/c++')
warning: warning given when extracting /usr/bin/g++ (Can't create '/usr/bin/g++')
warning: warning given when extracting /usr/bin/gcc (Can't create '/usr/bin/gcc')
warning: warning given when extracting /usr/bin/gcc-ar (Can't create '/usr/bin/gcc-ar')
warning: warning given when extracting /usr/bin/gcc-nm (Can't create '/usr/bin/gcc-nm')
warning: warning given when extracting /usr/bin/gcc-ranlib (Can't create '/usr/bin/gcc-ranlib')
~ $ gcc
The program gcc is not installed. Install it by executing:
 pkg install clang

UID/GID all packages installed prior to switching to pacman are wrong

Hello. I followed the instructions on switching from pkg/apt to pacman using usr-n/ and Android Shell into termux to copy over. Pacman works and everything, but it seemed as though I didn't have any packages installed at this point. It seems as though they are all still there, running "pacman -Qk --check" but I get a warning for every package and dependency that my UID and GID are wrong. Would it be best to just reinstall all packages manually or would reassigning the UID/GID on the already existing packages work?

error: command terminated by signal 31: Bad system call

Some packages from pacman show this error after installation. For example the archlinuxarm-keyring package.
Screenshot_20210522-142308_Termux
At the moment, it is not clear why this error is displayed, and the addition to this is the package itself is installed.

exists in filesystem

At this point, pacman installs packages from the internet correctly, but the process stops when retrieving packages.

Basic error:

filesystem: /data/data/com.termux/files/usr/bin exists in filesystem
filesystem: /data/data/com.termux/files/usr/lib exists in filesystem

Other files or directories can also get into this error.

On the Internet they say that you need to delete these files, but in this case this is not a solution (bin and lib are system directories, and if termux works without bin, then there is no lib). They also say to use --overwrite, but it doesn't work.

The error is caused in the src/pacman/sync.c file in the sync_prepare_execute function in the if (alpm_trans_commit (...)) clause.

I'm all in #meta

This repo looks so promising that all I wanted from 2015 to run Pacman directly in termux. I'm all in for this ...

Error running post-transaction hooks

When installing packages using post-transaction, there is a chance that there will be an error.
Example of installing ca-certificates-utils:

[u0_a494@localhost test]$ pacman -S ca-certificates-utils
warning: ca-certificates-utils-20210603-1 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...

Packages (1) ca-certificates-utils-20210603-1

Total Installed Size:  0.01 MiB
Net Upgrade Size:      0.00 MiB

:: Proceed with installation? [Y/n] y
(1/1) checking keys in keyring                     [####] 100%
(1/1) checking package integrity                   [####] 100%
(1/1) loading package files                        [####] 100%
(1/1) checking for file conflicts                  [####] 100%
(1/1) checking available disk space                [####] 100%
:: Processing package changes...
/data/data/com.termux/files/usr/bin/dash: 2: cannot open 0: No such file
(1/1) reinstalling ca-certificates-utils           [####] 100%
:: Running post-transaction hooks...
(1/1) Rebuilding certificate stores...
trust: error while loading shared libraries: libdl.so.2: cannot open shared object file: No such file or directory
trust: error while loading shared libraries: libdl.so.2: cannot open shared object file: No such file or directory
trust: error while loading shared libraries: libdl.so.2: cannot open shared object file: No such file or directory
trust: error while loading shared libraries: libdl.so.2: cannot open shared object file: No such file or directory
trust: error while loading shared libraries: libdl.so.2: cannot open shared object file: No such file or directory
trust: error while loading shared libraries: libdl.so.2: cannot open shared object file: No such file or directory
trust: error while loading shared libraries: libdl.so.2: cannot open shared object file: No such file or directory
find: error while loading shared libraries: libm.so.6: cannot open shared object file: No such file or directory
error: command failed to execute correctly

The reason for the error is that if you replace the commands from arch, then some need to run with the asl command.

Mirror list tar is outdated

The mirror list is outdated

--2021-05-21 17:26:15--  http://mirror.archlinuxarm.org/aarch64/core/pacman-mirrorlist-20210307-1-any.pkg.tar.xz
Resolving mirror.archlinuxarm.org... 
failed: No address associated with hostname

warning: warning given when extracting (Could not stat)

Describe the bug
This is happens when I tried to setup pacman-on-termux

warning: warning given when extracting /data/data/com.termux/files/usr/include/sound/sof/ (Could not stat /data/data/com.termux/files/usr/include/sound/sof)                    warning: warning given when extracting /data/data/com.termux/files/usr/include/sound/sof/abi.h (Could not stat /data/data/com.termux/files/usr/include/sound/sof/abi.h)         warning: warning given when extracting /data/data/com.termux/files/usr/include/sound/sof/fw.h (Could not stat /data/data/com.termux/files/usr/include/sound/sof/fw.h)           warning: warning given when extracting /data/data/com.termux/files/usr/include/sound/sof/header.h (Could not stat /data/data/com.termux/files/usr/include/sound/sof/header.h)   warning: warning given when extracting /data/data/com.termux/files/usr/include/sound/sof/tokens.h (Could not stat /data/data/com.termux/files/usr/include/sound/sof/tokens.h)   warning: warning given when extracting /data/data/com.termux/files/usr/include/sound/tlv.h (Could not stat /data/data/com.termux/files/usr/include/sound/tlv.h)                 warning: warning given when extracting /data/data/com.termux/files/usr/include/sound/usb_stream.h (Could not stat /data/data/com.termux/files/usr/include/sound/usb_stream.h)   warning: warning given when extracting /data/data/com.termux/files/usr/include/video/ (Could not stat /data/data/com.termux/files/usr/include/video)                            warning: warning given when extracting /data/data/com.termux/files/usr/include/video/edid.h (Could not stat /data/data/com.termux/files/usr/include/video/edid.h)               warning: warning given when extracting /data/data/com.termux/files/usr/include/video/sisfb.h (Could not stat /data/data/com.termux/files/usr/include/video/sisfb.h)             warning: warning given when extracting /data/data/com.termux/files/usr/include/video/uvesafb.h (Could not stat /data/data/com.termux/files/usr/include/video/uvesafb.h)         warning: warning given when extracting /data/data/com.termux/files/usr/include/xen/ (Could not stat /data/data/com.termux/files/usr/include/xen)                                warning: warning given when extracting /data/data/com.termux/files/usr/include/xen/evtchn.h (Could not stat /data/data/com.termux/files/usr/include/xen/evtchn.h)               warning: warning given when extracting /data/data/com.termux/files/usr/include/xen/gntalloc.h (Could not stat /data/data/com.termux/files/usr/include/xen/gntalloc.h)           warning: warning given when extracting /data/data/com.termux/files/usr/include/xen/gntdev.h (Could not stat /data/data/com.termux/files/usr/include/xen/gntdev.h)               warning: warning given when extracting /data/data/com.termux/files/usr/include/xen/privcmd.h (Could not stat /data/data/com.termux/files/usr/include/xen/privcmd.h)             error: could not restore working directory (Operation not permitted)

To Reproduce
Steps to reproduce the behavior:

  1. Install a package

Expected behavior
The error shouldn't happen

Smartphone:

  • Device: Infinix Hot 9 Play
  • OS: Android 10
  • Version: Pacman v6.0.0

Seamlessly build AUR packages

reallymakepkg is a makepkg wrapper which makes PKGBUILDs written for Archlinux buildable in a termux environment, so one doesn't have to maintain double the PKGBUILDs.

I think it could make sense to mention this somewhere or add the tool or integrate the capability in here, but really a small wrapper seems to me more flexible.

Uninstall features

Is your feature request related to a problem? Please describe.
pacman-on-termux always broke my termux.

Describe the solution you'd like
I would like an uninstall feature for pacman-on-termux install.sh

Describe alternatives you've considered
I opened a failsafe session and removed ../usr

installation on arm7

Hi,

im on arm7 (snapdragon 801) and during installation I got these errors

Installing collected packages: meson
Successfully installed meson-0.59.3
WARNING: You are using pip version 21.2.3; however, version 21.3.1 is available.
You should consider upgrading via the '/data/data/com.termux/files/usr/bin/python3 -m pip install --upgrade pip' command.

Installing pacman.
The Meson build system
Version: 0.59.3
Source dir: /data/data/com.termux/files/home/pacman-for-termux/pacman-arch
Build dir: /data/data/com.termux/files/home/pacman-for-termux/pacman-arch/build
Build type: native build
Project name: pacman
Project version: 6.0.0
C compiler for the host machine: cc (clang 13.0.0 "clang version 13.0.0")
C linker for the host machine: cc ld.lld 13.0.0

meson.build:1:0: ERROR: Unknown linker(s): [['llvm-ar'], ['ar'], ['gar']]
The following exception(s) were encountered:
Running "llvm-ar --version" gave "[Errno 2] No such file or directory: 'llvm-ar'"
Running "ar --version" gave "[Errno 2] No such file or directory: 'ar'"
Running "gar --version" gave "[Errno 2] No such file or directory: 'gar'"
A full log can be found at /data/data/com.termux/files/home/pacman-for-termux/pacman-arch/build/meson-logs/meson-log.txt

And here the log

Build started at 2021-10-24T15:37:21.900692

Main binary: /data/data/com.termux/files/usr/bin/python3
Build Options:
Python system: Linux
The Meson build system
Version: 0.59.3
Source dir: /data/data/com.termux/files/home/pacman-for-termux/pacman-arch
Build dir: /data/data/com.termux/files/home/pacman-for-termux/pacman-arch/build
Build type: native build
Project name: pacman
Project version: 6.0.0
Sanity testing C compiler: cc
Is cross compiler: False.
Sanity check compiler command line: cc sanitycheckc.c -o sanitycheckc.exe -D_FILE_OFFSET_BITS=64
Sanity check compile stdout:
Sanity check compile stderr:
Running test binary command: /data/data/com.termux/files/home/pacman-for-termux/pacman-arch/build/meson-private/sa>
C compiler for the host machine: cc (clang 13.0.0 "clang version 13.0.0")
C linker for the host machine: cc ld.lld 13.0.0

meson.build:1:0: ERROR: Unknown linker(s): [['llvm-ar'], ['ar'], ['gar']]
The following exception(s) were encountered:
Running "llvm-ar --version" gave "[Errno 2] No such file or directory: 'llvm-ar'"
Running "ar --version" gave "[Errno 2] No such file or directory: 'ar'"

Seamlessly switch to a pacman environment

Hello,
some effort has been taken to completely deprecate the switching procedure described on the termux wiki page to setup the pacman environment.

Running this small termux-setup-pacman script seems now all it takes to setup a pacman environment.

A makepkg recipe for the script has been published on the http github's Ur mirror while a binary pacman package has instead been published on the fur.

It would be great if some kind contributor of this project were to file the necessary papers to add it to your binary repos.

It would be wonderful if you were to publish a build for the sequoia-sq package too, so we can release a keyring for the Fur, the fallback of the Ur, so it then could eventually be added to your defaults, meanwhile that a stable version of the Ur is ready.
In case you were to need a working recipe, one has been published on the Ur mirror, too.

Warning given when extracting (Can't set user=0/group=0)

When installing packages from pacman (not conflicting), a warning appears.

Example:

warning: warning given when extracting /data/data/com.termux/files/usr/share/pixmaps/archlinux.png (Can't set user=0/group=0 for /data/data/com.termux/files/usr/share/pixmaps/archlinux.png)
warning: warning given when extracting /data/data/com.termux/files/var/run (Can't set user=0/group=0 for /data/data/com.termux/files/var/run)

This is a bug but not critical for pacman.

So I understand that pacman is trying to change the access of a directory or file for users and groups, which is painful.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.