Arch Build System

skeleton

skeleton

Doppel-As
Hi,
kann mir jemand hier mit dem Arch Build System weiterherlfen? Ich will ein Programm installieren, dass nicht in den Repos vorhanden ist und welches nur als Source heruntergeladen werden kann.
Wie mach ich das? Hab herrausgefunden mit dem Arch Build System geht das, indem man ein Paket erstellt und dieses über Pacman installiert. Wie man ABS installiert is ja im Wiki beschrieben, nur wie man dann ein Pacman-Paket erstellt versteh ich nicht.
Da ist beschrieben dass man es trotzdem über den bekannten Dreisatz installieren soll und daraus dann ein Paket erstellen, wenn ich das richtig verstehe was da steht.
Dann isses aber ja schon installiert und ich wills ja über Pacman installieren.

Ich hoffe jemand kann mir da mal weiterhelfen.

Hier der Link:
http://wiki.archlinux.de/index.php?title=Abs

Hab, wie nicht schwer zu erraten, Arch Linux mit xfce.
 
was spricht gegen ganz normales installieren unabhängig von pacman?
 
Sollte das Packet im AUR sein, kannst du es auch mit yaourt installieren.
Yaourt ist praktisch Pacman für das AUR.

Bye
Floh1111
 
Ok, yaourt werd ich testen, die letzte von den 3 Wikiseiten kannte ich auch noch nicht. Ich werd das ganze mal testen und mich dann wieder melden.

Danke schonmal.
.
.
.
EDIT (autom. Beitragszusammenführung) :
.

Also ich hab mich jetzt mal n bisschen eingelesen, aber immernoch einige Fragen:

Hier steht ja glaub ich alles wichtige drinnen.
Aber wozu muss ich Repos in /etc/abs.conf eintragen und den "abs Tree" erstellen wenn ich doch einfach nur Die Sourcen mit "The build function, the ABS way" installieren muss?
Und wozu brauch ich dann diese pkgbuilds wenn ich mir einfach aus jedem beliebigen Tarball ein Packet für Pacman erstellen kann?

Ich glaub ich versteh noch irgentwas falsch.
Habs noch nicht ausprobiert, aber solang ich mir noch so unsicher bin will ich erstmal warten.
 
Zuletzt bearbeitet:
Du baust dir ja mit dem PKGBUILD ein Pacman Paket. Ein PKGBUILD ist sozusagen nur eine Bauanleitung. Damit wird ein Paket für dein System zusammen gebaut, welches du dann mit pacman -U installieren kannst.

Was man nun mit diesem ABS macht, kann ich dir nicht beantworten. Hab ich noch nie genutzt.

Um was für ein Programm geht es überhaupt? Schon mal in AUR geschaut, ob es das da gibt? (Da gibt es eigentlich fast alles)
 
Was man nun mit diesem ABS macht, kann ich dir nicht beantworten. Hab ich noch nie genutzt.

Damit kannst Du dir das System mit neuen Compilerflags neubauen, oder vorhandene Pakete an deine Berdürfnisse anpassen.

@skeleton
Wenn man ein Paket sucht, welches nicht in den Repos ist, schaut man immer noch ins AUR. Wenn es dort auch nicht erstellt man sich eine PKGBUILD, und strickt sich das Programm selber zusammen.
 
Ja, ich hab schonmal nachgeschaut, es ist dort vorhanden und heißt gnomad. Ist aber nur eines, ich hab noch n paar mehr die ich nicht auswendig weiß und die ich irgentwo schon gespeichert hab.

Nur als Beispiel, wie installiere ich dann Gnomad mit den Daten ausm AUR? Is mir irgendwie auch schleierhaft.
 
Code:
$ yaourt -Ss gnomad
aur/gnomad2 2.9.2-2
    GTK client program for the NOMAD Jukebox with MTP support

$ yaourt -S gnomad2

==> Downloading gnomad2 PKGBUILD from AUR...

==> Last 5 comments ordered by date (asc):

