request for Minetest for PortableApps on Windows

Post Reply
User avatar
twoelk
Member
Posts: 1391
Joined: Fri Apr 19, 2013 16:19
GitHub: twoelk
IRC: twoelk
In-game: twoelk
Location: northern Germany

request for Minetest for PortableApps on Windows

by twoelk » Post

There have been several suggestions on the PortableApps forums to make a version of Minetest for the PortableApps platform.
A first request from September 2011, naming by now outdated resources, followed by a second from April 2013 that names the still valid addresses for the current version. http://portableapps.com/node/29336
In the Minetest forums this was somewhat discussed for example here: viewtopic.php?pid=44928

This would be an opportunity to use a popular distribution repository that would allow windows users to install the game with a single click. If the Minetest community is able to maintain a git version of Minetest in the paf format this would surely widen the bleeding edge user base on Windows.

The PortableApps Platform is an open-source Windows application that allows Windows users to install a portable environment to any portable device or location. The difference to "other" portable versions is that the PortableApps communtiy tries to force Apps to not leave anything behind on the host machine. including places such as the registry or any personal folders.
http://portableapps.com/
It comes with its own launcher menu. "Apps" provided in the "paf" format can be downloaded with the help of a built-in tool from an online repository.

Several popular open-source games are already available:
http://portableapps.com/apps/games
Others can be found as test releases:
http://portableapps.com/development/test


The way Minetest is organized at the moment it would require 6 installation packets as it seems. This thread for the Minecraft version: http://portableapps.com/node/30573 seems to state that two installation files are needed for a single version. One for the server and one for the client.
If one were to supply a stable (0.4.7) version plus a dev-git version for 32bit and 64bit this would add up to the mentioned 6 files.

I think this would be a great opportunity to make use of a platform that supplies easy to use install and update functions, while the Minetest community would have full control and access to supply the correct program versions.

It would be nice if one of the current windows build suppliers or anybody else could have a look at the issues that such a paf-format version of Minetest might raise and could supply such an official version in the "paf" format for formal inclusion in the official PortableApps repository.

User avatar
rubenwardy
Moderator
Posts: 6281
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
Location: United Kingdom
Contact:

by rubenwardy » Post

Minetest is portable.

User avatar
PilzAdam
Member
Posts: 4026
Joined: Fri Jul 20, 2012 16:19
GitHub: PilzAdam
IRC: PilzAdam
Location: Germany

by PilzAdam » Post

A RUN_IN_PLACE build is probably what you want when you talk about "portable".
Its basically up to the packagers to bring Minetest on this "platform", our license allows that (just like the Linux package maintainers do that too).

User avatar
twoelk
Member
Posts: 1391
Joined: Fri Apr 19, 2013 16:19
GitHub: twoelk
IRC: twoelk
In-game: twoelk
Location: northern Germany

by twoelk » Post

That is not the request!

I allready do run Minetest as a portable version on a portable device. In fact I have never run it in any other way. I have it included in my personal hacky PortableApps menu and in an Asuite menu. I have given the game to others included in an Asuite menu together with tools and other games. I have never made a "paf" version though nore have I ever researched wether the run_in_place version meets all requests for the paf-format.

The requirements for inclusion into the official PortableApps repository are a little higher.
  • The app should not make any changes on the host machine and if it does these have to be deleted or changed back.
  • The apps should use a certain folder structure that keeps the program files appart from the user data, so that updating the app does not touch the user data (such as mods, games and maps)
  • The app is wrapped in an installer that can be executed by the supplied menu and easily intigrates into that and its sorted folders.
Once this is supplied, hence the "paf-format", and some sort of maintainance is assigned, the app may be included in the official repository. Once there, any user of the PortableApps menu may use the intigrated within the menu "search for new Apps" function, check the desired apps in a shown list and can then install all checked apps with one click.

Of course the "paf" files also run on their own and do not need the menu to function.

The reason I suggest this is that I think Minetest could gain users by being added to the easy to use "no worries" repository that allready includes other well known open source games.
Last edited by twoelk on Tue Nov 12, 2013 17:08, edited 1 time in total.

User avatar
sfan5
Moderator
Posts: 3935
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5
Location: Germany

by sfan5 » Post

