Commit graph

224 commits

Author SHA1 Message Date
Jools Wills
14cc370643 cosmetic - trailing whitespace 2016-09-27 23:05:40 +01:00
Jools Wills
15a6044227 cosmetic - missing newlines at end of files 2016-08-27 12:06:37 +01:00
Jools Wills
e8b03967de packages - clean in rp_installModule before source build 2016-08-12 17:58:44 +01:00
Jools Wills
e385457a7b cosmetic - remove trailing spaces in copyright 2016-08-11 03:23:30 +01:00
Jools Wills
5f3503db2a packages - clean up if a sources function returns errors 2016-08-07 10:09:36 +01:00
Jools Wills
7865f07128 packages - don't use fatalError which does a hard exit but return 1 when module doesn't exit 2016-08-06 17:07:58 +01:00
Jools Wills
3d0575c9ed packages - instead of removing dir on install_bin create an error (dir will be removed later) 2016-07-31 23:46:48 +01:00
Jools Wills
47f85230fe packages - less verbose package removal 2016-07-27 15:29:19 +01:00
Jools Wills
565fef8040 packages - update comment about looking up id 2016-07-24 14:09:06 +01:00
Jools Wills
546f520c93 packages - don't need the check here - it was an optimisation, to avoid calling for non existant function but we look up ids faster now in the rp_callModule function 2016-07-24 14:07:49 +01:00
Jools Wills
de01fb6350 packages - clean was not being called when doing a complete source install with no parameters 2016-07-24 14:05:12 +01:00
Jools Wills
8d0b93cadf packages - don't remove md_inst when installing as there are still too many cases of existing configs in md_inst for some emulators 2016-07-20 20:42:31 +01:00
Jools Wills
116a622d15 packages - be silent when running update hooks 2016-07-07 14:50:17 +01:00
Jools Wills
c7d055920f don't remove md_build when getting sources / can clean if needed manually
use rmDirExists
2016-06-27 15:26:42 +01:00
Jools Wills
dcab7f7cc8 clean $md_inst before installing - this has been planned for sometime, but there were too many cases where
install folders were used for user data. We have now moved almost everything to the config area, but there may be
a few cases to check/workaround (eg gpsp)
2016-06-27 15:11:38 +01:00
Jools Wills
a6c6f239aa variable name / quoting 2016-06-16 00:36:40 +01:00
Jools Wills
67e335e1e2 modules - _update_hook functionality -
* add _update_hook function support - these get run on updating retropie-setup.
 * add update_hook functions for modules so they show up as installed on retropie-setup 4.x - eg modules that
   previously just apt-get installed a package.
2016-06-15 20:17:21 +01:00
Jools Wills
88ea0442d6 packages - use associative array to manage id to idx mapping to save searching through the id array 2016-06-15 20:17:21 +01:00
Jools Wills
bb1fa78803 make $md_inst before calling install_bin to simplify modules 2016-06-15 20:17:21 +01:00
Jools Wills
850e8c0852 cosmetic 2016-06-10 18:26:22 +01:00
Jools Wills
a2e2c6606e add help function to modules for commandline use 2016-06-10 17:45:20 +01:00
Jools Wills
a7c0a6103b help improvements
* get rid of _INFMSGS and instead have a rp_module_help field with information in.
   this can then be displayed in the setup menus, and not just after configuring.
2016-06-10 17:32:47 +01:00
Jools Wills
7f10751ce4 fix up rp_hasBinary on source only platforms when a module has an install_bin 2016-06-09 18:02:57 +01:00
Jools Wills
a2f3b239cb modular -
* check return code of pushd when removing module
 * reorganise the pushd checks
2016-06-07 13:01:24 +01:00
Jools Wills
f6305543fc make sure we are in the right folder when calling configure on module removal 2016-06-07 13:01:24 +01:00
Jools Wills
115dbf0205 modular changes -
* basic remove support for modules - uses the existing configure function but sets md_mode to remove, which is used by
   addSystem to remove systems and moveConfigFile/moveConfigDir to remove symlinks. Will not remove any configs from $configdir
2016-06-06 22:08:36 +01:00
Jools Wills
889f8ecdfa Initial rewrite of the setup menu, including per package/module management
* rp_module_menus is no more - instead use rp_module_section with one of
   - core (core packages)
   - main (main packages - which will be installed by default in the image)
   - opt (optional packages)
   - exp (experimental packages)
   - driver (driver packages)
   - config (configuration packages / tools)

 * The setup menu organises the data based on the above sections. more could be added in the future if needed. Packages (internally modules), can be added / configured / removed individually, or as entire sections.

 * The setup menu will automatically detect if a binary is available to be installed. the nobin flag is no longer needed. modules that install directly from binary via aptInstall or via a prebuilt binary need to use an install_bin_ function instead of install_

 * rp_module_section of type "config" will have the "gui_" function called first if it's available, otherwise a standard depends/sources/build/install/configure will be called

 * configure is no longer used for "gui" configuration function - use gui_ instead. Had already started to move to this before, but now it is required.
