Stránka 1 z 2

Odkaz z webu pustí specifickou aplikaci

Napsal: 06 bře 2019 14:26
od hafieror
Zdravím ve spolek,
na macOS jsem přešel z Linuxu, který jsem používal od roku 2002. Aktuálně bych potřeboval vyřešit věc, kterou jsem používal na Linuxu a na macOS nevím jak nastavit. Mám webový informační systém, kde po odkliknutí odkazu v tomto tvaru
nwinbox:ipadresa
se mi na linuxu spustil skript

#!/bin/bash
IP=`echo $1 | cut -d: -f2`
env WINEPREFIX="/home/user/.wine" /usr/bin/wine /home/user/Plocha/winbox3.exe $IP:8295 admin heslo

který zajistil spuštění programu s předvyplněnou ip adresou a heslem

Lze to nějak?

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 06 bře 2019 14:50
od ra3662
A co Automator.app nepomůže?
Na to tu jsou docela machři. Když popíšeš co a jak na OS X tak určitě někdo poradí.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 06 bře 2019 15:13
od hafieror
Kód vypadá takto, kdy ip adresa se zobrazuje podle databáze zákazníka. To nwinbox je moje interní označení, na základě kterýho jsem v linuxu definoval jaká aplikace se má spustit.
<a href="nwinbox:100.64.202.111">[w]</a>

Já potřebuji, aby se přes wine spustil winbox.exe a převzalo to tuto ip adresu.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 06 bře 2019 22:00
od moreplavec
Nějak jsem nepochopil co je cílem, ale vzdáleně něco spustit je řešení pro VPN, SSH nebo remote desktop. Případně, pokud to řešit skripty, proč nemít na cílovém stroji robota, který checkuje nějaký stav. Ale těžko radit, zadání moc nepobírám, asi mi uniká něco zásadního, proč nejde profi a ověřené řešení použít.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 07 bře 2019 09:33
od hafieror
Nepotřebuji nic spouštět vzdáleně, potřebuji kliknutím na odkaz spustit lokální aplikaci. Jako když je v kódu mailto: tak to spustí poštovního klienta, když tam bude mms: tak to spustí nějaký multimediální přehravač. A já když kliknu na w, pod kterým se skrvý nwinbox: , tak potřebuji spustit lokální skript. Říká se tomu tuším uri handler. Teď když jsem se hrabal v googlu, tak jsem našel aplikaci, která zobrazuje asociace, ale nedá se tam přidat můj typ.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 07 bře 2019 10:20
od Gwaihir

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 07 bře 2019 12:00
od kmarty
Za mne hlasuju pro Platypus.
Kdyz se pri vyrobe "aplikace" zaskrtne "Accept dropped items" tak v nasledne objevsim "settings" je volba "Register as URI scheme handler" (coz bude ve tvem pripade onen "nwinbox"):
Snímek obrazovky 2019-03-07 v 11.58.13.png
"Script Path" je jen zdrojovy script pro vyroby App (jednorazove, neni potreba ho mit nafurt. Platypus si ho do toho App bundlu zkopiruje).
Snímek obrazovky 2019-03-07 v 11.58.20.png
V Safari (anebo i ve Firefoxu, mozna i jinde) kdyz pak kliknes na:
Snímek obrazovky 2019-03-07 v 12.07.13.png
Tak dany script (pouzity/napsany a zbundlovany v Platypu) obdrzi v ARGV ($@ v shellu): nwinbox://1.2.3.4
V tom scriptu s tim naloz jak uznas za vhodne (ja tam mel echo "$@" >> /tmp/testik-$$.txt :-) ).


Jinak ano, technicky to dela totez co je popsano v odkazech v postu od Gwalhir. Ale uzivatelsky je to zretelne snazsi pres Platypus :-)

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 07 bře 2019 12:16
od kmarty
Sorry, “koser” web pro Platypus je tenhle: https://sveinbjorn.org/platypus

(ja dal predtim odkaz na github, ale jinak je to furt jedno a totez)