twoelk wrote:The requirements for inclusion into the official PortableApps repository are a little higher.
  • The app should not make any changes on the host machine and if it does these have to be deleted or changed back.
twoelk wrote:
  • The apps should use a certain folder structure that keeps the program files appart from the user data, so that updating the app does not touch the user data (such as mods, games and maps)
Can be done by changing things in porting.cpp to use a different path_user
twoelk wrote:
  • The app is wrapped in an installer that can be executed by the supplied menu and easily intigrates into that and its sorted folders.
We have some sort of installer..
Mods: Mesecons | WorldEdit | Nuke & Minetest builds for Windows (32-bit & 64-bit)

User avatar
twoelk
Member
Posts: 1391
Joined: Fri Apr 19, 2013 16:19
GitHub: twoelk
IRC: twoelk
In-game: twoelk
Location: northern Germany

by twoelk » Post

I have searched the registry of several computers I have played minetest on and have indeed not found more entries than from other "official" programs in the "PortableApps.com Format™", so that seems ok.

The "PortableApps.com Format™ 3.0" as of 2013-07-26 is described here in detail.

The suggested folder structure is thus:

Code: Select all

AppNamePortable
+ App
  + AppInfo
    + FileTypeIcons
  + AppName
  + DefaultData
+ Data
+ Other
  + Help
    + Images
  + Source
so I guess "minetest/doc" could go into "other/help" while "cache", "client", "games", "mods", "textures", "worlds" and the "minetest.conf" should probably all go into the "Data" folder. Maybe the games that come with Minetest should go into a parallel "games" folder in the "DefaultData" folder. There is an optional [SpecialPaths] section in the appinfo.ini so this could maybe be used to keep some of the Minetest folder structure as it is, if that is better.

I'm not sure how an automatic update process might look. Minetest has changed the folder structure in the past and might do so in the future.

There are a lot of options in the appinfo.ini, AppCompactor.ini and installer.ini that I don't know how they should be set or wether they should be used at all for Minetest. I hope somebody who has a better understanding of how Minetest actually works has a more thorough look at this.

User avatar
Napiophelios
Member
Posts: 1019
Joined: Mon Jul 07, 2014 01:14
GitHub: Napiophelios
IRC: Nappi
In-game: Nappi

Re: request for Minetest for PortableApps on Windows

by Napiophelios » Post

I seen this referenced in the IRC logs and thought I would try it out.

Other than fitting Minetest into the PortableApps format/folder structure (and working on their platform),
I dont see any real benefit for it though cuz Minetest is already "portable".
If there was a way to check/download latest versions, it would be great for keeping things updated;
but I couldnt figure it out.

At any rate, I did manage to make an installer for the latest stable MSVC version that follows their format,
however you wont be able to change anything in the following folders:

games\minetest_game
games\minimal
doc
locale
textures\base\pack

This can be changed of course, I know the Minetest game gets frequent updates so this would be problem for anyone who actually uses something like this.

Minetest_Portable_0.4.12.0.paf

If you try it out I suggest running it once and closing it so that you can see where everything is stored.
The only issues I had when testing was with a custom font I like to use kept crashing the game before it would even open. However just using the default fonts seems to be okay.
This is a very quick rough draft so a lot could stand for some easy improvements I know.

Also the PortableApps.com packager requires the html file so please dont laugh at mine,
I was really sleepy when I made it.

EDIT: the download link has been updated to the newest build
Last edited by Napiophelios on Wed Apr 15, 2015 01:22, edited 2 times in total.

User avatar
twoelk
Member
Posts: 1391
Joined: Fri Apr 19, 2013 16:19
GitHub: twoelk
IRC: twoelk
In-game: twoelk
Location: northern Germany

Re: request for Minetest for PortableApps on Windows

by twoelk » Post

Yay, had a quick glance, seems to work.

You are right, Minetest is portable, that is not the benefit of this.

There have been requests for an update system on Windows and PortableApps has one. Also if it gets accepted, Minetest would be in their repository along with many other opensource games. Not that this is an overly important userbase but we could test different update strategies with this system. After all it is opensource, so for windows we could even use some of their code for our own ideas.

I don't quite yet understand your folder sorting and the cloning of the bin folder at each startup irritates me a little. Will have a closer look later today.

