Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

transformer un script en app double clickable

4 réponses
Avatar
unbewusst.sein
je souhaite transformer une comme CLI en application double clickable et
dont je pourrais faire des Finder aliases avec une icône personnalisée.

faut-il refaire toute la structure d'une appli ?

les commandes sont très simple :

$ /Applications/Firefox3.app/Contents/MacOS/firefox-bin -P toto
pour l'une et :

$ /Applications/Firefox.app/Contents/MacOS/firefox-bin -P default
pour lautre

pour l'instant j'ai un scrit "ff3" pour Firefox 3 puisque j'utilise
Firefox 4 par défaut mais bizarement en double click ff 4 ne se lance
pas toujours avec le même utilisateur...

donc je dois ré-installer les modules...
--
Je m'intéresse au futur, c'est là que je compte passer
le reste de ma vie.
(Woody Allen)

4 réponses

Avatar
Frédéric Testuz
Il se trouve que Une Bévue a formulé :
je souhaite transformer une comme CLI en application double clickable et
dont je pourrais faire des Finder aliases avec une icône personnalisée.

faut-il refaire toute la structure d'une appli ?

les commandes sont très simple :

$ /Applications/Firefox3.app/Contents/MacOS/firefox-bin -P toto
pour l'une et :

$ /Applications/Firefox.app/Contents/MacOS/firefox-bin -P default
pour lautre

pour l'instant j'ai un scrit "ff3" pour Firefox 3 puisque j'utilise
Firefox 4 par défaut mais bizarement en double click ff 4 ne se lance
pas toujours avec le même utilisateur...

donc je dois ré-installer les modules...



Ma solution la plus simple est une appli Automator avec comme module
"Executer un script shell".
Tu peux ensuite changer l'icone de l'appli créée.

--
Frédéric
Avatar
unbewusst.sein
Frédéric Testuz wrote:

Ma solution la plus simple est une appli Automator avec comme module
"Executer un script shell".
Tu peux ensuite changer l'icone de l'appli créée.



Ah ouais, pas con !
mais bon, c'est trop tard, j'ai écrit un p'titi script ruby pour
réaliser ce genre d'application :

------------------------------------------------------------------------
#! /opt/local/bin/ruby1.9
# encoding: utf-8

require 'rubygems'
require 'fileutils'
require 'plist'

APP_DIR="/Applications"
USER_BIN="#{ENV['HOME']}/bin"
USER_APPS_ICONS_DIR="#{ENV['HOME']}/Icons/Apps"

def make_app(app_name,app_bin,utils)
base=APP_DIR
base+="/Utilities" if utils
contents="#{base}/#{app_name}.app/Contents"
macos="#{contents}/MacOS"
resources="#{contents}/Resources"
FileUtils.mkdir_p macos
FileUtils.mkdir_p resources
FileUtils.cp app_bin, macos
FileUtils.chmod 0755, "#{macos}/#{File.basename(app_bin)}"
app_icon="#{USER_APPS_ICONS_DIR}/#{app_name}.icns"
FileUtils.cp app_icon, resources
File.open("#{contents}/PkgInfo", File::WRONLY|File::TRUNC|File::CREAT,
0666) {|f| f.print "APPL????"}
plist={ 'CFBundleDevelopmentRegion'=>'Belleville',
'CFBundleExecutable'=>"#{File.basename(app_bin)}",
'CFBundleIconFile'=>"#{app_name}.icns",
'CFBundleIdentifier'=>"org.ytho.#{app_name}",
'CFBundleInfoDictionaryVersion'=>"6.0",
'CFBundlePackageType'=>"APPL",
'CFBundleShortVersionString'=>"7.0.2 SLE",
'CFBundleSignature'=>"????",
'CFBundleVersion'=>"7.0.2 SLE",
'NSAppleScriptEnabled'=>"NO"
}
File.open("#{contents}/Info.plist",
File::WRONLY|File::TRUNC|File::CREAT, 0666) {|f| f.print plist.to_plist}
end

make_app("Firefox3Launcher","#{USER_BIN}/ff3",false)
make_app("Firefox4Launcher","#{USER_BIN}/ff4",false)
------------------------------------------------------------------------

qui marche impec.

--
« A quoi bon soulever des montagnes quand il est
si simple de passer par-dessus ? »
(Boris Vian)
Avatar
francois.jacquemin
Une Bévue wrote:

je souhaite transformer une comme CLI en application double clickable et
dont je pourrais faire des Finder aliases avec une icône personnalisée.

faut-il refaire toute la structure d'une appli ?

les commandes sont très simple :

$ /Applications/Firefox3.app/Contents/MacOS/firefox-bin -P toto
pour l'une et :

$ /Applications/Firefox.app/Contents/MacOS/firefox-bin -P default
pour lautre

pour l'instant j'ai un scrit "ff3" pour Firefox 3 puisque j'utilise
Firefox 4 par défaut mais bizarement en double click ff 4 ne se lance
pas toujours avec le même utilisateur...

donc je dois ré-installer les modules...


Dans BBedit ou équivalent, tu commences par le shebang :
#!/bin/sh (ou bash ou zsh...)
puis ta ligne de commande avec un exec ou un open, tu testes,
tu n'oublies pas de faire un chmod depuis le Terminal pour rendre
exécutable ton fichierdont tu changes le nom avec modification de la
désinence .txt en .command et ça devrait marcher.

--
F. J.
Avatar
unbewusst.sein
François Jacquemin wrote:

puis ta ligne de commande avec un exec ou un open, tu testes,



ouais, c'est ce qu'il me manquait, l'exec, merci !

--
« Il ne faut jamais juger les gens sur leurs fréquentations.
Tenez, Judas, par exemple, il avait des amis irréprochables. »
(Paul Verlaine)