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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Speed up `setting up /etc...' #89

Open
shadowrylander opened this issue Mar 27, 2022 · 3 comments
Open

Speed up `setting up /etc...' #89

shadowrylander opened this issue Mar 27, 2022 · 3 comments

Comments

@shadowrylander
Copy link

Hello! Sorry, it's me again! 馃槄

Is there any way to speed up setting up /etc..., or is it unavoidable with a lot of files and directories to bind-mount?

Thank you kindly for the information!

@talyz
Copy link
Collaborator

talyz commented Mar 27, 2022

Hi! That prompt isn't specific to impermanence. It's still possible that setting up bind mounts and symlinks is what's causing a slowdown when you're activating a new generation, but this would have to be profiled somehow. I don't see any easy way to improve that either - the scripts aren't doing anything that fancy or superfluous. The create-directories script checks the hierarchy of all added directories and files' parent directories, but I don't see any obvious way around that which wouldn't increase complexity immensely.

@shadowrylander
Copy link
Author

Hmm... This might actually tie into my other issue here, whereupon adding /etc/ssh to the persistent directories prevents sshd_config from being generated; is it possible that that might be causing this immense slowdown?

@shadowrylander
Copy link
Author

Also, if no subdirectories are mounted in /persist, such as directories = [ "/directory" "/directory/subdirectory" ];, would it not be possible to parallelize the command, such as using async, since there would be no race conditions?

Sorry if I'm misunderstanding something here!

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

2 participants