passend für Cygwin?


127

Gibt es ein apt-getähnliches Programm zur Verwendung mit Cygwin?

Ich habe es bereits versucht, cyg-aptaber wenn ich es versuche, erhalte ich diesen Fehler:

cyg-apt: downloading: http://cygwin.mirrors.pair.com/setup-2.bz2
cyg-apt: downloading: http://cygwin.mirrors.pair.com/setup-2.ini
cyg-apt: bad URL http://cygwin.mirrors.pair.com/setup-2.ini, exiting.

Die Datei ist im Quell-Repository verfügbar.
Bruno

Ist es möglich, von einem anderen Repo als Cygwin herunterzuladen? Eigentlich brauche ich einige Linux-Header für einen Computer offline mit Linux, aber ich muss sie unter Windows mit einem apt-get herunterladen.
Alex


2
cyg-apt hat das letzte Update vor 5 Jahren. Die aktuelle Repository-Struktur ist unterschiedlich. Daher wird es nicht funktionieren.
David Ferenczy Rogožan

2
nicht verwechseln cyg-aptmit apt-cyg. Letzteres ist viel besser (denken Sie daran, dass apt-getdas Gute am ähnlichsten klingt ).
Sridhar Sarnobat

Antworten:


131

Das Beste, was ich je benutzt habe:

apt-cyg Paketmanager


apt-cyg orks wirklich gut. Gerade installiert rsync, openssh, mc und andere.
Jako

9
Es kann nur Pakete installieren und entfernen, nicht wahr? Es ist nicht möglich, ein bestimmtes Paket oder alle Pakete mit apt-cyg auf die neueste Version zu aktualisieren. Es ist schön, aber nutzlos, da ich auch Cygwins Setup verwenden muss. Ich würde mich freuen, wenn ich falsch liege.
David Ferenczy Rogožan

1
apt-cyg updatewird setup.ini usw. aktualisieren, wenn jemand Probleme ohne Datum setup.ini
nwgat

Gibt es Spiegel?
Danny Lo

2
@ CodeMonkey Das Repo ist wieder in Betrieb, zusammen mit seinem Konkurrenten: Sage
Brian Brownton

91

Sie können dies mit Cygwins setup.exe über die Windows-Befehlszeile tun. Beispiel:

cd C:\cygwin64
setup-x86_64 -q -P wget,tar,qawk,bzip2,subversion,vim

Für ein bequemeres Installationsprogramm möchten Sie möglicherweise den apt-cyg-Paketmanager verwenden . Die Syntax ähnelt apt-get, was ein Plus ist. Befolgen Sie dazu die obigen Schritte und verwenden Sie Cygwin Bash für die folgenden Schritte:

wget rawgit.com/transcode-open/apt-cyg/master/apt-cyg
install apt-cyg /bin

Nun apt-cygist das installiert. Hier einige Beispiele für die Installation einiger Pakete:

apt-cyg install nano
apt-cyg install git
apt-cyg install ca-certificates

Nach dem obigen Schritt gibt apt-cyg für 64 Bit die Ausnahme / usr / local / bin / apt-cyg aus: Zeile 1: $ '\ r': Befehl nicht gefunden / usr / local / bin / apt-cyg: Zeile 3: $ '\ r': Befehl nicht gefunden / usr / local / bin / apt-cyg: Zeile 19: $ '\ r': Befehl nicht gefunden / usr / local / bin / apt-cyg: Zeile 21: $ '\ r' : Befehl nicht gefunden / usr / local / bin / apt-cyg: Zeile 27: Syntaxfehler in der Nähe eines unerwarteten Tokens ||' 'usr/local/bin/apt-cyg: line 27: || Test "- $ GAWK-" = "-"
Shahjahan Khan

@sagunms es hat Charme geklappt! Das war ein nerviges Problem, bis ich die Lösung fand. Vielen Dank.
Yoon Lee

@ Shahjahan Khan: Es scheint, dass Sie mit einem Windows-Texteditor Zeilenenden unterbrochen haben. Verwenden Sie Linux-Zeilenenden (\ n oder LF oder 0x0A), nicht Windows (\ r \ n oder 0x0D 0x0A oder CR LF).
David Ferenczy Rogožan

