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

Make installation process offline #6

Open
pkoscik opened this issue Aug 18, 2022 · 7 comments
Open

Make installation process offline #6

pkoscik opened this issue Aug 18, 2022 · 7 comments
Assignees
Labels
enhancement New feature or request

Comments

@pkoscik
Copy link
Member

pkoscik commented Aug 18, 2022

I think it would be nice if the installation process could be performed offline.

I have no idea how to go about this, probably downloading non-netinstall Debian ISO, and stripping it from useless things.

@pkoscik pkoscik added the enhancement New feature or request label Aug 18, 2022
@GPlaczek
Copy link
Member

It is indeed a good idea, we will also need to find out how to add some other things to the iso like mosquitto since rocketlab guys want to have it installed out of the box

@pkoscik
Copy link
Member Author

pkoscik commented Aug 18, 2022

Disabling networking in the installer still installs base system.

This way we could just pack needed things into an image, and install them in some post installs script for example.
Looking into that


References:
https://wiki.debian.org/DebianInstaller/Modify/CD

@pkoscik
Copy link
Member Author

pkoscik commented Aug 18, 2022

Adding packages should not be hard, we just need to drop them into:

rocket-lag-debian/images/debian/pool/main

before re-creating an iso

@pkoscik pkoscik self-assigned this Aug 18, 2022
@GPlaczek
Copy link
Member

I made some progress on adding apt packages to the iso and I think I have found a better solution than to wget all packages (which would be a pain in the ass for sure).
A better way is to use apt to download debs. To generate a list of all dependencies of the package use (this requires debian-based distro, use docker if needed):

ALL_PACKAGES=$(apt-cache depends --recurse --no-recommends \
    --no-suggests --no-conflicts --no-breaks --no-replaces \
    --no-enhances --no-pre-depends ${PACKAGES} | grep "^\w")

Then to download these packages use: (this one downloads debs to your working directory so make sure to cd before)

(cd $pkg_dir && apt-get download $package)

I tried to add mosquitto this way, but it broke busybox (this was probably caused by libc6 package which is a dependency of both these packages). If you are planing to work with this issue this weekend, consider downloading packages this way.
Also, I will not not have time to work on this issue today, so I will appreciate any progress you make.

@pkoscik
Copy link
Member Author

pkoscik commented Aug 29, 2022

I've had the same issue as above, and not made any significant progress on debugging this. Literally no idea why this happens

@GPlaczek
Copy link
Member

I fixed it but forgot to add a note in the issue, my bad. Check out this branch, it works there

@GPlaczek
Copy link
Member

Rocket lab guys asked as to deliver a working iso before this weekend, we should try shrinking it as much as we can by then.

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

2 participants