Jinak cela tahle vopicarna se musi udelat proto, ze macOS nema zadny centralni registr namapovanejch pripon, urischemat a podobne, to si nese kazda aplikace (App bundle) sebou. To znamena ze nejprve musis mit aplikaci, ktera o sobe nabonzuje ze je toho schopna, v ramci OS pak maximalne muzes vybrat kterou z nich pouzijes (pokud se ke stejnymu schematu/pripony/pomalu cehokoliv hlasi vic aplikaci). Odinstalaci (hozenim do kose) posledni aplikace podporujici danou priponu/schema/... mizi i povedomi OS o danem typu.

Funguje to skrz naskrz pomalu vseho a proto taky typicka macOS aplikace nepotrebuje nejaky instalator/deinstalator, ale jen pretazeni/rozbaleni na disk a pripadne vymazani z disku.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 07 bře 2019 15:53
od hafieror
Děkuji moc za nasměrování. Zasekl jsem se dřív než jsem chtěl. Než ten skript předhodím platypusu, tak musím docílit toho, že to se spuštěním toho skriptu pustí vůbec to co má. Aktuálně jsem se zarazil, že když spustím z řádky příkaz níže, tak se winbox spustí ale nepřevezme ip adresu. To samé když si udělám na linuxu (se správnýma cestama), tak se ip adresa načte :-/

Kód: Vybrat vše

/Applications/Wine.app/Contents/MacOS/Wine /Users/userja/Desktop/winbox3.exe 172.20.0.1

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 07 bře 2019 16:46
od kmarty
hafieror píše:
07 bře 2019 15:53
...

Kód: Vybrat vše

/Applications/Wine.app/Contents/MacOS/Wine /Users/userja/Desktop/winbox3.exe 172.20.0.1
Takhle se s Wine.app nepracuje. Nejsem si uplne jisty, jak spravne, ale mam takovy dojem ze je to spis pro praci s WineBottler.app (pomoci nej si vytvoris skorojako macOS .app - s vlastnim wine prostredim, o vlastni verzi, s vlastnimi knihovnami a tak).
Mimoto by to melo byt volany spis jako:

Kód: Vybrat vše

/Applications/Wine.app/Contents/Resources/bin/wine
ale i tak bude v zakladu chybet hrst promennejch.
Neco takovyhleho (tohle je asi nezbytny minimum):

Kód: Vybrat vše

export WINEUSRPATH="/Applications/Wine.app/Contents/Resources"
export WINEPREFIX="$HOME/Library/Application Support/winbox"  # Je potreba definovat kde bude nasimulovany ten "MS Win" disk
export DYLD_FALLBACK_LIBRARY_PATH="/usr/lib":"$WINEUSRPATH/lib":"/opt/X11/lib":"/usr/X11/lib"

$WINEUSRPATH/bin/wine winbox.exe "$SEM_PRIJDE_IP_ADRESA"
Varianta B, pokud uz mas nainstalovany Homebrew, je pres brew nainstalovat wine a fungovat Linux style.

Kód: Vybrat vše

brew install wine  # jednorazove
/usr/local/bin/wine winbox.exe 1.2.3.4
A vybodnout se na Wine.app.

P.S.: Dej si pozor na zasprclej wineserver nebo jiny zombikovity wine instance. Dokazou z funkcniho postupu udelat nefungujici vec.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 08 bře 2019 09:16
od hafieror
Děkuji ti moc, varianta B byla to správné, jednoduché. Udělal si dnes jednoho člověka šťastným. Mě úplně pilo krev, když jsem spouštel aplikaci exe, která má asi 3MB zabalenou do apple světa, kde měla asi 200MB. Pak jsem objevil, že existuje wine jako balík a už jsem měl při spouštění lepší pocit. Ale to, že to nyní spouštím stejně jednoduše jako v linuxu mě dostalo a ve spojení s platypus je to prostě super a v to že to půjde rozhýbat i přes ten web, v to jsem ani nedoufal. Ještě jednou moc děkuji. Vyvrátilo to i moje přesvědčení, že macos je pro lidi co nechtějí nic řešit, ale on se dá i ohýbat pro ty co chtějí něco víc. (y)

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 08 bře 2019 12:33
od kmarty
Ad velikosti aplikaci. Ono to musis brat tak, ze typicka macOS aplikace je neco jako Flatpak v Linuxu. Je to sice vetsi, ale bez komplikaci zavislosti na sdilenych knihovnach a tak. Jen to holt trochu skripe kdyz to chces pouzit z terminalu (o kterem asi vetsina uzivatelu jabka nema ani tucha).
Homebrew, nebo Macports, to je zachrana pro takovy zvrhliky jako jsme my :-).