hey .. wie würde ich gcc mit diesem Tool installieren, wenn ich vergessen hätte, die Devel-Pakete während der Installation von cygwin zu installieren
Olu Smith

1
Funktioniert bei mir! a
Nick Gallimore

26

Update: Sie können die komplexere Antwort lesen , die mehr Methoden und Informationen enthält.

Es gibt einige Skripte, die als einfache Paketmanager verwendet werden können. Soweit ich weiß, können Sie mit keinem von Paketen ein Upgrade durchführen, da dies unter Windows keine einfache Aufgabe ist, da verwendete Dateien nicht überschrieben werden können. Sie müssen also zuerst alle Cygwin-Instanzen schließen und können dann die native setup.exe von Cygwin verwenden (die selbst das Upgrade über die Methode "Nach Neustart ersetzen" durchführt, wenn Dateien verwendet werden).


apt-cyg

Das beste für mich. Einfach weil es eines der neuesten ist. Es funktioniert korrekt für beide Plattformen - x86 und x86_64. Es gibt viele Gabeln mit einigen zusätzlichen Funktionen. Zum Beispiel ist die Gabel kou1okada eine der verbesserten Versionen.


Cygwins setup.exe

Es hat auch Befehlszeilenmodus . Darüber hinaus können Sie alle installierten Pakete gleichzeitig aktualisieren.

setup.exe-x86_64.exe -q --packages=bash,vim

Anwendungsbeispiel:

setup.exe-x86_64.exe -q --packages="bash,vim"

Sie können einen Alias ​​zur einfacheren Verwendung erstellen, zum Beispiel:

alias cyg-get="/cygdrive/d/path/to/cygwin/setup-x86_64.exe -q -P"

Dann können Sie beispielsweise das Vim- Paket installieren mit:

cyg-get vim


18

Sie können jederzeit einen Bash-Alias ​​erstellen, um * .exe-Dateien in $ home / .bashrc einzurichten

Cygwin 32bit

alias cyg-get="/cygdrive/c/cygwin/setup-x86.exe -q -P"

Cygwin 64bit

alias cyg-get="/cygdrive/c/cygwin64/setup-x86_64.exe -q -P"

Jetzt können Sie Pakete mit installieren

cyg-get <package>

6

Nein. Das einzige offiziell unterstützte Tool zum Herunterladen und Aktualisieren von Cygwin-Paketen ist die Datei setup.exe, die Sie für die Erstinstallation verwendet haben. Sie kann jedoch mit Befehlszeilenargumenten aufgerufen werden, um den Prozess zu unterstützen.

Von derselben Seite:

Der Hauptgrund dafür, dass kein umfassenderer Paketmanager vorhanden ist, besteht darin, dass ein solches Programm vollen Zugriff auf alle POSIX-Funktionen von Cygwin benötigt. Dies ist jedoch in einer Cygwin-freien Umgebung, wie sie bei der Erstinstallation vorhanden ist, schwierig bereitzustellen. Darüber hinaus erlaubt Windows das Überschreiben nicht verwendeter ausführbarer Dateien nicht einfach. Daher ist die Installation einer neuen Version der Cygwin-DLL, während ein Paketmanager die DLL verwendet, problematisch.


1
Das waren einige gute Details, warum dies im Allgemeinen nicht möglich ist. Sollte in den Cyg-Get- oder Apt-Cyg-Dokumenten enthalten sein.
Oligofren

5

Das hat es für mich zum Laufen gebracht:

curl https://raw.githubusercontent.com/transcode-open/apt-cyg/master/apt-cyg > \
apt-cyg && install apt-cyg /bin

1
wget https://raw.githubusercontent.com/transcode-open/apt-cyg/master/apt-cyg && install apt-cyg /binist eine andere Option, wenn Locken fehlt
Alex Telon

1
Denken Sie auch rm apt-cygdanach daran.
Alex Telon

-1

Sie können Chocolatey verwenden , cyg-getum Ihre Pakete damit zu installieren und dann zu installieren.

Beispielsweise:

choco install cyg-get

Dann:

cyg-get install my-package

1
Leider lädt dies das Cygwin-Setup herunter setup-x86_64.exeund installiert Cygwin erneut, nicht nur apt-cyg. Ich musste die Installation abbrechen.
Metafaniel

Ich denke, das ist mir nicht passiert: /
Fabriciorissetto
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.