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

Rewrite some or all of menu.sh #33

Open
Slyke opened this issue Apr 21, 2020 · 7 comments
Open

Rewrite some or all of menu.sh #33

Slyke opened this issue Apr 21, 2020 · 7 comments
Labels
enhancement New feature or request

Comments

@Slyke
Copy link
Collaborator

Slyke commented Apr 21, 2020

Rewrite some or all of menu.sh to allow for more advanced configurations, and automated deployments.

Consider using python or node.
Consider having some of the deployment done inside docker containers so that node and python does not need to be installed on the host system.

@robertcsakany
Copy link
Collaborator

+1

@877dev
Copy link

877dev commented Apr 21, 2020

Rewrite some or all of menu.sh to allow for more advanced configurations, and automated deployments.

I think the appeal of this project is that it's simple for most people to install and setup, we must be careful not to make it too complex and niche.

Just my opinion.

@Paraphraser
Copy link

+1 on 887dev’s comment

@Slyke
Copy link
Collaborator Author

Slyke commented Apr 22, 2020

Yep, totally agree. I don't mean to say I'm going to write a full application around it. Maybe just break it up a bit so that it is easier to manage the features being requested. I think it will make more sense to have a main menu file, but then have the different menu items broken into separate files.

Install menu would be it's own file that is imported at run time so that it's seamless for example. Any containers that have advanced settings, like PiHole, NodeRed etc would also have their own file too. We currently have 2 bittorrent clients requested to be added, and adding lots of containers to the menu would make it long and a pain to find any particular thing, so could break it up into categories for example.

Another example is Yaml merging. It would be difficult at best in bash, but in python is relatively easy. Issue is that it requires python on the base system, but it's a super useful feature for templating the docker-compose file, and all the containers. Python is installed on the host system by docker-compopse

Still thinking about what's best, and gives the most control for those who want it, but is still easy for those who just want to see a menu and do 1 click installs type of thing. The code has to continue to have a low barrier of entry so that it is easy for those new to the community who want to to expand on the functionality and submit PRs of their own. That will mean the syntax and code complexity will remain easy (possible verbose to avoid mental decompiling overhead) too.

@Slyke Slyke added the enhancement New feature or request label Apr 22, 2020
@UnaKarlsen
Copy link

Something that occurs to me would be to have split the menu.sh into a component that just installs docker, then have the rest broken out into a stand-alone docker container. This way, each time the menu is called, it can pick up the latest menu container(if desired), and all dependencies for the menu are contained in the container so do not pollute the host OS.

Please forgive me if this ideas has already been suggested as I only found the project today.

@ukkopahis
Copy link

A simple Python virtualenv prevents polluting of the host OS with python dependencies.

@pierreh
Copy link

pierreh commented Aug 8, 2023

Menu is currently not working with python 3.11 so I think it would be great to simply run the menu inside a docker container.

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

No branches or pull requests

7 participants