Por lo tanto, este es un problema personal, pero tal vez la gente tenga buenos consejos o soluciones.cabal-install y Debian
El problema consiste en instalar cabal-install y haskell-platform en Debian.
Cuando apt-get install haskell-platform
, se envía con cabal-install
, y su comando cabal
está disponible.
Ahora bien, este cabal-install
no es hasta a la fecha:
> which cabal
/usr/bin/cabal
> /usr/bin/cabal --version
cabal-install version 0.8.0
using version 1.8.0.2 of the Cabal library
Pero, mi comprensión del funcionamiento cabal update
es que se actualiza Cabal, pero ya que no es un "Debian cosita", que pone en ~/.cabal/bin/
.
> ~/.cabal/bin/cabal --version
cabal-install version 0.8.2
using version 1.8.0.2 of the Cabal library
Ahora mi sistema tiene 2 cábalas, y el recibo escribiendo cabal
no es el que yo quiero usar ... Debido a que va a mantener la actualización de la otra vez de sí mismo, y por lo tanto es ineficaz .
Así que lo que hice fue un alias en mi ~/.bashrc
:
alias cabal='~/.cabal/bin/cabal'
Ahora:
> cabal --version
cabal-install version 0.8.2
using version 1.8.0.2 of the Cabal library
preguntas lo tanto, mis finales:
- ¿Hay un repositorio deb que mantiene cabal 0.8.2?
- ¿Podría mi solución actual generar problemas? (Por ejemplo,
which cabal
aún apunta a mi inútil/usr/bin/cabal
, por lo que si las secuencias de comandos utilizan este comando se dejarán engañar ...) - ¿Alguien ha encontrado una solución mejor? (El mío es un poco ad-hoc pero eso es todo lo que pude hacer con mi conocimiento de lo que está sucediendo detrás de escena ...)
- Corrígeme si algo de lo que dije arriba es incorrecto o impreciso.
+1. No entiendo por qué Haskell necesita su propio administrador de paquetes, mientras que otros idiomas funcionan sin uno. – harpo
Muchos idiomas tienen su propio administrador de paquetes? Por ejemplo, RubyGems es extremadamente popular en la comunidad de Ruby. – dbyrne
gema para ruby, pip o easy_install para python, maven y sus derivados para Java, ... Para las personas que usan extensamente bibliotecas de terceros, confiar en el sistema de administración de paquetes del sistema operativo no siempre es la mejor opción. Especialmente en sistemas operativos conservadores como Debian. Debo estar al día con las últimas versiones de algunas bibliotecas en desarrollo (como cliente, no como desarrollador) y sería un infierno instalarlas manualmente cada vez. –