Ja osobne bych asi ten Winbox* spachal pres WineBottle jako MacApp, abych se o nej do budoucna nemusel dal starat (jako ze mi bude chybet wine nebo tak) a dal se poustet i klikacim zpusobem. Pak se to da pouzitelnym zpusobem zavolat i z terminalu.
Ale je to o neco komplikovanejsi to vyrobit (ale zase ne o moc).
Premejslim ze by to mozna slo zkombinovat (aby to umelo i to volani pres uri), ale to bude asi peknej bumbrlicek :-)

*) On se porad jeste pouziva? Ja mel za to ze dneska ma RouterOS webui snad v zakladu. A pro slozitejsi veci lezes do Mikrotiku stejne pres ssh. Nebo ne?

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 08 bře 2019 15:05
od hafieror
Co se týká té velikosti, tak já mám třeba otevřeny 4 winboxy najednou a to mě trochu děsilo. Teď jsem trochu víc v klidu. Přes ten platypus jsem si udělal dvě verze. Jedna mě spouští ty odkazy z webu a počítá s ipadresou a druhou mám dole v doku, když potřebuji někam jít přímo. Prostě šťastnej člověk teď.

Winbox se používá stále, webui je pro rozumnou práci k ničemu a to co nabízí winbox nemůže nahradit. Mám v síti tisíce mikrotiků od BGP až po koncové routery uživatelů a když jedu diagnostiku třeba s koncovým uživatelem, tak mám ve winboxu otevřený okno s pinge, traceroute, signálem wifi, leasses od dhcp .... dál vychytávky typu romon taky webui nenahradí. SSH samozřejmě používám taky, třeba pro otvírání tunelů.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 09 bře 2019 15:28
od hafieror
Ještě jsem narazil na jeden problém a to, že mě nejde otevřít více oken z webu = otebřu si jednoho zákazníka a potřebuji otevřít druhého, tak odkliknu [w] a nic se neděje. Zavřu předchozí okno a spustí se to. To teda nevím jak bych obešel :-/

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 10 bře 2019 10:19
od MichalM.Mac
Pokud chceš spustit aplikaci přes URL něco://, imho musíš to něco zaregistrovat do LaunchServices, aby o tom macOS věděl.
https://developer.apple.com/documentati ... h_services

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 10 bře 2019 11:59
od kmarty
To je v pohode, tuhle cast uz ma poresenou pres CFBundleURLSchemes v Plistu ty “appky”. To uz chodi.
Ted je tematem dne vicenasobna instance ty “appky”.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 10 bře 2019 12:21
od MichalM.Mac
Dalo by se mít jednu master aplikaci, které by pouze zpracovala URL a otevřela jinou aplikaci (v tvém případě winbox).

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 13 bře 2019 12:14
od hafieror
Dokáže mi někdo poradit, jak ten skript udělat na dva aby to běhalo podle té myšlenky master aplikace? Aktuální skript vypadá takto

Kód: Vybrat vše

#!/bin/bash
  
