Code Monkey home page Code Monkey logo

ihhh's People

Contributors

peneheals avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

eriseven

ihhh's Issues

Extend and refactor curlrc fix

  • Just cp (save) to an old one, do not check if it contains anything. Assume it won't be good for us.
  • At first, dl cacert.pem from curl site with curl --remote-name --time-cond cacert.pem https://curl.se/ca/cacert.pem.
  • Extend option list with: --silent, --show-error, --location, --fail and --cacert cacert.pem (follow redirects and set a cacert, fail another way, be silent and show errors). cacert=cacert.pem
  • Also use curlrc fix when installing xquartz and wine.
  • Extra: switch HD and hot dl-s --silent to --progress-bar (UX :D ).

Install xcode-select bug

Check and wait until the dialog prompt process finished. Maybe (xcode-select --install) || err is enough?

Use gog.com API

Use one of the existing methods to automatize as much the whole process as possible. We can dl from gog.com with https://github.com/nicohman/wyvern OR https://github.com/Sude-/lgogdownloader

Tasks:

  • Install HoMM3 without any kind of user interaction except user credentials (root/sudo/maclogin and gog).
  • Check 2FA auth works well.
  • If any macOS fails, create a manual exception to stop and allow the user to DL manually and after that keep on with the process.
  • Note the average times on every macOS to future fine tune possibility.

Tests:

  • Yosemite | Source install: failed.
  • El Capitan | Source install: failed.
  • Sierra | Source install: passed.
  • High Sierra | Install: passed.
  • Mojave | Install: passed.

Use WINEPREFIX

Atm. we think that the general ~/.wine folder is used. Use the generic method instead of it.

Yosemite error

Error: git: no bottle available!
You can try to install from source with:
  brew install --build-from-source git
Please note building from source is unsupported. You will encounter build
failures with some formulae. If you experience any issues please create pull
requests instead of asking for help on Homebrew's GitHub, Twitter or any other
official channels.
Error: Git must be installed and in your PATH!
Failed during: /usr/local/bin/brew update --force --quiet

Meanwhile:

chps-MacBook-Pro:~ chp$ git --version
git version 2.5.4 (Apple Git-61)

Linux tests

Manual test on some fresh installs (Ubuntu, Debian, Suse, Mint, Kubuntu, Fedora, Manjaro maybe.

Minor improvements

  • a - OS codename into first block - https://erikberglund.github.io/2016/Apple_Product_Marketing_Name_Query/
  • b - [P|R]ing at important messages.
  • c - Bring terminal to front at/after important blocks and finished non-terminal installs.
  • d - DLs percentage statusbar.
  • e - Insert ~/ into running tip at the end.
  • f - Check this vm: https://github.com/machyve/xhyve
  • g - MacOS notifications.
  • h - Show "red texts" as Mac OS warnings also. osascript -e 'display notification "hello world!"' - https://code-maven.com/display-notification-from-the-mac-command-line
  • i - Set registry under Yosemite for #29 - #41 (comment)
  • j - Timer, plusz az egyes fázisoknál megjeleníteni a részidőt és a végén a teljeset.
  • k - If the rust install from source test succeeds on HS, ask the user to choose the path: 1: manual dl from gog (recommended/default), 2: install rust (not recommended, 2+ hour long install process warning)
  • l - On Yosemite & Sierra (long time to build), defaults to manual gog DL path maybe.
  • m - Cargo packages need to be uninstalled too.
  • n - Yosemite: HoMM3 intro - set something in regedit (maybe) to skip by default.
  • o - Yosemite: Echo "yes"/"enter" by default to skip the second brew install user input part (note+solution).
  • p - Every var should be properly used/escaped/{}, path-like vars especially!
  • q - Add copyright.
  • r - Cargo path
  • s - sedi
  • t - Check homm3 installers before wyvern gog dl.
  • u - Maybe we could use this for Xcode check (and its timer): https://apple.stackexchange.com/a/219508
  • v - Check if rust and cargo are installed?
  • w - Check wyvern dir is in path, command exists? Maybe check all the others too if it looks like installed and we are not doing a similar check.
  • x - Brew install if Xcode install still running, check if there is a full cli way: /usr/bin/sudo /usr/sbin/softwareupdate -i Command\ Line\ Tools\ (macOS\ Mojave\ version\ 10.14)\ for\ Xcode-10.3
  • y - Xcode temp fix vs https://unix.stackexchange.com/a/408305
  • z - remove h3 icon at simple h3 uninstall too.

Do not install HD and hota on Yosemite atm

Because of the mouse bug. Just let the user know that we are gonna install Homm3 only and also extend the readme with this info.

  • Do not install.
  • Fix readme.
  • Fix end message.
  • Create a manual step to allow the user to install HD&HotA if he/she wants, but do not wait longer for his/her input than 60s.

Get wine $PATH

Atm. we are using a "hardcoded" solution. Try /usr/local/bin/wine or set a variable with which wine?

Parameterized installers

To automatize the full process without any user interaction, it must be great to install the software and also the two extensions with specific args and full silent.

  • HD mod: It looks like working: wine Downloads/HoMM3_HD_Latest_setup.exe /DIR="C:\GOG Games\HoMM 3 Complete"
  • same parameterization at homm3 setup
  • same at hota
  • try parameterize wine also (setting without gecko and mono)

Update game and mods

TODO: update HoMM3 HD and HotA somehow if possible. HotA update is low prio because we can download it too directly.

Wine 6

Sadly, Wine's Mac package maintainer died last year. So we still don't have 6.x packages for Mac. Possible TODOs:

  • Ask them if we can help to build packages.
  • If yes, do it.
  • If not, maybe give it a try to manually build 6.x for some tests.
  • If tests look successful, maybe use it (however with 5.x we are fine).

First and last message

The last message is a mess atm. We should start with 4., and after 1, 2, 3.

#6 must contain that info as well.

We should also inform the user about the possible half hour long process in a first message. Maybe in the OS message in a usual red block?

In-game cursor is missing under Yosemite

Managed to show part of the cursor, by running winecfg from terminal, set a new applicaton h3hota HD.exe using windows XP or windows 2003. Maybe related thread: https://forum.winehq.org/viewtopic.php?t=32909

  • Select original heroes3.exe in the loader and check various video settings.
  • Check "_HD3_Data/Settings/hota.ini" for any related settings.
  • Check if HD mod also breaks the game (missing cursor).
  • Ask help on HoMM3 forum.
  • Try revert old mouse icons.
  • Extend readme with the above (maybe smbdy is OK to play at that way).
  • Create an "exception" to set the enable the "part of cursor" mode with wine config.
  • Create an "exception" and let the user select the "part of cursor" mode.

General game tweaks in .ini files

  • Set/edit few basic values in hota.ini meanwhile install - _HD3_Data/Settings/hota.ini
  • Check regedit for tweaks too.
  • Edit h3hota binary and also copy it, make it default.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.