---
categories: ['OpenBSD','Système','Développement']
date: 2020-01-19T13:45:21+02:00
description: "Installation, configuration de l'outil 'cabal' pour la gestion des programmes et bibliothèques Haskell, sous OpenBSD"
draft: false
include_toc: true
show_comments: false
tags: ['OpenBSD','cabal','haskell']
title: "Installer l'outil Cabal sous OpenBSD"
translationKey: 'openbsd-cabal'
---
## Description
Le programme en ligne de commande `cabal` simplifie le processus de
gestion des logiciels Haskell en automatisant la récupération, configuration,
compilation et installation des programmes et bibliothèques Haskell.
* architectures gérées : aarch64, amd64, i386
* mainteneur : Matthias Kilian
* Openports : https://openports.pl/path/devel/cabal-install
* site web officiel : http://www.haskell.org/cabal/
## Installation
**{{< inside2 l="sys/openbsd/pkg" t="Installez" a="installer" >}} le
paquet `cabal-install`**.
## Configuration
Du fait de la protection mémoire W^X, l'outil `cabal` ne fonctionne pas
correctement. Pour résoudre cette situation, deux manières de faire :
### Modifications système
Pour remédier à la situation, nous allons modifier légèrement votre
`$HOME` et `/usr/local`.
- Création des répertoires nécessaires dans `/usr/local`, avec les
droits administrateurs
- Attribution des droits utilisateurs nécessaires, toujours avec des
droits administrateurs
- Suppression du répertoire ad hoc dans `$HOME`
- et, lien symbolique
- création d'un alias utile
```sh
# mkdir -p /usr/local/cabal/build
# chown -R user:wheel /usr/local/cabal
$ rm -rf ~/.cabal
$ ln -s /usr/local/cabal ~/.cabal
```
Pour finir, créez donc un alias dans votre fichier personnel `.khsrc`,
ou `.profile` :
`alias cabal='env TMPDIR=/usr/local/cabal/build/ cabal'`
{{}}
Ajouter le dossier .cabal à votre variable PATH pour pouvoir lancer les
commandes facilement !
`PATH=$HOME/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin:/usr/local/bin:/usr/local/sbin:$HOME/.cabal/bin`
{{}}
### Option wxallowed
{{}}
Prenez conscience qu'utiliser cette possibilité aura pour conséquence de
permettre l'exécution de binaire potentiellement dangereux depuis votre
`$HOME`.
**Mieux vaut éviter** !
{{}}
Il est possible d'ajouter l'option de montage `wxallowed` à votre partition
$HOME si vous l'avez créée.
----
source : https://deftly.net/posts/2017-10-12-using-cabal-on-openbsd.html
----
## Historique
J'ai écrit historiquement cette documentation sur le wiki de la communauté
"OpenBSD Pour Tous".
---