IP=`echo $1 | cut -d: -f2`
env WINEPREFIX="/Users/user/.wine" /usr/local/bin/wine /Users/user/Desktop/winbox3.exe $IP:8295 admin password

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 13 bře 2019 14:00
od kmarty
Nerikam ze tak jak jsem to spachal je jedina a nedejboze spravna cesta, ale pac mne to beztak zajimalo jak co nejmene pracnym zpusobem se k necemu takovymu dopracovat, tak jsem zkusil tohle:
  1. "Vyroba" WinBox.app:
    • Za pomoci WinBottle jsem vypachal cosi a la macOS aplikace. Nastaveni WineBottle podle obrazku:
      Snímek obrazovky 2019-03-13 v 13.23.20.png
    • Vysledny WinBox.app jsem drobet poupravil (ve vychozim stavu nepredava argumenty pro Wine). Verim ze unifikovany diff vystup, pouzitelny pro prikaz patch, znas:

      Kód: Vybrat vše

      --- WinBox.app/Contents/MacOS/startwine	2019-03-13 13:22:54.000000000 +0100
      +++ WinBox.app/Contents/MacOS/startwine	2019-03-13 13:31:50.000000000 +0100
      @@ -47,8 +47,8 @@
           cd "$BIN_PATH"
       fi
       if [ "$(defaults read "$BUNDLERESOURCEPATH/../Info" WineProgramArguments)" != "" ]; then
      -"$WINEUSRPATH/bin/wine" "$BIN_FILE" $(defaults read "$BUNDLERESOURCEPATH/../Info" WineProgramArguments)
      +"$WINEUSRPATH/bin/wine" "$BIN_FILE" $(defaults read "$BUNDLERESOURCEPATH/../Info" WineProgramArguments) $@
       else
      -"$WINEUSRPATH/bin/wine" "$BIN_FILE"
      +"$WINEUSRPATH/bin/wine" "$BIN_FILE" $@
       fi
      
      (Dooprav podle potreby, tohle je bez kontroly, bez niceho. Proste neadertalskym zpusobem predhozeny argumenty.)
    • Tim je hotova "macOS" aplikace WinBox. Normalne spustitelna, uplne samostatna (Wine si nese sebou, takze neni treba nic doinstalovavat).
  2. Vyroba WinBoxHelper.app:
    • V aplikaci Platypus:
      Snímek obrazovky 2019-03-13 v 13.33.24.png
      Snímek obrazovky 2019-03-13 v 13.33.29.png
    • Script obsahuje toto:

      Kód: Vybrat vše

      #!/bin/sh
      
      if [ $# -gt 0 ]; then
      	DST=$(echo $1 | sed -e 's/^nwinbox:\/*//')
      	open -na WinBox --args ${DST}:8295 admin password
      fi
      
    • O spousteni jako nova instance se stara prepinac '-n' u prikazu 'open' (ktery se sice asi ma pouzivat trochu jinak, ale takhle dela presne to co cekam).
    • Zmineny script se pak nachazi v WinboxHelper.app/Contents/Resources/script, takze jde upravovat podle potreby bez nutnosti znovuvyroby v Platypu.
  3. Zkopirovat/presunout oboji, WinBox.app i WinboxHelper.app, do "Aplikaci" (at uz do tech na koreni, nebo v domovskem adresari). Nejsem si jisty jestli je nutny aspon jednou pustit WinboxHelper.app.
Pokud se ti to nechce delat, a pokud mi veris, tak vysledny vytvor je ke stazeni zde.

(edit: jsem si nevsiml ze to volas v podobe "nwinbox:i.p.k.o", ja to celou dobu mel jako "nwinbox://i.p.k.o". Tak jsem to upravil aby to vzalo oboji)

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 13 bře 2019 14:38
od kmarty
A pokud jde o zabrani RAM, tak si myslim muzes zustat v klidu:
Snímek obrazovky 2019-03-13 v 14.37.22.png
A na disku je to jen jednou :-).

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 13 bře 2019 16:41
od hafieror
Tak tady jsem se zaseknul, trochu si mě přecenil :-)

"Vysledny WinBox.app jsem drobet poupravil (ve vychozim stavu nepredava argumenty pro Wine). Verim ze unifikovany diff vystup, pouzitelny pro prikaz patch, znas:"

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 13 bře 2019 16:55
od kmarty
To melo byt abys mohl pustit

Kód: Vybrat vše

patch -p0 < winbox.patch
kde winbox.patch je obsah toho "kodu", toho "unified diff".

Ok, nevadi. Tak jinak:
V WinBox.app/Contents/MacOS/startwine na radkach 50 a 52 (zacinaji "$WINEUSRPATH/bin/wine", jsou prakticky az na konci toho scriptu) pridej na jejich konec $@. Standardnim buildem pres WineBottle totiz spousteny EXE nedostane parametry (a ty tu potrebujes, jinak to nepreda tu IP adresu, juzrnejm ani heslo).
Jinak ten DMG na uloztu uz to obsahuje upraveny.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 15 bře 2019 08:59
od hafieror
Tak tvůj balík šlape jak víno podle představ, zkoušel jsem to udělat také, ale narazil jsem, že se mi stále nechtěl asociovat nwinbox, ale tolik času jsem tomu nevěnoval proč se tak děje. To nastane, až vydají novou verzi winboxu a budu to muset udělat znovu. Poslední vada na kráse, že to neukládá konfigurační soubor. Hlásí to Error: Could not save configuration.

