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

Version 1.0 changes #51

Open
pauldotknopf opened this issue Apr 26, 2020 · 6 comments
Open

Version 1.0 changes #51

pauldotknopf opened this issue Apr 26, 2020 · 6 comments

Comments

@pauldotknopf
Copy link
Member

Hey guys, I know there hasn't been a lot of activity here. I consider this project to be "done".

BUT, improvements can be made.

First, I want to change the scope of this project. Currently, Darch is responsible for building and integrating with your local GRUB install. I'd like to change that to only be responsible for the GRUB portion.

  1. Removing darch recipes build - They were great, but there were many nice-to-haves needed to bring it on par with what you'd expect from traditional docker build -f Dockerfile builds. I switched my personal recipes from darch recipes build to docker build (here) and it worked out great! Let's remove that concern from Darch.
  2. Make apt-derived solutions officially-supported (Ubuntu/Debian), moving Void/Arch to community-supported - Arch is currently working great, but there is an outstanding bug in Void that I don't have the bandwidth to address. Since I'm not personally using either Arch or Void, I'd like to rely on the community a little here. The only thing that really has to be managed is the initramfs scripts.
  3. Support for persisted boots. - A temporary boot is a great feature, and I will likely continue to use it primarily, but there are rare times when I would like changes made to my OS to persist reboots.
  4. Support either docker or containerd for image storage. Instead of treating darch as the storage mechanism for images, I'd like to make it rely on containerd (current) or docker instead. That means darch stage upload <image-name> would have something like a --docker or a --containerd flag. In each approach, the workflow would be:
    a. Check local (docker|containerd) for .
    b. If it doesn't exist, pull the image.
    c. Extract image for squashfs/rootfs integration into GRUB.
    This will allow for a seamless docker build . -t my-image && darch stage upload my-image.

Thoughts? I'm not sure when I'll get to this, but these are the last remaining buttons before I really call this project complete.

@peterwilli
Copy link

I still use Darch as my main workstation having moved from NixOS and I never been more pleased. I like the idea to use Docker instead for recipes, it opens the world to a lot more supported images. Porting recipes to Docker should be trivial, I see that easily possible with mine.

I don't know about persisted boots, I'm not really into that kind of stuff, I just mount /home to a image so that my documents are persisted.

@pauldotknopf
Copy link
Member Author

I still use Darch as my main workstation having moved from NixOS and I never been more pleased.

Thanks for the kind words!

I don't know about persisted boots, I'm not really into that kind of stuff

You won't be impacted by that feature. The only change you'll see is the move to Dockerfiles for building.

@peterwilli
Copy link

You won't be impacted by that feature. The only change you'll see is the move to Dockerfiles for building.

I wasn't thinking it would be, just sharing how I managed persistence. In any case, I can't wait for Dockerfiles to be implemented! I was thinking of this too, especially when Ubuntu 20.04 came out, which I would understand could now be done with a Docker base image, right?

@pauldotknopf
Copy link
Member Author

The base images were always provided via docker. Also, there is a new base images for Ubuntu 20.

https://hub.docker.com/layers/godarch/ubuntu/focal/images/sha256-7be5f481b7189cbc8e55b65b9c4043a488ac19e18b9960fb5bebd494a0094757?context=explore

I started upgrading, but I'm waiting for some other packages to get official support.

@kwshi
Copy link

kwshi commented Oct 10, 2020

I'm a current NixOS user strongly considering trying Darch! I have a few questions that I couldn't seem to find the answers for, it'd be lovely if you could help--

  • "there is an outstanding bug in Void"--what's that bug? I can't seem to find any GitHub issue by searching for "void".

  • re. building with Docker--the current website still documents building with darch and specifying recipes using config.json (and the "advanced" pages are mostly "TODO"), but your personal recipes are built with Docker; I'm wondering if there's any documentation/guides/blogs/forums/Discord/Gitter/etc. where I can find some help on figuring out how to work with darch.

Thanks so much for the cool work on darch; it seems really cool and I'm excited to try it!

@aaroncwhite
Copy link

I'm a little late to the party here. I've been using darch since January on three different computers all inheriting from a common base set of recipes. I love it!

I'd love the ability to do a bit of grub menu customization. I saw someone in the issues a while ago who moved the darch hook to 06_darch which places the stages first. In addition, I have a final script that does a bit of rewriting the grub.cfg file to put whatever stage I want as default first and nest the rest into a "Darch Stages" submenu similar to how Ubuntu manages multiple kernel options in grub. This lets me know that on a reboot, I'm moving into the latest stage I intentionally deployed as default and I can still select all of the other options if I want. Just another idea for a 1.0 release.

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