Thanks for giving this a try. Shall I post on the PortableApps forum about this experiment?
Last edited by twoelk on Sat Sep 19, 2015 10:27, edited 1 time in total.

User avatar
Napiophelios
Member
Posts: 1019
Joined: Mon Jul 07, 2014 01:14
GitHub: Napiophelios
IRC: Nappi
In-game: Nappi

Re: request for Minetest for PortableApps on Windows

by Napiophelios » Post

Minetest windows downloads are version specific so your updater will have to know what version its looking for;
I guess so long as it knows the file name though that might not be too hard to do with the nsi scripts.

The "folder-sorting" is just me trying to get minetest to fit into their standardized format so that their platform will recognize it as one of their own.
The Data folder will eventually become too large to manipulate , so I reversed the way their portable launchers generally behave.
This launcher treats the application files like the portable files instead of the user's data.
Keep in mind though, this is just quickie, not much thought put into it....and not exactly the right way to do this.

Developers at portable apps can write the scripts so that the app wont need to rely on such hacky solutions.


I would prefer you didnt post it at portableapps forum,
I dont think my little ghetto portable app would go over very well there. :P

User avatar
twoelk
Member
Posts: 1391
Joined: Fri Apr 19, 2013 16:19
GitHub: twoelk
IRC: twoelk
In-game: twoelk
Location: northern Germany

Re: request for Minetest for PortableApps on Windows

by twoelk » Post

