Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Source / Contributing? #2

Closed
john-parton opened this issue Aug 20, 2021 · 19 comments
Closed

Source / Contributing? #2

john-parton opened this issue Aug 20, 2021 · 19 comments

Comments

@john-parton
Copy link

How is this image actually built? Is the source available so that I can tweak things or contribute?

Thanks.

@eduardofilo
Copy link
Owner

eduardofilo commented Aug 20, 2021

You are right.
I made the image basically by hand installing these pieces:

  1. Stock firmware of RG280V.
  2. OpenDingux Beta update.
  3. Cleaning on partition 2 (user space) to remove ports and apps that were not working. Also the huge swap file that is not active on ODBeta.
  4. RetroArch installer with this installer and this configuration.
  5. SimpleMenu.
  6. Some standalone emulators and apps like Commander and Py Backup.
  7. xMAME fixing file permissions and installing this settings interface.
  8. Finally I integrated some scripts to expand SD1 partition and to create folder scaffolding on SD2.

I plan to develop some scripts to facilitate the publishing of updates. When I have organized it a bit, I will publish all in this repo together with the files of points 4 to 8 so you can reproduce my steps.

@john-parton
Copy link
Author

Sounds good.

I believe it's possible to directly build OpenDingux Beta images using the buildroot, versus building an update OPK.

@eduardofilo
Copy link
Owner

To insert all the pieces in Buildroot would take a long time, at least with my skills. It would be interesting, but I definitely don't have that much time.

@anderbubble
Copy link

I would also be interested to contribute. @john-parton, do you have a pointer to documentation for how to build od-beta with buildroot? I've found it difficult to find documentation on its build process, too.

@john-parton
Copy link
Author

@anderbubble

Use a Linux machine or virtual machine for building. (Or WSL if you really want.)

Clone this repo: https://github.com/OpenDingux/buildroot

Run

CONFIG=gcw0 ./rebuild.sh

it will build everything and output the new OPK.

@anderbubble
Copy link

@john-parton ah, fair enough. I was hoping to be able to build something that could entirely replace the original image from scratch, rather than something that would have to be applied to it; but if we could get @eduardofilo's changes rolled into an OPK that'd be a win on its own.

@eduardofilo if you could provide some more specific detail about your steps, I would be interested to try to help modify the buildroot. The scripts you're already talking about would probably be precisely that. :)

@eduardofilo
Copy link
Owner

I've already figured out how I'm going to do the automated build system for the image, but it will take a while to assemble. But it will be with scripts, not with Buildroot.

@gladel
Copy link

gladel commented Aug 25, 2021

Which SimpleMenu opk to choose? SimpleMenu OD or SimpleMenu OD-BETA?

@gladel
Copy link

gladel commented Aug 25, 2021

Thank you for Adam. Found out you released 1.1 and mine is on 1.03. Should I reflash again with this new image? Perhaps you have an opk for a more streamlined update?

@eduardofilo
Copy link
Owner

The SimpleMenu installed in Adam is OD-Beta version.
The v1.1 version includes the latest one (v10.0).
I have answered to the last question here: https://github.com/eduardofilo/RG350_adam_image/blob/master/README.md#faq

@eduardofilo
Copy link
Owner

I have uploaded the scripts that I use to version control the image. Files build.sh and flash.sh in manual_build directory.
It is a very sloppy method, but with a little order it works for me. I plan to create a series of scripts to assemble the image from its parts, to automate the process and avoid errors, but it will take time.

@eduardofilo
Copy link
Owner

eduardofilo commented Aug 26, 2021

The process would be as follows:

  1. Install previous version in a SD with flash.sh script.
  2. Make changes, either on booted system or directly on the SD with my Linux machine.
  3. Consolidate changes making a versioned dump with build.sh script.

In the build.sh script there are a number of parameters:

  • P1_MOUNTING_POINT: The path on my system to partition 1 when mounted.
  • P2_MOUNTING_POINT: The path on my system to partition 2 when mounted.
  • ZERO_FILL: If fill the free space with zeros (to better compress).
  • INSTALL_ODBETA_MODS: If download, unpack, modify and repack ODBeta distribution.
  • ODBETA_VERSION: ODBeta nightly build version used.

At the end of build and flash scripts, I reinstall RG280V kernel because it is the device that I use to develop, so I don't have to install it manually. Also I remove the file flag to resize the SD card, so the image always have the same 3600MiB size.

@john-parton
Copy link
Author

I'll see if I can run the build script on my machine. If I need to make any modifications, I'll submit a pull request.

@john-parton
Copy link
Author

Are there instructions on how to build P2?

@eduardofilo
Copy link
Owner

I don't understand what you mean, sorry.

@john-parton
Copy link
Author

Any updates on how to build an image?

I want to build a version of this for the RS90. https://opendingux.net/opendingux/2020/10/04/opendingux-release-20201004.html

@eduardofilo
Copy link
Owner

I started the work but I still have a long way to go.

@eduardofilo
Copy link
Owner

I can finally consider this issue closed. As of commit f600bfd all the content of the image is inside this repository, so it can be built from source without relying on a previous installation on a microSD.
Now the Readme in the repository focuses on the build of the image. All documentation on the use of the images provided in the releases has been moved to the wiki section of the repository.

@anderbubble
Copy link

Great, @eduardofilo! Thank you for all the hard work!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants