Comments (6)
Is this not a feature request for how alot of downstream distribution are doing this with "live" usb/cd ?
Basically you create a image via mkosi, dd it to usb, boot the usb then run something live-cd-to-install.
Could perhaps be a switch that simply adds type ( path? ) units and install to hardrive script run once at bootup to mkosi.extra which then would get build and placed on the image itself?
from mkosi.
@johannbg well... I don't think this is the same thing. Writing directly on the usb device is good for not having to create a separate .raw image just to dd it later to a usb device...
I currently workaround that by estimating a minimal size for my images (usually 2 ~ 5 GB depending on the distro), dd it to the usb device and then resize the last partition (https://github.com/lucasdemarchi/toolbox/blob/master/mkosi-resize). See also #239 - and see @poettering's answer regarding x-systemd.growfs
which is already available in systemd since version 236.... that could be adopted here.
But supporting a physical device would be nice, too.
from mkosi.
I think this is now resolved as mkosi uses systemd-repart. I was able to flash an SD card using mkosi from main branch with no issues.
from mkosi.
Can you elaborate? This issue is about having mkosi write directly to a block device, which we don't really support yet. I guess it might work if you point the output file to the block device but I would expect some rough edges.
from mkosi.
I guess it might work if you point the output file to the block device
Yeah, that's what I did, mkosi build --output /dev/mmcblk0
, which worked for my use case.
I would expect some rough edges.
I see, nevermind then.
from mkosi.
I'm going to close this one, as supporting physical devices in mkosi is not trivial. Instead, you can ship a set of systemd-repart definition files with your image and then you can run systemd-repart --image <image> /dev/xxx
to deploy the image on the physical device after running mkosi. The image can be made minimal and systemd-repart will take care of growing the partitions when deploying to the actual device. With the growfs partition flag enabled systemd will automatically grow the filesystem to match the partition size on boot as well then.
from mkosi.
Related Issues (20)
- Add proxy settings
- [Match] sections ignored in mkosi.conf.d directories nested in mkosi.images HOT 2
- mkosi initrd fails on stale pacman sockets
- unshare --user --map-root-user mkosi qemu fails
- `mkosi-local.sources` not set up inside `mkosi.prepare.chroot` HOT 3
- Specifier for the image name (as used in `Dependencies=`)
- $MKOSI_CONFIG file is empty
- Example on building Arch based image with packages from AUR? HOT 2
- `ExtraTrees=` via `InitrdInclude=` incorrectly resolved HOT 2
- docs/bootable.md: Ubuntu example causes `Setting Repositories should be configured in [Distribution], not [Content].`
- Installing bootable Debian sid fails with `depmod: 1: exec: depmod: not found` HOT 5
- FileNotFoundError: [Errno 2] No such file or directory: '~/.cache/mkosi/mkosi-workspacees02trw6/root/etc/machine-id' HOT 6
- Recommended way to configure networking?
- Using `RuntimeSize` results in build failure HOT 5
- /var/lib/dpkg/available does not exist and causes errors when installing packages using apt in image HOT 1
- `RuntimeSize=XG` does not result in image file of size X G HOT 4
- Link to mkosi.systemd.io is HTTP and HTTPS is not enforced HOT 2
- Clamp mtime to `$SOURCE_DATE_EPOCH`
- Ubuntu builds don't use the specified Mirror= for security patches HOT 9
- Grub module linuxefi missing on debian based systems HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mkosi.