2015-02-15 44 views
5

Mam maszynę, która w ogóle nie ma dostępu do Internetu.
Zainstalowałem na nim platformę Haskell za pomocą instalatora, który dostałem z innej maszyny przez pendrive.Zainstalować pakiety Haskell za pomocą cabal bez połączenia z Internetem

Teraz chcę zainstalować pakiet repa na moim komputerze domowym, który nie ma dostępu do Internetu. Jak mam to zrobić?

Moja maszyna do domu jest systemem Linux (Debian) i mój komputer biurowy jest Windows 7.

Odpowiedz

8

z komputera można uzyskać dostęp do Internetu możesz:

  • Uruchom cabal get pkg-name gdzie pkg-name jest pakiet chcesz.
  • Przejdź do strony pakietu na stronie Hackage, a w sekcji Pliki do pobrania można pobrać plik .tar.gz.

Po otrzymaniu, przenieś go na inny komputer, wyodrębnij go w dowolne miejsce (piaskownica, jeśli chcesz go tylko w piaskownicy). Następnie z tego katalogu (gdzie jest plik .cabal) uruchom cabal install.

+1

Czy istnieje szybki sposób, aby znaleźć zależności pakietu i pobrać je również, czy musi to zrobić ręcznie? – DNA

+1

@DNA Nie o tym wiem, ale napisanie na to narzędzia powinno być bardzo łatwe, ponieważ Cabal jest również w Hackage. Możesz dostać pakiet (jakkolwiek chcesz, np. Możesz nazwać 'cabal get' przy użyciu' System.Process'), a następnie po prostu użyj pakietu Cabal do parsowania pliku cabal, a następnie po prostu rekurencyjnie wykonaj to samo dla zależności pakietów. – MasterMastic

1

menedżerów opakowania, takie jak cabal, działa wewnętrznie, aby uzyskać pakiet ze zdalnego repozytorium. Wątpię, by istniało łatwe obejście, aby cabal instalował pakiet w trybie offline.

Najprawdopodobniej najłatwiej jest znaleźć skompresowaną wersję pakietu, znaleźć sposób, aby uzyskać je na komputerze w trybie offline (lokalne udostępnianie, pamięć USB itp.) I install a package manually.

+1

Nie ma żadnych strasznych trudności, aby Cabal mógł zainstalować pakiet offline, dopóki pakiet i wszystkie jego zależności są dostępne lokalnie. – dfeuer