Odkaz z webu pustí specifickou aplikaci

Pokud si nevíte rady s operačním systémem MacOS X, jeho nastavením nebo aplikacemi týkajícími se právě práce s počítačem, tak zde můžete vznést svůj dotaz

Moderátoři: MichalM.Mac, zmiy, dandas, AdamVyborny, yonah, Macforum_Admin, Unreed

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 06 bře 2019 14:26

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?

Uživatelský avatar
ra3662
Příspěvky: 4638
Registrován: 14 srp 2012 10:25
Bydliště: Ostrava

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od ra3662 » 06 bře 2019 14:50

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í.

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 06 bře 2019 15:13

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.

Uživatelský avatar
moreplavec
Příspěvky: 211
Registrován: 29 čer 2013 06:29
Bydliště: Praha
Kontaktovat uživatele:

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od moreplavec » 06 bře 2019 22:00

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.
MacBook PRO 16" (i9/32GB/2TB), Macbook PRO 15" late 2013 (i7/16GB/500GB), Macbook 12", iPad mini, iPhone 8 plus

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 07 bře 2019 09:33

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.
Přílohy
Snímek obrazovky 2019-03-07 v 8.46.33.png


Uživatelský avatar
kmarty
Příspěvky: 117
Registrován: 08 srp 2012 20:19

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od kmarty » 07 bře 2019 12:00

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 :-)

Uživatelský avatar
kmarty
Příspěvky: 117
Registrován: 08 srp 2012 20:19

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od kmarty » 07 bře 2019 12:16

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.

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 07 bře 2019 15:53

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

Uživatelský avatar
kmarty
Příspěvky: 117
Registrován: 08 srp 2012 20:19

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od kmarty » 07 bře 2019 16:46

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.

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 08 bře 2019 09:16

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)

Uživatelský avatar
kmarty
Příspěvky: 117
Registrován: 08 srp 2012 20:19

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od kmarty » 08 bře 2019 12:33

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?

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 08 bře 2019 15:05

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ů.

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 09 bře 2019 15:28

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 :-/

Uživatelský avatar
MichalM.Mac
Příspěvky: 3342
Registrován: 30 črc 2012 11:03
Kontaktovat uživatele:

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od MichalM.Mac » 10 bře 2019 10:19

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

Uživatelský avatar
kmarty
Příspěvky: 117
Registrován: 08 srp 2012 20:19

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od kmarty » 10 bře 2019 11:59

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”.

Uživatelský avatar
MichalM.Mac
Příspěvky: 3342
Registrován: 30 črc 2012 11:03
Kontaktovat uživatele:

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od MichalM.Mac » 10 bře 2019 12:21

Dalo by se mít jednu master aplikaci, které by pouze zpracovala URL a otevřela jinou aplikaci (v tvém případě winbox).

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 13 bře 2019 12:14

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

Uživatelský avatar
kmarty
Příspěvky: 117
Registrován: 08 srp 2012 20:19

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od kmarty » 13 bře 2019 14:00

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)
Naposledy upravil(a) kmarty dne 13 bře 2019 14:57, celkem upraveno 6 x.

Uživatelský avatar
kmarty
Příspěvky: 117
Registrován: 08 srp 2012 20:19

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od kmarty » 13 bře 2019 14:38

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 :-).

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 13 bře 2019 16:41

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:"

Uživatelský avatar
kmarty
Příspěvky: 117
Registrován: 08 srp 2012 20:19

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od kmarty » 13 bře 2019 16:55

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.

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 15 bře 2019 08:59

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.

Uživatelský avatar
kmarty
Příspěvky: 117
Registrován: 08 srp 2012 20:19

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od kmarty » 15 bře 2019 10:37

Heh, tak to nemam tuchy.

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 10 říj 2019 13:12

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?

Uživatelský avatar
kmarty
Příspěvky: 117
Registrován: 08 srp 2012 20:19

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od kmarty » 10 říj 2019 16:32

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).
Naposledy upravil(a) kmarty dne 10 říj 2019 17:23, celkem upraveno 2 x.

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 10 říj 2019 16:54

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.

Uživatelský avatar
kmarty
Příspěvky: 117
Registrován: 08 srp 2012 20:19

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od kmarty » 10 říj 2019 17:04

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.

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 11 pro 2019 11:02

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?

Uživatelský avatar
kmarty
Příspěvky: 117
Registrován: 08 srp 2012 20:19

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od kmarty » 11 pro 2019 11:47

Hadam ze ted je potreba (64bit) winebottler s 64bit wine.

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 11 pro 2019 14:41

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.

Uživatelský avatar
kmarty
Příspěvky: 117
Registrován: 08 srp 2012 20:19

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od kmarty » 12 pro 2019 16:00

Neco mi rika ze nemas tu verzi WineBottleru u ktere je deklarovana podpora wine64.

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 12 pro 2019 18:06

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.

Uživatelský avatar
kmarty
Příspěvky: 117
Registrován: 08 srp 2012 20:19

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od kmarty » 12 pro 2019 19:15

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).

hafieror
Příspěvky: 18
Registrován: 06 bře 2019 14:08

Re: Odkaz z webu pustí specifickou aplikaci

Příspěvek od hafieror » 13 pro 2019 08:16

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.

Odpovědět