Ich möchte diese vier ppa zu meiner Maschine hinzufügen.
sudo add-apt-repository ppa:noobslab/malys-themes
sudo add-apt-repository ppa:alecive/antigone
sudo add-apt-repository ppa:nitrux/nitrux-artwork
sudo add-apt-repository ppa:upubuntu-com/themes
Anstatt sie einzeln hinzuzufügen, dachte ich, ich würde sie nacheinander auflisten - wie wir es bei der Installation von Apps tun.
sudo add-apt-repository ppa:noobslab/malys-themes ppa:alecive/antigone ppa:nitrux/nitrux-artwork ppa:upubuntu-com/themes
Aber es gab einen Fehler zurück: Error: need a repository as argument
Ich habe mich umgesehen und diese Frage gesehen. Wie installiere ich mehrere PPAs und Anwendungen gleichzeitig? aber es schlägt ein Bash-Skript als Lösung vor.
Gibt es eine Möglichkeit, mehrere ppas gleichzeitig hinzuzufügen, ohne ein Skript zu verwenden?
BEARBEITEN
Bin nur neugierig, warum nicht
sudo add-apt-repository ppa:noobslab/malys-themes ppa:alecive/antigone ppa:nitrux/nitrux-artwork ppa:upubuntu-com/themes
Arbeit aber
sudo apt-get install moka-icon-theme moka-icon-theme-blue moka-icon-theme-dark malys-deda awoken-icon-theme nitrux-icon-theme nouvegnomegray
funktioniert?
BEARBEITEN 2
Gibt es eine Problemumgehung, wo
sudo add-apt-repository ppa:noobslab/malys-themes ppa:alecive/antigone ppa:nitrux/nitrux-artwork ppa:upubuntu-com/themes
kann zur Arbeit gebracht werden?
Und ich verstehe die Risiken hier vollkommen.
add-apt-repository
Befehl können Sie jeweils nur eine PPA hinzufügen.sudo add-apt
Zeilen jederzeit auswählen und direkt in Ihr Terminal einfügen. Dadurch werden sie nacheinander hinzugefügt, jedoch mit einem einzigen Klick von Ihnen.Antworten:
Es funktioniert nicht, weil derjenige, der das ursprüngliche Skript geschrieben hat (Sie können es sich ansehen, es ist ein Python-Skript), nicht dachte, dass dies nützlich sein könnte.
Das Grundprinzip könnte sein, dass das Hinzufügen eines Repositorys besser langsam durchgeführt werden kann . Sie sollten zum Beispiel die Signatur überprüfen --- und überprüfen, ob Sie sie wirklich wollen.
Es ist also im Grunde eine Designentscheidung. Sie können das Skript wahrscheinlich leicht ändern, wenn Sie es möchten, oder den Befehl in der Befehlszeile wiederholen ...
(Ist das ein Drehbuch oder nicht? Eine Rose ist eine Rose unter einem anderen Namen?)
Tun Sie das nicht , aber ... Unix ist berühmt dafür, dass Benutzer sich in den Fuß schießen lassen, also ...
Wenn Sie wirklich möchten, dass Ihr "Multiple Add-Apt-Repository" (1) funktioniert, gehen Sie folgendermaßen vor:
1) Finden Sie heraus, wo sich das Add-Apt-Repository befindet.
2) benenne es um
3) Ersetzen Sie es durch ein einfaches Skript:
mit dem Inhalt:
4) mach es ausführbar:
5) und jetzt können Sie Ihren Befehl verwenden:
Warum solltest du es nicht tun? Da beim nächsten Update des Pakets, das das Original enthält
apt-add-repository
, Probleme auftreten, treten Probleme auf. Als ob Sie Ihr Skript überschreiben lassen oder (am schlimmsten) das Paket nicht aktualisieren lassen.In der Tat ist es viel besser, das Systemprogramm nicht zu berühren und das Skript einfach
~/bin
mit einem anderen Namen in Ihr zu setzen, wie zmy_aptadd
. Du bist jetzt sicher und glücklich.Oder wenn Sie den ursprünglichen Namen wirklich mögen
~/override
, können Sie ein Verzeichnis in Ihrem Home-Ordner wie erstellen , es Ihrem PATH in.profile
(wieexport PATH=$HOME/override:$PATH
) voranstellen und das Skript dort speichern - offensichtlich mit dem vollständigen Pfad, original/usr/bin/add-apt-repository
in Vermeiden Sie eine Endlosschleife. Sie werden es dann bereuen, wenn jemand eine Datei mit dem Namen "ls" mit Inhaltexe rm $*
(2) darin ablegt, aber hey ...Warum habe ich es hier geschrieben? Weil dies manchmal wirklich eine nützliche Technik ist, um Programme zu "reparieren", die sonst nicht ausgeführt werden. Zum Beispiel muss ich Umgebungsvariablen zu Programmen hinzufügen, die sich sonst schlecht verhalten und von anderen Programmen aufgerufen werden, die ich nicht ändern kann oder will.
Fußnoten :
(1) Ich habe es noch nie bemerkt, aber in meinem System existiert sogar
apt-add-repository
, was ein Symlink zu istadd-apt-repository
. Ich kann verstehen warum, aber es ist ein Aufruf für ein Chaos, das darauf wartet, passiert zu werden ...(2) es ist falsch. Absichtlich.
quelle
Ich habe das schon einmal besprochen, als ich darüber sprach, wie installierte PPAs gesichert werden . Im Folgenden wird eine Datei mit allen Ihren PPAs aufgelistet und installiert:
Es ist ziemlich trivial, das zu stimmen, um eine Liste zu erstellen:
Einfach, weil es sich um unterschiedliche Befehle handelt, die von unterschiedlichen Personen für unterschiedliche Zwecke geschrieben wurden. Warum nicht
less
undrm
die gleichen Argumente nehmen? Das sind verschiedene Dinge.Das Hinzufügen einer Reihe von Repos ist wirklich ein Randfall. Es ist nicht so, dass Sie mehr als ein Paket gleichzeitig installieren möchten. Dies verkompliziert auch die Syntax. Das Add-Apt-Repository hat bereits einige verschiedene Formate, von denen einige Leerzeichen enthalten. Das vernünftig zu analysieren ist harte Arbeit, um es richtig zu machen.
Sicher. Sie schreiben entweder einen Wrapper für
add-apt-repository
und priorisieren ihn oder bearbeiten das Original ... Ist das eine vernünftige Sache? Nein überhaupt nicht. Sie werden das Bestehendeadd-apt-repository
(siehe oben) auf eine nicht standardmäßige Weise brechen , wofür? Um Tastenanschläge für etwas zu speichern, das Sie einmal ausführen?Es gibt mehrere Ein-Befehl-Methoden, um dies aufzuteilen, wie Ihnen mehrere Personen sagen. Kämpfe nicht gegen das System, benutze es.
quelle
Versuchen Sie so etwas zu sagen:
Also in diesem Format:
Es könnte gehen.
quelle
&&
oder;
könnte eine bessere Option sein als Trennung mit&
&
Start der ersteadd-apt...
im Hintergrund wird die Sperre für die Repository-Datei&
Starten Sie einen Prozess im Hintergrund.;
oder&&
sind hier die einzigen gültigen Befehlstrennzeichen.