Comment by: moz on 20081030 [13:56:28]
@sawk & scippio
I had your same exact problem, gnomad2 doesnt compile with libmtp from core. After installing libmtp-devel from aur (conflicts with libmpt core) you HAVE to edit the pkgbuild file to actually make it use the libmtp-devel. So the pkgbuild would look like this:
# Maintainer: Alois Nespor <alois.nespor@gmail.com>
pkgname=gnomad2
pkgver=2.9.2
pkgrel=2
pkgdesc="GTK client program for the NOMAD Jukebox with MTP support"
arch=('i686' 'x86_64')
url="http://gnomad2.sourceforge.net"
license=('GPL')
depends=('libusb' 'libnjb' 'libid3tag' 'gtk2' 'libmtp-devel>=0.3.0' 'taglib')
makedepends=('perlxml')
install=$pkgname.install
source=(http://downloads.sourceforge.net/gnomad2/gnomad2-$pkgver.tar.gz)
build()
{
cd $startdir/src/gnomad2-$pkgver
./configure --prefix=/usr
make || return 1
make DESTDIR=$startdir/pkg install
}
md5sums=('39ca24bec8b8a28ee73e88eabddf59fb')
Notice the depends. Now it should compile flawlessly :).

Comment by: fettouhi on 20081201 [09:13:44]
Why has the libmtp version been set to 0.3.3 and above. Doesn't gnomad2 2.9.2 work with libmtp 0.2.6 from extra?
Regards
André

Comment by: anespor on 20081201 [09:30:47]
Yes, gnomad 2.9.2 support now libmtp 0.3.0 and above, because is updated to libmtp 0.3.0 API.

Comment by: fettouhi on 20081201 [10:52:07]
Yeah but does it still support libmtp versions below 0.3.0, e.g. is it backwards compatible?
Regards
André

Comment by: anespor on 20081201 [11:53:16]
you can use 2.9.1, changes in API are major

      First Submitted: Sun, 25 Mar 2007 02:51:27 +0000
      Last Updated: Mon, 13 Oct 2008 13:22:07 +0000
gnomad2 2.9.2-2 (Unsupported): GTK client program for the NOMAD Jukebox with MTP support

==> gnomad2 dependencies:
 - libusb (already installed)
 - libnjb (already installed)
 - libid3tag (already installed)
 - gtk2 (already installed)
 - libmtp (already installed)
 - taglib (already installed)
 - perlxml (already installed)
==>  Edit the PKGBUILD (recommended) ? [Y/n]("A" to abort)
==>   ----------------------------------------------
==>
 
OK, so wie defcon es beschrieben hat sollte es ja dann gehen. Danke dir und den anderen.

Aber wie is das jetzt mit yaourt? Bei mir gibts das nicht und Pacman findet es auch nicht, d.h. ich müsste es ja auch über Sourcen erst installieren oder?
 
Nur zum Verständnis: Ich könnte jedes Programm so installieren wie von dir beschrieben oder einmal Yaourt installieren und damit alle weiteren richtig?
 
Entweder so wie ich es vorhin beschrieben habe (tarball runterladen, entpacken, usw.)

oder mit Yaourt, das funktioniert wie mit pacman.

Code:
yaourt -S <paketname>
Paar Fragen beantworten, und yaourt installiert das inclusive Abhängigkeiten.
 
Und genau bei den Abhängigkeiten hab ich jetzt ein Problem, bei gnomad wil die libmtp 0.3.3, leider ist bei mit nur 0.2.x drauf und wenn ich sie mit Pacman aktualisieren will findet er keine neue Version.
Wenn die aber benöig wird muss es die doch geben irgentwo?
 
Tja, da sind eben die zusätzlichen "Features" des AUR.

Weil nun mal jeder Dödel dort Pakete deponieren kann und es keine "Kontrollinstanz" gibt, die z.b. gesetzte Abhängigkeiten prüft, ist die Qualität der dort deponierte Pakete auch dementsprechend mies.
 
So, libmtp wurde aus AUR entfernt, da das Paket bereits in [extra] vorhanden ist.
Entweder wartest du bis der Maintainer es aktualisiert hat, oder du nimmst die PKGBUILD von dem Paket aus abs und aktualisierst es für dich selber.
 

Ähnliche Themen

Hilfe bei der Arch installation + n paar Grundlegende sachen

[HowTo] Debian Installation mit Installer über SSH

arch in VirtualBox (tut nicht)

pacman verabschiedet sich mit 'segmentation fault'

Mal komplett was neues aufbauen ?

Zurück
Oben