Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 03/01/2010, à 17:20

Jos31

Script pour gérer des prefix wine

Bonjour,

Je vous fais part d'un petit script que j'ai créé qui me sert a gérer des préfixes wine pour chaque jeu / programme que j'installe.
En gros c'est une sorte de PlayOnLinux en light et sans interface.

Si vous souhaitez l'installer directement, copiez ces commandes

sudo wget http://dl.cheztoi.net/wineenv -O /usr/local/bin/wineenv
sudo chmod +x /usr/local/bin/wineenv
sudo wget http://dl.cheztoi.net/wineenv_bash -O /etc/bash_completion.d/wineenv

L'auto complétion ne fonctionnera qu'au prochain démarrage de l'ordinateur.

---------------------------------------------

Le script s'utilise ainsi (apres l'avoir installé dans /usr/local/bin par exemple)

wineenv mon_jeu wine ./setup.exe

-> cela :
* Crée un prefixe wine dans ~/.wine-prefix/mon_jeu (s'il n'existe pas), puis lance wine sur ce préfix.
* Positionne un disque D: sur le disque C: du prefix wine par défaut
* Redirige le dossier Mes Documents vers ~/Documents/Wine-documents

Voici le script wineenv

#!/bin/sh
# Script permettant de gerer des prefix wine
# Documentation ici: http://forum.ubuntu-fr.org/viewtopic.php?id=370126

BASEPREFIX=/home/$USER/.wine-prefix/
DOCUMENTS=/home/$USER/Documents/Wine-documents/
[ -d $BASEPREFIX ] || mkdir -p $BASEPREFIX
[ -d $DOCUMENTS ] || mkdir -p $DOCUMENTS

if [ $# -lt 2 ]
then
	echo "Usage: $0 prefix wine..."
	echo "Ex:    $0 my_prefix winecfg"
	exit 2
fi



makeprefix()
{
	echo "Creation de l'environnement wine $1"
	env WINEPREFIX=$2 wine do_not_exists 2>/dev/null

	echo "Configuration de l'environnement"
	rm $2/drive_c/users/$USER/Mes\ documents
	ln -s $DOCUMENTS $2/drive_c/users/$USER/Mes\ documents
	ln -s /home/$USER/.wine/drive_c/ $2/dosdevices/d\:
}


prefix_path=$BASEPREFIX/$1
prefix=$1
shift

if [ ! -d $prefix_path ]
then
	makeprefix $prefix $prefix_path
fi
env WINEPREFIX="/home/$USER/.wine-prefix/$prefix" $*

Enfin, si vous voulez pouvoir utiliser la touche tab pour séléctionner le prefix (par exemple "wineenv mon_<tab>" complétera le nom du préfix), créez le fichier /etc/bash_completion.d/wineenv et mettez ceci dedans

_wineenv()
{
	local cur prev opts
	COMPREPLY=()
	cur="${COMP_WORDS[COMP_CWORD]}"
	prev="${COMP_WORDS[COMP_CWORD-1]}"
	if [ $COMP_CWORD -lt 2 ]
	then 
		opts=`ls ~/.wine-prefix/`
		COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
	else
		if [[ "$cur" == .* ]]
		then
			COMPREPLY=( $(compgen -f -d -- ${cur}) )
		else
			COMPREPLY=( $(compgen -c -- ${cur}) )
		fi
	fi
	return 0
}

complete -F _wineenv wineenv

N'hésitez pas a proposer des modifications ou améliorations

Dernière modification par Jos31 (Le 11/01/2010, à 10:19)

Hors ligne

#2 Le 03/01/2010, à 18:53

love2hate

Re : Script pour gérer des prefix wine

Perso le principal "default" que je trouve a ton script et de faire  pointer les prefixs dans le /home .
Quand j'utilise un prefixe c'est souvent sur un autre disque par manque de place ect ...


1984 was not supposed to be an instruction manual
Some "poor" wine screencast http://www.youtube.com/user/2m42hy/videos?view=0

Hors ligne

#3 Le 03/01/2010, à 18:54

projexa

Re : Script pour gérer des prefix wine

salut, c'est sympa comme idée, tu aurais du poster ton message dans le forum dédié Développement - Programmation ou truc et astuces.

bonne continuation


Penser est difficile, c'est pourquoi la plupart se font juges.
mon album fleur : https://picasaweb.google.com/109666919152955060370
ma passion les marche de l'entre Sambre et Meuse: https://picasaweb.google.com/1096669191 … breEtMeuse

Hors ligne

#4 Le 03/01/2010, à 19:35

Jos31

Re : Script pour gérer des prefix wine

love2hate a écrit :

Perso le principal "default" que je trouve a ton script et de faire  pointer les prefixs dans le /home .
Quand j'utilise un prefixe c'est souvent sur un autre disque par manque de place ect ...

Les 2 dossiers utilisés (Mes documents, et prefix) sont configurable au début du script, dans les variables $BASEPREFIX et $DOCUMENTS. Il suffit d'adapter a ton cas les deux variables du début, et tout le script s'adaptera.
Il faudra par contre le mettre aussi dans le script d'autocomplétion.

projexa a écrit :

salut, c'est sympa comme idée, tu aurais du poster ton message dans le forum dédié Développement - Programmation ou truc et astuces.

bonne continuation

Je vais alors demander a un admin de le déplacer dans programmation

Dernière modification par Jos31 (Le 03/01/2010, à 19:38)

Hors ligne

#5 Le 03/01/2010, à 19:44

nesthib

Re : Script pour gérer des prefix wine

déplacé dans Développement - Programmation

edit : en fait plus approprié si d'autres veulent contribuer

Dernière modification par nesthib (Le 03/01/2010, à 19:50)


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#6 Le 03/01/2010, à 19:49

Jos31

Re : Script pour gérer des prefix wine

Merci nesthib

Hors ligne