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

Custom Installer like jQueryUI #202

Closed
sharpdressedcodes opened this issue Jul 5, 2014 · 8 comments
Closed

Custom Installer like jQueryUI #202

sharpdressedcodes opened this issue Jul 5, 2014 · 8 comments
Labels

Comments

@sharpdressedcodes
Copy link

@sharpdressedcodes sharpdressedcodes commented Jul 5, 2014

Have you ever thought about making a custom install like http://jqueryui.com/download/ ? Like I mean, being able to come to a web page, click on downloads, then be presented with all the NOOBS operating systems, which then the user can select which ones to combine into a package, and then download that package.

This way many more operating systems can be added, and it is up to the user to choose which ones they want. You could always have a standard or default one for people who just wanna "get it working".

I would be glad to help out.

@lurch
Copy link
Collaborator

@lurch lurch commented Jul 5, 2014

Funnily enough, that's something I had thought about :)
But it's a longer-term goal, and something I was going to look at once more OSes are available within NOOBS.
Custom-NOOBS-zipfiles will obviously be much bigger than custom-jQuery-zipfiles, and thus impossible to build 'dynamically', so I was thinking about pre-generating zipfiles for all possible combinations (as long as this doesn't end up using too much server disk-space!). So depending upon which OSes the user selects, would determine which pre-generated zipfile they get a download link for (with, like you say, probably a 'recommended selection' or two).

@lurch lurch added the meta label Jul 5, 2014
@maxnet
Copy link
Collaborator

@maxnet maxnet commented Jul 5, 2014

ZIP has its metadata at the end of the file, and it is technically quite possible to generate large .zip files dynamically on-demand with PHP (google: zipstream php)
As long as it is hosted on webserver software that executes PHP scripts in a blocking manner such as Apache, as opposed to software that attempts to execute scripts as fast as possible and buffers all output infinitely to memory (lighttpd and nginx do that, and you run out of memory fast when working with large files)

@lurch
Copy link
Collaborator

@lurch lurch commented Jul 6, 2014

Interesting info, thanks @maxnet !
Not sure I'd be entirely happy trusting code that hasn't been updated in 5 years though (I'm not a PHP programmer, so wouldn't be able to determine if it has any security flaws). And because of the complex way the downloads are served from a mixture of a CDN and load-balancers (http://www.raspberrypi.org/coping-with-christmas-a-guest-post-from-our-web-hosts-at-mythic-beasts/), I'm not sure if it's even possible to use dynamic content. But it's certainly an option I'll investigate whenever I do get round to looking at this in more detail.

@sharpdressedcodes
Copy link
Author

@sharpdressedcodes sharpdressedcodes commented Jul 10, 2014

@maxnet thanks for the advice, I didn't know that was even possible. @lurch I just updated a zipstream repo and have made a pull request: Grandt/PHPZip#30
I can also make a test webpage to test this theory whenever you are ready.

@maxnet
Copy link
Collaborator

@maxnet maxnet commented Jul 11, 2014

Different zipstream than I had in mind.
The add_large_file() method of this one doesn't use temp files: https://github.com/maennchen/ZipStream-PHP/
Does go another pass over the original file to get CRC, which could be cached.

@sharpdressedcodes
Copy link
Author

@sharpdressedcodes sharpdressedcodes commented Jul 11, 2014

That one was updated 8 months ago. You could just make another script to get the crc of each file one time, and as you say cache that. It wouldn't take much modifying.

@Ruffio
Copy link

@Ruffio Ruffio commented Jun 27, 2015

@sharpdressedcodes is this still an issue?

@XECDesign
Copy link
Contributor

@XECDesign XECDesign commented Mar 8, 2018

No activity and no plans to add this in the near future.

@XECDesign XECDesign closed this Mar 8, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
5 participants
You can’t perform that action at this time.