- pacman add repository
- How do I add Aur to a repository?
- Is Arch community repo safe?
- How do I update my Arch Linux repository?
- How do I enable Multilib Pacman?
- What are official repositories?
- What is Yay Arch?
- What is Pacaur?
- What is chaotic Aur?
- How dangerous is aur?
- Who owns Arch Linux?
- How do I install Yay Arch?
- Creating packages for other distributions
- General
- Debian
- Tips and Tricks about Debian
- Override dependency handling
- Set up a chroot
- See also about Debian
- Fedora
- See also about Fedora
- openSUSE
- Creating Arch packages in OBS with OSC
- Creating a package
- Managing a package
- Tips and tricks about openSUSE
- ca-certificates-utils package problem
- See also about openSUSE
- Multi-distribution
- Pacur
- See also
pacman add repository
In order to use these repositories, add them to /etc/pacman. conf , as explained in pacman#Repositories and mirrors. If a repository is signed, you must obtain and locally sign the associated key, as explained in pacman/Package signing#Adding unofficial keys.
How do I add Aur to a repository?
- Step 1: Get «Git Clone URL» Visit AUR: https://aur.archlinux.org/ and search a package: Go to the package page: Get «Git Clone URL»: .
- Step 2: Build The Package And Install It. git clone [the package] , cd [the package] , makepkg -si , and it’s done! This is an example of a package called qperf.
Is Arch community repo safe?
Although TUs perform quality control to the uploaded packages, there is in no guarantee that packages in the AUR are well formed or not malicious. In practice the AUR seems to be quite safe but in theory it can do some damage, but only if you are not careful. A smart Arch user, always inspects PKGBUILDs and *.
How do I update my Arch Linux repository?
- The Pacman mirror configuration is in /etc/pacman. .
- Run the following command to edit /etc/pacman.d/mirrorlist file:
- Type in your password and press .
- All the mirrors are active by default.
How do I enable Multilib Pacman?
- Enable multilib in the pacman config by uncommenting these two lines in pacman.conf: nano /etc/pacman.conf. .
- Upgrade your system: sudo pacman -Syyu.
- Show 32-bit packages in the multilib repository: pacman -Sl | grep -i lib32.
What are official repositories?
A software repository is a storage location from which software packages are retrieved for installation. Arch Linux official repositories contain essential and popular software, readily accessible via pacman. They are maintained by package maintainers.
What is Yay Arch?
Yay is Arch Linux AUR helper tool written in Go. It helps you to install packages from PKGBUILDs in an automated way. yay has an AUR Tab completion with advanced dependency solving. It is based on the design of yaourt, apacman, and pacaur but also realizing the following objectives: Have almost no dependencies.
What is Pacaur?
Pacaur is an AUR helper which aims at minimizing user prompts and interactions. It works with both official Arch repositories and AUR. If you’re new to Arch User Repository ( AUR), it is a community-driven repository for Arch users.
What is chaotic Aur?
chaotic-aur is a unofficial user repo that has prebuilt binaries from the AUR. It is even listen on the ArchWiki. I used it to test out Ungoogled Chromium without having to build it myself, which takes quite some time, or so I heard.
How dangerous is aur?
The whole point of the AUR is that anyone can upload packages. You could make an account and upload a package right now. . AUR is «safe» in the sense that all the information you need to decide if a package is malicious is available to you. As a rule, you should always read the PKGBUILD and .
Who owns Arch Linux?
Arch Linux
Developer | Levente Polyak and others |
---|---|
OS family | Unix-like |
Working state | Current |
Source model | Open source |
Initial release | 11 March 2002 |
How do I install Yay Arch?
- Step 2: Next, install git by running the command: $ sudo pacman -S git.
- Step 3: After installing git, proceed and clone the yay git repository using the command: $ sudo git clone https://aur.archlinux.org/yay.git.
- Once the cloning is complete, you will find the ‘yay’ directory in your current working directory.
Docker
How to Remove Docker ContainersTo remove a stopped container, use the command: docker container rm [container_id] . To remove all stopped containers.
Video
How do I crop a video in Linux?How can I crop a part of a video?Can handbrake crop a video?How can I change the size of a video?How do I resize a vide.
Visual
Can you install Visual Studio on Linux?How do I download Visual Studio code in Linux?How do I run a Visual Studio code in Linux?How do I install Micro.
Latest news, practical advice, detailed reviews and guides. We have everything about the Linux operating system
Creating packages for other distributions
Arch is the best. But you may still want to package for other distributions.
General
- Virtualization is an obvious way, but requires maintaining additional system(s).
- Use distribution-specific packaging tools. Examples: dh-makeAUR , dpkg (Debian), rpm-tools (Fedora). Shortcuts such as dpkg-deb may be suited for less complex tasks.
- Chroot or systemd-nspawn to create a base system inside (yet separate from) Arch. Examples: debootstrap (Debian), dnf (Fedora). This has the added benefit of building in a minimal, clean environment.
- Use chroot with packaging tools in an an automated fashion. Examples: pbuilder-ubuntuAUR (Debian).
- A different way to handle (possibly incompatible) dependencies is static linking. Please note that most distributions frown on this practice.
- Common practice applies regardless of distribution used. For example, do not build packages as root.
Debian
The Debian Packaging Tutorial explains the groundwork. It describes use of the following tools:
This article or section needs expansion.
Reason: Missing tools: lintian, reprepo, cdbs, svn-buildpackage, javahelper (Discuss in Talk:Creating packages for other distributions)
- cowdancer — Copy-on-write wrapper for pbuilder
- debootstrap — A tool used to create a Debian base system from scratch, without requiring the availability of dpkg or apt.
- devscripts — Scripts to make the life of a Debian Package maintainer easier
- dh-strip-nondeterminism — Tool for stripping bits of non-deterministic information from files, supports dh
- dh-autoreconf — Debhelper add-on to call autoreconf and clean up after the build
- dh-make — Tool that converts source archives into Debian package source
- dpkg — The Debian Package Manager
- dput — Debian package upload tool
- equivs — Circumvent Debian package dependencies
- git-buildpackage — Tools from Debian to integrate the package build system with Git
- pbuilder-ubuntu — Chroot environment for building Debian packages
- quilt — Manage a series of patches by keeping track of the changes each patch makes
Tips and Tricks about Debian
Override dependency handling
dpkg does not recognize dependencies installed by pacman. This means dpkg-buildpackage will generally fail with errors such as:
dpkg-checkbuilddeps: Unmet build dependencies: build-essential:native debhelper (>= 8.0.0) dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
To override this, use the -d flag:
You may also need to override dh_shlibdeps by adding the following lines to debian/rules :
override_dh_shlibdeps: dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info
Note: Any run-time dependencies (and matching version numbers) should be added manually to debian/control , where $ now has no meaning.
Warning: Even if you manage to successfully build a package this way, it is strongly recommended to build in a clean environment (such as chroot) to prevent any incompatibilities.
Set up a chroot
See the Pbuilder How-To for an introduction to pbuilder-ubuntu. Using cowdancer in addition is recommended as copy-on-write offers a significant performance benefit.
- debian-archive-keyring , ubuntu-keyring and gnupg1AUR are required.
- eatmydata is available as libeatmydata and lib32-eatmydataAUR . To prevent LD_PRELOAD errors, it must be installed both inside and outside the chroot. As the paths are different in Arch and Debian, create the following symbolic links:
# ln -s /usr/lib/libeatmydata.so.1.1.1 /usr/lib/libeatmydata/libeatmydata.so # ln -s /usr/lib/libeatmydata.so.1.1.1 /usr/lib/libeatmydata/libeatmydata.so.1
$ dpkg-buildpackage -d -us -uc -S
See also about Debian
Fedora
This article or section needs expansion.
- rpm-tools — RPM.org fork, used in major RPM distributions
- mock — Takes Source RPMs and builds RPMs from them in a chroot
See also about Fedora
openSUSE
The Open Build Service (OBS) is a generic system to build and distribute packages from sources in an automatic, consistent and reproducible way. It supports at least .deb, .rpm and Arch packages.
Creating Arch packages in OBS with OSC
Note: For building, you must upload your PKGBUILD file as well as the source files (by uploading or letting OBS download the files). OBS uses virtual machines without networking support and cannot download any file.
Creating a package
- Create an account in [1]
- Install the oscAUR package. Upstream documentation is available here.
- Create an example home:foo project.
- Create an example home:foo:bar subproject (optional, but recommended).
- Create a new ham example package with osc meta pkg -e home:foo:bar ham . Save the created XML then exit.
- Switch to a clean working directory then checkout the project you have just created: osc co home:foo:bar/ham .
- Now cd into it: cd home:foo:bar/ham .
Managing a package
Now it is time to decide how we will manage our project. There are two practical ways to do this:
- Maintain a PKGBUILD plus its helper files (such as *.install scripts) in a version control system (such as git, hg) then just make OBS track it;
- Maintain a package entirely in OBS itself.
The first version is more flexible and dynamic. To proceed:
Here is an example for gimp-git AUR :
git git://git.gnome.org/gimp.git git%cd~%h 2.9.1 gimp-git *.tar xz
- Make OBS track it: osc add _service
- If you have any other files to include into the repo, just proceed as before: add the files in the project directory, then make OBS track them (OBS uses subversion as its underlying SCM, so this process might already be familiar for you)
- Check-in (=upload) your files into the repo osc ci -m «commit message (e.g. bumped package xxx to version yyy» .
Now, after a while, OBS will begin building your package.
Tips and tricks about openSUSE
- To see the build progress of your package, cd into its working directory, then: osc results .
- There are three repositories, Arch:Core, Arch:Extra and Arch:Community. [community] can be appended as a «repository path» after adding the main Arch repository to the project.
ca-certificates-utils package problem
If OBS build fails because of the ca-certificates-utils package, you can add this line to your project config (from your project page, go to Advanced -> Project Config).
Prefer: ca-certificates-utils ca-certificates
See also about openSUSE
Multi-distribution
Pacur
Some tools such as Pacur allow building packages for multiple Linux distributions with a consistent package specification format. The package format is very similar to PKGBUILD so it is easy to re-use an existing PKGBUILD and add a few distribution-specific variables to be able to build debian and rpm packages effortlessly. By quickly adapting a PKGBUILD one is able to build package for Amazon Linux, Centos, Debian, Oracle Linux, Fedora and Ubuntu.