Ongeveer een jaar geleden heb ik uitgelegd hoe maak pakketten voor Archlinux. Nou, vandaag ga ik uitleggen hoe je ze uit pakketten kunt maken . Deb, die worden gebruikt in Debian / Mint / Ubuntu / enz.
Dit artikel is ontstaan na het lezen van een vraag van de gebruiker in het forum jorgc omdat ik een pakket van AUR niet kon installeren, voornamelijk omdat het verouderd is en een versie heeft gebruikt Stopgezet van de PKGBUILD (gelukkig heb ik al eerder pakketten op deze manier gemaakt), zal ik ook uitleggen hoe je pakketten kunt maken van programma's die 32-bits bibliotheken, gesloten code o al samengesteld en dat het verschillende pakketten heeft om te downloaden.
De basis voor de PKGBUILD is hetzelfde, alleen met een paar wijzigingen.
De eerste wijziging is het gebruik van een zin als elif door Bash
if [ "${CARCH}" = 'x86_64' ]; then
ARCH='amd64'
md5sums=('192a0a222893d59d95f00c34f3c8a674')
depends=('openal' 'lib32-openal')
elif [ "${CARCH}" = 'i686' ]; then
ARCH='i386'
md5sums=('047c670443124193c5cc3dd54da99925')
depends=('openal')
fi
source=("http://www.unaurl.com/files/${name}.$ARCH.deb")
In dit voorbeeld is een variabele gedefinieerd die later zal worden gebruikt om de URL waar is het pakket (in dit geval de architectuur van het te downloaden pakket).
Bovendien, afhankelijk van de architectuur, de MD5 sommen dus we zullen deze veranderen in de overeenkomstige.
Ten slotte zien we dat we in het voorbeeld de afhankelijkheden veranderen. Bij sommige 64-bits programma's is het nodig om 32-bits versies van sommige bibliotheken dus we moeten ze aangeven. Als ze niet nodig zijn, definieer dan de variabele op de gebruikelijke manier.
Voor .deb-pakketten hebben we nu alleen de volgende regels nodig binnen de functie pakket ():
cd "${srcdir}/"
tar xvzf data.tar.gz -C .
cp -r usr ${pkgdir}
Zoals u kunt zien, hebben we in dit geval slechts 3 regels nodig om het pakket te genereren. Als er iets anders nodig is (bijvoorbeeld het kopiëren van een bestand dat niet met het pakket wordt meegeleverd, of het wijzigen van de inhoud van een bestand), moet u het gewoon plaatsen zoals bij elk ander pakket.
En voila, we hebben al een multilib-pakket of zijn gemaakt op basis van een deb-pakket dat klaar is voor gebruik.
Ik hoop dat je het leuk vindt en dat het me goed heeft uitgelegd 😀
Is het niet gemakkelijker om checkinstall te gebruiken?
Checkinstall wordt gebruikt om gemakkelijker deb-, rpm- of Slackware-pakketten te maken.
Mooi zo. Eens kijken of ik de tijd neem om Iceweasel toe te voegen aan de opslagplaats van slacky.eu.
Wat is er mis met Firefox? : p
die niet in Debian staat: p
Dat is niet precies wat ik bedoelde xD
Omdat Firefox geen officiële versie voor Debian heeft, en als ik de Ubuntu- of Mint-repo's gebruik, nemen ze evenveel tijd als Iceweasel om ze te publiceren; Bovendien vragen ze je af en toe of je je gegevens wilt verzenden of niet (een heel triviale functie voor een browser die privacy verdedigt).
Ik ben niet tegen Firefox, en eerlijk gezegd gebruik ik de Firefox ESR nauwelijks op Slackware en de Firefox Release op Windows (Iceweasel gebruikt het alleen op Debian, maar aangezien Arch me het geweldige voordeel geeft om het te installeren, zal ik het installeren). Kwestie van smaak, meer niet.
Hoi. Ik heb een paar bash-scripts. Een om de basismappen en bestanden voor een deb-pakket te genereren. En de laatste die het pakket uit alle bestanden en mappen genereert. Als je interesse hebt, kan ik het delen.
Natuurlijk kan dat, tegen betaling XD
Natuurlijk interesseert het ... althans voor mij.
Nu ik bij Manjaro ben, waardeer ik alle mogelijke informatie.
Wat ben je geweldig, partner.
Ik zou je op het forum hebben verteld dat als je me zou kunnen uitleggen hoe je .deb-pakketten moet compileren en ik je niets heb verteld om je vrijgevigheid niet te misbruiken…. en ik ga naar de pagina en ik zie dat je een artikel hebt geüpload waarin het hele proces wordt uitgelegd.
Dit toont aan dat u een genereus persoon bent.
Ik zei, je bent een crack.
groeten
Bedankt, en nogmaals bedankt voor uw vraag die mij op het idee bracht ^^
Het is een geweldige vriend, toen ik een keer een soft probeerde waarvan ik de naam niet meer weet, die is omgezet van .deb naar .rpm, maar het werkte niet goed voor mij.
Iemand met een boog zou kunnen testen of deze software goed doorgaat naar rpm en de installatie goed opent?
http://www.justcloud.com/download/linux-64
Het is om een back-up te maken in de cloud, ik heb al een tijdje betaald en ik heb meer dan 40GB in de cloud =)
Dat zou moeten worden geprobeerd door mensen die Fedora, Red Hat of andere afgeleiden gebruiken.
Uit de beschrijving die je geeft, neem ik aan dat je alien bedoelt (en het heeft niets te maken met een bepaalde Xenoform)
Super goed! Ik zei altijd tegen mezelf dat ik op een dag een pakket wilde maken, ook al is het om te weten hoe ik het moet doen :).
In dit soort berichten zou ik het waarderen dat de blog de optie implementeert om dit soort items toe te voegen aan "favorieten" van mijn account
Helemaal mee eens, ik heb het geplant, maar niets 🙂
Het zou ook goed zijn om bepaalde gebruikers te kunnen volgen
Zeer goede oude man, ik gebruik manjaro nu een paar dagen en voor studies moet ik packet tracer van Cisco installeren, maar het heeft alleen een .deb-pakket van de nieuwste versie en de ke is in AUR geeft me altijd een fout bij het compileren, ik hoop dat ik het met deze stappen kan installeren omdat ik met geweld linux mint gebruik, hartelijk dank
om te zien of iemand het aandurft om AUR Multisystem in te voeren
is afhankelijk van deb-bibliotheken die niet in arch
Maar als het werkt, is het de functie om multi-ISO-pen-drives te maken met grub2, beter dan unetbootin die er maar één doet.
Op dit moment heb ik een ubuntu ISO van zijn binnenkant waarmee ik afbeeldingen kan toevoegen als ik er vanaf wil opstarten op de USB zelf
maar als niemand het kaartje durft te redden
Sorry, er is al een multisysteem, en ik denk van niet
In multisysteem ...
maar fatresize aangezien yaourt problemen geeft, en zij hebben het als optioneel gesteld
Geweldig 😀 om goed te keuren met "Purrr" een programma om bestanden in bulk te hernoemen.
Met vriendelijke groet,
Momenteel elimineren ze in AUR de pakketten die niet de functie package () hebben, hoe kan ik weten welke regels ik daar moet plaatsen? Dat wil zeggen, ik heb verschillende pakketten en ik heb het op deze manier gedaan, maar ik weet niet of het oké is https://github.com/abr4xas/Arch-pkgbuild/blob/master/%20django-admin-honeypot/PKGBUILD wat ik echt deed is doorgeven wat er in build () was naar package (), maar zoals ik al zei, ik weet niet of het in orde is ... Kun je me je opmerkingen en suggesties geven?
Bedankt 😀
Binnen build () zou het compilatiegedeelte van het programma gaan en in package () het gedeelte dat het pakket genereert.
Om een kort voorbeeld in build () te plaatsen zou gaan ./configure, ./autogen.sh, cmake, make en in package () make install, etc.
Hé, heel erg bedankt ... Ik ga mijn pakketten bewerken 😀
Bedankt voor de informatie. Ik zal er een bladwijzer voor maken voor toekomstig gebruik.
Kan iemand mij uitleggen wat het is, ik ben nieuw, en ik weet niet of dit me helpt om een .deb-pakket te installeren, maar lokaal in manjaro, een spel om precies te zijn. Ja het werkt?
Ik zoek en ze vertellen me dat ik het deb2targz-pakket moet installeren, maar ik krijg een foutmelding wanneer ik het vanaf de terminal installeer en ik weet niet of het kan zijn
Hetzelfde overkomt mij; Ik moet installeren op Kademar die is gebaseerd op Arch; een paar pakketten die ik alleen in .deb krijg
Kan iemand mij helpen?
Als wat je bedoelt een fout is in de deb2targz-installatie, heb ik het net geïnstalleerd met het commando yaourt -S deb2targz. Natuurlijk in ArchLinux.
Zeer informatieve post. Bedankt voor het delen.
Goed bericht. Bedankt voor het delen van deze nuttige informatie.
Bedankt voor dit nuttige bericht. Het gaat veel helpen.
hoi, kun je het script voor de conversie laten staan en hoe je het kunt gebruiken? is dat zo in delen dat het een beetje verwart, ik heb al het deb dat ik wil converteren en ik weet dat het mogelijk is omdat de google chrome van AUR een deb is, maar ik weet niet hoe ik "MAKEPKG SI" moet maken met een ander deb 🙁