Ještě jednou moc děkuji za pomoc.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 15 bře 2019 10:37
od kmarty
Heh, tak to nemam tuchy.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 10 říj 2019 13:12
od hafieror
Ahoj, nainstaloval jsem Catainu a přestalo mi fungovat vše kolem wine tedy primárně winbox.exe bez kterého žít nemohu. Je nějaké řešení, aby to v Catalině opět šlo?

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 10 říj 2019 16:32
od kmarty
Wine je implementace MS Win API*, nikoliv emulator windowsiho stroje => (p|d)okud je winbox.exe 32bit aplikace, pak nepobezi. Je mi lito.


*) Bez podpory MS. Tzn. vyviji se vicemene systemem "blackbox" - kdyz je vstup "A" a vystup je "B", tak moje reseni musi na zaklade "A" udelat taky "B". Proto je taky ta uspesnost tak prachbidna, protoze tenhle system vyvoje neni rychly (a 100% spolehlivy).

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 10 říj 2019 16:54
od hafieror
Jj, už jsem to pochopil a udělal jsem zpět downgrade. Doufám, že se to tvůrcům wine podaří vyřešit.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 10 říj 2019 17:04
od kmarty
Nepodari. To neni uloha Wine, to je o tom ze macOS jadro se bavi pouze se 64bit binarkami a Winbox.exe je 32bit binarka. Wine je de facto pouze slovnik nazvu, ze "zufanek" je naberacka, "rozni" je rozsvitit a tak (akorat jde o jmena MS Win volani a jejich prevod na macOS volani). Ale samotne spusteni te binarky (Winbox.exe v tomto pripade) je v ramci macOS jadra.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 11 pro 2019 11:02
od hafieror
Tak jsem tu zpět. Svět se pohnul, že existuje 64bit verze winboxu. Podle návodu
https://help.mikrotik.com/docs/display/ ... OSCatalina
ji dokážu spustit z řádku, ale jsem zase na začátku zda z toho dokážu udělat aplikaci viz postupy výše, protože winbottler to nezvládne, protože asi neumí s 64bit pracovat.

Je nějaká cesta jak pokračovat?

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 11 pro 2019 11:47
od kmarty
Hadam ze ted je potreba (64bit) winebottler s 64bit wine.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 11 pro 2019 14:41
od hafieror
Podle tohoto článku https://mike.kronenberg.org/64-bit-supp ... ler-4-0-1/
jsem pochopil, že 64bit verze existuje. Stáhnul jsem to, nainstaloval jsem winebottler + wine v tom balíku, nastavil podle tvého návodu zde jen s tím, že jsem dal Win7 64bit, ale skončilo to s chybou viz níže :-/


Kód: Vybrat vše

###BOTTLING### Create .app...
###BOTTLING### Enabling CoreAudio, Colors, Antialiasing  and flat menus...
/Applications/WineBottler.app/Contents/Frameworks/WBottler.framework/Resources/bottler.sh: line 142: /Applications/Wine.app/Contents/Resources/bin/wine: Bad CPU type in executable
### LOG ### Command '/Applications/Wine.app/Contents/Resources/bin/wine regedit /tmp/reg.reg' returned status 126.