2016-06-06 22:08:36 +01:00
Jools Wills
bcf26fb790 remove rp_registerFunction as it isn't used outside of the rp_registerModule code anyway. 2016-06-06 22:07:06 +01:00
Jools Wills
b5ac4fa085 don't display module functions that start with an underscore (they are considered private) 2016-05-14 06:24:58 +01:00
Jools Wills
1a56fbd433 use numeric ids 300+ for ports so we can have more than 50 ports. move supplementary to 800+ range 2016-04-03 18:59:39 +01:00
Jools Wills
70543d100d when installing files returned from a module with md_ret_files use -f to force it, else cp might refuse to overwrite a running executable such as ES (installing from binary is ok as tar doesn't seem to care). thanks to Herb for the heads up 2016-03-26 03:09:15 +00:00
Jools Wills
9e3d573b13 new module variable md_conf_root that points to $configdir or $configdir/ports for ports - for ports in the libretro folder, this is set manually with setConfigRoot, and for "love" which is a ES system, but lives in ports (so configs go in $configdir not $configdir/ports to match the roms folder structure)
adjust ports configs / symlinks to $configdir/ports and move old configs to new location (when calling addPort)
fix up some paths in a few experimental modules (wolf4sdl / sdlpop)
2016-03-25 20:13:02 +00:00
Jools Wills
78604b7b5c do not return 1 when calling non existing functions as it breaks for modules without depends etc when calling with no parameters - need to do this differently 2016-02-22 21:56:36 +00:00
Jools Wills
ddde631280 always allow "remove" action on modules, and show an error when an action doesn't exist (and return 1) 2016-02-22 20:47:07 +00:00
Jools Wills
f9d066d345 remove install folder for modules when issueing "remove" command 2016-02-22 14:52:27 +00:00
Jools Wills
b006dc3758 fix action wording when removing dependencies 2016-02-22 14:00:51 +00:00
Jools Wills
3700ac5cd1 add the ability to remove the dependencies for a module - by doing ./retropie_packages.sh module depends remove
it will remove all direct dependencies, and then remove any of those package dependencies with autoremove - including configs
if a package was installed before, it will be removed if listed, so this isn't a feature to "remove everything that retropie
installed" but is still useful for dependency testing etc
2016-02-22 12:19:30 +00:00
Jools Wills
825c480be9 rename fn_exists to fnExists and move to helpers as may be needed in modules 2016-02-05 00:20:50 +00:00
Jools Wills
25c95ca1f7 remove unused variable 2016-01-04 03:49:11 +00:00
Jools Wills
c6423c753d use isPlatform for platform flag checking so we can do !rpi or !odroid
disable rpi emulators on odroid
2016-01-04 03:49:11 +00:00
Jools Wills
c9deccfb4d use distro/platform for archive creation to match our server file structure 2015-11-07 15:17:57 +00:00
Jools Wills
f090421b6b create binaries in additional subfolder for os version 2015-11-07 15:12:35 +00:00
Jools Wills
d7f843d473 copyright sp / minor wording tweak 2015-10-12 00:09:22 +01:00
Florian
db0dd30692 CHG: Updated copyright information. 2015-10-11 21:03:16 +02:00
Jools Wills
e2b7b66275 wrong variable in error messages 2015-10-04 22:51:09 +01:00
Jools Wills
d4afca8a4d show install_bin function in retropie_packages.sh function list 2015-09-22 15:09:06 +01:00
Jools Wills
752a20516e be verbose about module actions other than the preset install/build/etc 2015-09-20 20:17:52 +01:00
Jools Wills
0531b34bc1 as we have additional package functions it would be useful to list them all. The changes here allow that by using compgen builtin. It does mean that functions will be listed alphabetically, but it means we can now see all the custom functions via retropie_packages.sh 2015-08-01 18:32:39 +01:00
Jools Wills
84a505ff31 correct path in message when no directory exists when creating binary archives 2015-06-29 15:32:03 +01:00
Jools Wills
fee0182caf was checking for the wrong folder before creating tar in rp_createBin 2015-06-23 05:07:22 +01:00