PHPInstallMiiRepo

Discussion in '3DS - Homebrew Development and Emulators' started by ChaosJester, Mar 6, 2016.

  1. ChaosJester
    OP

    ChaosJester Member

    Newcomer
    27
    8
    Jun 16, 2015
    Hi All,

    Posted this to the InstallMii thread but thought it should get its own so we don't clog up their thread.

    Myself and @LiquidFenrir have been working on a front end to the InstallMii repo homebrew app.

    I have made a new version, PHPInstallMiiRepoAdmin that adds a lot of functionality.

    Requirements:
    • InstallMii - Available here https://gbatemp.net/threads/wip-installmii-graphical-repository-downloader.406097/
    • A webserver running apache and PHP, this script is no longer OS dependent so Windows or Linux is good
    • PHP >= 5.5 for Admin version
    • MySQL for Admin version
    • OR PHP SQLite3 for SQLITE version
    • A text editor to do some very minimal coinfig, Admin version has an installer so minimal manual config is required
    • FTP client to upload files to server
    • Homebrew apps on your server MUST be in the /3ds/ directory!
    There is a very basic index page that will contain a link to the repo.list file.

    The repoupdate.php can be run either on demand or by cron/scheduled task if wanted. The script will create the required package.list in each directory under /3ds/ and also create the packages.json file in the root of the repo. If there is no smdh file, this will not get picked up by this script. If you have any homebrew apps that do not include an smdh file, there are many tools out there to make your own.

    The Admin version has a database backend that will store your repo and package details and will create entries for all folders, regardless of the existence of an SMDH file. It will enter an entry with no package name, so that must be entered manually.

    Basic script - https://github.com/chaosjester/PHPInstallMiiRepo/releases
    Admin (MySQL version) - https://github.com/chaosjester/PHPInstallMiiRepoAdmin/releases
    Admin (SQLite version) - https://github.com/chaosjester/InstallMiiRepoAdmin/releases


    Basic Script Install instructions:
    • Hit the link above and grab the latest release
    • Unzip
    • Edit reposettings.php to your liking
    • Upload to webserver
    • Create 3ds directory if not already done
    • Upload Homebrew apps
    • Either go to http://yourrepoaddress.com/repoupdate.php to create all the files or set up a cron/scheduled task to run "php -q /path/to/your/repo/repoupdate.php"
    • Check out the index page at http://yourrepoaddress.com/
    • Download repo.list and place on your 3DS' SD card in the InstallMii directory
    • Check out your repo!
    Admin (MySQL version) install instructions:
    • Download latest release
    • You might need to create SQL database on your server, along with a user that has access to create tables and modify tables, though the installer may create them for you
    • Upload to webhost
    • Go to http://yourrepo.com/, you will be directed to the install page
    • On the install page, follow the directions to create the database and user
    • Head back to http://yourrepo.com/admin and ensure you can log in
    • Create additional admin accounts if required, otherwise it is advised to delete the /admin/install directory
    • Once in, the interface is pretty straight forward.
    • Once you have generated all of the files needed, download the repo.list from the home page and place on your SD card
    Admin (SQLite version) install instructions:
    • Download latest release
    • Upload to webhost
    • Go to http://yourrepo.com/, you will be directed to the install page
    • On the install page, follow the directions to create the database and user
    • Head back to http://yourrepo.com/admin and ensure you can log in
    • Create additional admin accounts if required, otherwise it is advised to delete the /admin/install directory
    • Once in, the interface is pretty straight forward.
    • Once you have generated all of the files needed, download the repo.list from the home page and place on your SD card


    Current issues:
    • Author text displays incorrect if there are any non-alphanumeric characters, though this may be an issue with InstallMii (Pretty sure it is)
    • If the SMDH file is not the same name as the directory it is in, it is not scanned or scrapped (Working on that)
    To do's:
    • Let me know what you might want!
    Credits:
    • @simonepsp for creating InstallMii
    • @LiquidFenrir for the awesome PHP skills (ie, pretty much creating everything from scratch based on a few concepts I came up with in a totally convoluted crazy way and making them easier and platform independent)
    • @ChaosJester for core concept and index page, Admin version development
     

    Attached Files:

    • repo.png
      repo.png
      File size:
      832.2 KB
      Views:
      64
    Last edited by ChaosJester, Apr 13, 2016
    Brawl345 likes this.
  2. Xanthe

    Xanthe Sith

    Member
    799
    505
    Dec 23, 2015
    United States
    Very nice! I'll check this out!
     
  3. LiquidFenrir

    LiquidFenrir Advanced Member

    Newcomer
    68
    30
    Jan 15, 2016
    France
    To make it public: since @simonepsp shows no sign of life/update to installMii, I'm working on a clone in Lua with lpp-3ds.
    Why Lua? Because I suck at C, and it comes with some bonuses: native zip extraction, smdh info extraction (including icon) and forced open-source
     
  4. GalladeGuy

    GalladeGuy Freeze Kirby :3

    Member
    2,536
    2,497
    Oct 28, 2015
    United States
    You're a bit late on that. I've been working on my own for the past 2 weeks. :P
    https://github.com/GalladeGuy/Downlow
     
  5. ChaosJester
    OP

    ChaosJester Member

    Newcomer
    27
    8
    Jun 16, 2015
    Brawl345 likes this.
  6. ChaosJester
    OP

    ChaosJester Member

    Newcomer
    27
    8
    Jun 16, 2015
    OP updated, V1.0 of the new Admin version has been released. See op for more info
     
    Brawl345 likes this.
  7. Suiginou

    Suiginou (null)

    Member
    565
    588
    Jun 26, 2012
    Gambia, The
    pc + 8
  8. ChaosJester
    OP

    ChaosJester Member

    Newcomer
    27
    8
    Jun 16, 2015

    Is that a suggestion or just a flat out criticism?

    I have not worked with sqllite before, but I will look in to implementing that.
     
  9. ChaosJester
    OP

    ChaosJester Member

    Newcomer
    27
    8
    Jun 16, 2015