###ERROR### Command '/Applications/Wine.app/Contents/Resources/bin/wine regedit /tmp/reg.reg' returned status 126.
Task returned with status 1.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 12 pro 2019 16:00
od kmarty
Neco mi rika ze nemas tu verzi WineBottleru u ktere je deklarovana podpora wine64.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 12 pro 2019 18:06
od hafieror
Ke stažení je jen verze 4.0.1.1 u které píší v tom článku, že 64bit podporuje tak nevím kde bych udělal chybu.

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 12 pro 2019 19:15
od kmarty
Koukam ze ne ty, ale tvurce Winebottleru :-(
Na to aby to vyslovene nezanadavalo, je potreba upravit Winebottler.app:

Kód: Vybrat vše

diff -Naur WineBottler-original.app/Contents/Frameworks/WBottler.framework/Versions/Current/Resources/bottler.sh WineBottler.app/Contents/Frameworks/WBottler.framework/Versions/Current/Resources/bottler.sh
--- WineBottler-original.app/Contents/Frameworks/WBottler.framework/Versions/Current/Resources/bottler.sh	2019-09-03 10:43:26.000000000 +0200
+++ WineBottler.app/Contents/Frameworks/WBottler.framework/Versions/Current/Resources/bottler.sh	2019-12-12 19:10:34.000000000 +0100
@@ -36,7 +36,6 @@
 
 ##########                         Debug Info                         ##########
 ################################################################################
-WINE_VERSION=$("$WINEPATH/wine" --version |sed 's/wine-//')
 
 if [[ "$WINETRICKS_ITEMS" == *"arch=64"* ]]; then
     export WINEARCH=win64
@@ -44,6 +43,13 @@
     export WINEARCH=win32
 fi
 
+if [ "$WINEARCH" = "win64" ]; then
+	export WINEBIN="wine64"
+else
+	export WINEBIN="wine"
+fi
+WINE_VERSION=$("$WINEPATH/$WINEBIN" --version |sed 's/wine-//')
+
 echo "###BOTTLING### Gathering debug Info..."
 echo ""
 echo "Versions"
@@ -100,7 +106,7 @@
 ##########        Some export because I had troubles with paths        #########
 ################################################################################
 export PATH="$BUNDLERESOURCEPATH":"$BUNDLERESOURCEPATH/bin":"$WINEPATH":$PATH
-export WINE="$WINEPATH/wine"
+export WINE="$WINEPATH/$WINEBIN"
 export WINESERVER="$WINEPATH/wineserver"
 export WINEPREFIX="$BOTTLE/Contents/Resources/wineprefix"
 export USERNAME="$USER"
@@ -264,7 +270,9 @@
     cp "$BUNDLERESOURCEPATH/startwine" "$BOTTLE/Contents/MacOS/startwine"
     cp "$BUNDLERESOURCEPATH/startwine.rsrc" "$BOTTLE/Contents/Resources/startwine.rsrc"
     cp "$BUNDLERESOURCEPATH/main.scpt" "$BOTTLE/Contents/Resources/Scripts/main.scpt"
-    cp "$BUNDLERESOURCEPATH/startwine.sh" "$BOTTLE/Contents/MacOS/startwine.sh"
+    #cp "$BUNDLERESOURCEPATH/startwine.sh" "$BOTTLE/Contents/MacOS/startwine.sh"
+    sed -e "s/__WINEARCH__/$WINEARCH/g;s/__WINEBIN__/$WINEBIN/g" "$BUNDLERESOURCEPATH/startwine.sh" > "$BOTTLE/Contents/MacOS/startwine.sh"
+    
 	chmod a+x "$BOTTLE/Contents/MacOS/startwine.sh"
 
     # Info.plist
@@ -582,12 +590,12 @@
 #        WINE64SAVE=$WINE64
 		PATHSAVE=$PATH
 		PREFSAVE=$WINEPREFIX
-		ln -s "$WINEPATH/wine" "$NOSPACE_PATH/wine"
-        ln -s "$WINEPATH/wine64" "$NOSPACE_PATH/wine64"
+		ln -s "$WINEPATH/$WINEBIN" "$NOSPACE_PATH/$WINEBIN"
+#        ln -s "$WINEPATH/wine64" "$NOSPACE_PATH/wine64"
 		ln -s "$(which cabextract)" "/$NOSPACE_PATH/cabextract"
 		ln -s "$WINEPREFIX" "$NOSPACE_PATH/wineprefix"
 		export PATH="$NOSPACE_PATH":"$PATH"
-		export WINE="$NOSPACE_PATH/wine"
+		export WINE="$NOSPACE_PATH/$WINEBIN"
 		export WINEPREFIX="$NOSPACE_PATH/wineprefix"
 
 		# APPLY winetricks
diff -Naur WineBottler-original.app/Contents/Frameworks/WBottler.framework/Versions/Current/Resources/startwine.sh WineBottler.app/Contents/Frameworks/WBottler.framework/Versions/Current/Resources/startwine.sh
--- WineBottler-original.app/Contents/Frameworks/WBottler.framework/Versions/Current/Resources/startwine.sh	2019-09-03 10:43:26.000000000 +0200
+++ WineBottler.app/Contents/Frameworks/WBottler.framework/Versions/Current/Resources/startwine.sh	2019-12-12 19:01:40.000000000 +0100
@@ -8,13 +8,13 @@
 
 
 #find wine, try in Bundle, ~/Applications, /Applications, Spotlight
-if [ -f "$BUNDLERESOURCEPATH/Wine.bundle/Contents/Resources/bin/wine" ]; then
+if [ -f "$BUNDLERESOURCEPATH/Wine.bundle/Contents/Resources/bin/__WINEBIN__" ]; then
     export WINEUSRPATH="$BUNDLERESOURCEPATH/Wine.bundle/Contents/Resources"
-elif [ -f "$HOME/Applications/Wine.app/Contents/Resources/bin/wine" ]; then
+elif [ -f "$HOME/Applications/Wine.app/Contents/Resources/bin/__WINEBIN__" ]; then
     export WINEUSRPATH="$HOME/Applications/Wine.app/Contents/Resources"
-elif [ -f "/Applications/Wine.app/Contents/Resources/bin/wine" ]; then
+elif [ -f "/Applications/Wine.app/Contents/Resources/bin/__WINEBIN__" ]; then
     export WINEUSRPATH="/Applications/Wine.app/Contents/Resources"
-elif [ -f "$(mdfind 'kMDItemCFBundleIdentifier == org.kronenberg.Wine' | grep -m 1 'Wine.app')/Contents/Resources/bin/wine" ]; then
+elif [ -f "$(mdfind 'kMDItemCFBundleIdentifier == org.kronenberg.Wine' | grep -m 1 'Wine.app')/Contents/Resources/bin/__WINEBIN__" ]; then
     export WINEUSRPATH="$(mdfind 'kMDItemCFBundleIdentifier == org.kronenberg.Wine' | grep -m 1 'Wine.app')/Contents/Resources"
 else
     echo "Wine not found!"
@@ -37,7 +37,7 @@
 export DYLD_FALLBACK_LIBRARY_PATH="/usr/lib":"$WINEUSRPATH/lib"
 export WINEPATH="$WINEUSRPATH/bin"
 export FREETYPE_PROPERTIES="truetype:interpreter-version=35"
-export WINEARCH=win32
+export WINEARCH=__WINEARCH__
 
 
 
@@ -53,9 +53,9 @@
     cd "$BIN_PATH"
 fi
 if [ "$(defaults read "$BUNDLERESOURCEPATH/../Info" WineProgramArguments)" != "" ]; then
-"$WINEUSRPATH/bin/wine" "$BIN_FILE" $(defaults read "$BUNDLERESOURCEPATH/../Info" WineProgramArguments) "$@" & PID=$!
+"$WINEUSRPATH/bin/__WINEBIN__" "$BIN_FILE" $(defaults read "$BUNDLERESOURCEPATH/../Info" WineProgramArguments) "$@" & PID=$!
 else
-"$WINEUSRPATH/bin/wine" "$BIN_FILE" "$@" & PID=$!
+"$WINEUSRPATH/bin/__WINEBIN__" "$BIN_FILE" "$@" & PID=$!
 fi
 
 
Tim jsem se dopracoval k tomu ze se "naflaskoval" 64bit winbox. A sel spustit. Ale jestli je tam jeste nejaky zadrhel, to nevim a ani nemam nijakou chut to zkoumat (nepouzivam winbox).

Re: Odkaz z webu pustí specifickou aplikaci

Napsal: 13 pro 2019 08:16
od hafieror
Děkuji moc, nevím co bych bez tebe dělal. Jen co pochopím jak funguje ten diff tak to otestuju. Ještě jednou moc děkuji.