some quick remarks:
  • One cannot keep settings between sessions as you keep recreating the minetest.config (or I'm doing something wrong)
  • If you point screenshots to a folder in the config, this folder needs to exits beforehand, as the screenshot function will not create one and simply fail to save any file.
  • I have several mc worlds in a folder at data/.minecraft/saves worth several gb, so why shouldn't this work for Minetest?
I havn't really dived into this yet but am pretty excited. Will investigate more once I have better possabilities. Am on the move using my portable devices at the moment. ;-P

User avatar
Napiophelios
Member
Posts: 1019
Joined: Mon Jul 07, 2014 01:14
GitHub: Napiophelios
IRC: Nappi
In-game: Nappi

Re: request for Minetest for PortableApps on Windows

by Napiophelios » Post

-the minetest configuration file is saved in the data\bin folder upon close.
I have had no problems with it saving and implementing changes in between gaming sessions
except the font issue I mentioned way back.

-the screenshot issue is with minetest I believe.

-like I said the PA Devs know how to do that kinda stuff with ini files and redirection
its just kinda advanced for me so I use folder manipulation instead.

This was just a hurried amateur attempt,
if you want I will try to redo the script properly

User avatar
twoelk
Member
Posts: 1391
Joined: Fri Apr 19, 2013 16:19
GitHub: twoelk
IRC: twoelk
In-game: twoelk
Location: northern Germany

Re: request for Minetest for PortableApps on Windows

by twoelk » Post

Napiophelios wrote:-the minetest configuration file is saved in the data\bin folder upon close.
I have had no problems with it saving and implementing changes in between gaming sessions
except the font issue I mentioned way back.
oops, my bad
should have used a clean install among other stupid mistakes ;-P
you are right, it works as intended.
Napiophelios wrote:-
-the screenshot issue is with minetest I believe.
yeah, sort of,
nevertheless if you precreate a Screenshots folder within the data folder and edit the entry in the config to "..\Screenshots\" it saves nicely to a folder parallel to the bin folder, which I rather prefer as it keeps the screenshots a little out of the way. (In my own system I even use ..\..\Screenshots\, so that multiple minetest versions point to the same folder outside of the different minetest installations)

I guess the next thing I need to do is describe how to use this.
Oh well might be able to do so later today ...

User avatar
twoelk
Member
Posts: 1391
Joined: Fri Apr 19, 2013 16:19
GitHub: twoelk
IRC: twoelk
In-game: twoelk
Location: northern Germany

Re: request for Minetest for PortableApps on Windows

by twoelk » Post

So as promised here is a little "How To" for those not familiar with the PortableApps.com project.

First of all Minetest is allready portable! The windows version is allready portable and self containing by design as it is built as run_in_place version. There is nothing you need to change to make any of the windows versions offered for download portable.

So to get an idea of what "PortableApps.com" (not portable apps <- mind the gap) is about think of it as an app store of sorts focused on open source and freeware with an integrated download, installation and update system. Besides using single apps they also offer some common library systems such as fonts or for example a portable java version, that lets you run java apps from within their system without having to care whether java is installed on the host system or not.

To get an idea lets integrate this version of minetest into their menu-system. To get started you will need to download " The PortableApps.com Platform™ " from sourceforge.
Install the platform to a folder or device of your choice and start it by clicking on the start.exe if it does not start by itself.

Once started the platform will search it's /PortableApps folder for programs. If it doesn't find any it may automatically try to connect to the internet to retrieve a list of available apps ready for download. You can trigger this manually by clicking on the "Apps" button on the right side, choosing "Get more Apps..." and then picking a sorting method for the list.
As there is no official minetest version for this yet you will not find minetest among the many games they offer for download.

To install an app manually click on the "Apps" button again and choose the menu entry "Install a New App". Assuming you have allready downloaded the "paf" file, provided by Napiophelios in an earlier post, now navigate to the folder you have extracted the "Minetest_Portable_0.4.12.0.paf.exe" to. Note you need the .exe not a .zip file. After the app has been installed you should now see a minetest link in the big white field on the left.

Click on the link once to start the program or right click on it to see a context menu that also includes a link to a help file.

User avatar
Napiophelios
Member
Posts: 1019
Joined: Mon Jul 07, 2014 01:14
GitHub: Napiophelios
IRC: Nappi
In-game: Nappi

Re: request for Minetest for PortableApps on Windows

by Napiophelios » Post

Okay I made some changes and recompiled the launcher.

-debug.txt is now preserved along with the minetest.conf file in the bin folder
-default settings include a screenshot folder in the user data folder
-if the games folder is present in the Data folder, no default data will be transferred

Minetest-stable MSVC 32bit Portable


Note: I installed and tested Minecraft and apparently it allows the user to decide where to keep its appdata; Minetest does not.
So the current script is the only solution I have at the moment. I will study the nsi site this weekend and see if I can find a better way to handle this userdata buisiness.

hajo
Member
Posts: 606
Joined: Thu Oct 13, 2016 10:45
Location: DE
Contact:

Re: request for Minetest for PortableApps on Windows

by hajo » Post

Napiophelios wrote:Okay I made some changes and recompiled the launcher. ..
Minetest-stable MSVC 32bit Portable
That's still v0.4.12. So, no "advanced settings" in mainmenu, no minimap, etc.
Minetest is not yet listed at Portableapps/games.
So, what is the current state of affairs ?
Is there a script to make such a portable-release, or a make-target ?

Having Minetest listed and available on Portableapps would make it much more well-known.
I think that should be a priority for the upcoming version 0.4.15.

Also, I think there are some tweaks that need to be done::
* F1 - Help (maybe just an alias to ESC-to-pause-menu). HUD on/off can use any other key.
* Readme.txt in main directory, directed at typical users.
** There are several readme-files, with too much technical info - better rename/reorganize.
** User-Redme needs to mention mods, that minetest is just a game-engine,
and that the mods define what the user-experience will be.
** Also, a word about "game"=scenario/setting and "world"=savegame.
* Urgently needs to include some game/mod with mobs in this download.
Otherwise, average users are fairly sure to get disappointed.
(As in, crafty users rush to build a home, and then no zombies show up...)
** What is the current favorite (and most stable + lightweight) game/subgame ?
** How about TNG ?

Also, is there a collection of 'nice' seeds for the different mapgens ?

User avatar
twoelk
Member
Posts: 1391
Joined: Fri Apr 19, 2013 16:19
GitHub: twoelk
IRC: twoelk
In-game: twoelk
Location: northern Germany

Re: request for Minetest for PortableApps on Windows

by twoelk » Post

The folder management for this is at the moment very hacky as the paths are hard coded into the engine and thus the launcher moves folders around on starting and closing the program; this could become very time consuming with a large map and when running from a slow mobile device. This would have to be changed within the engine before this would be presentable :-(

A simple standalone modshop and modupdater as for android might be the way to go.

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest