Received: from ncopa-desktop.lan (ti0056a400-0541.bb.online.no [85.166.229.33]) (Authenticated sender: ncopa@alpinelinux.org) by gbr-app-1.alpinelinux.org (Postfix) with ESMTPSA id 9AFA3224094; Fri, 6 Oct 2023 15:48:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alpinelinux.org; s=smtp; t=1696607331; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=YJgnVRfh5VE/LPe7ttDYchc8BWGRDAmncdClaXCgYqA=; b=JrChsZZb2abU2WphzSVng6XpCMEdfuE7oTa0JFEYtGVTG4hKISLh4HR49lFb3hN9bk2Ypg uJpkTReIORMjrLNcQLc2EgZDDb/fQp9mHCMeFbd+fg2RU+YTUUhUJRkO3J0DRLKG4vC+td eVlyvlR/lfatotgJDpvU6qdO73MuFw8= Date: Fri, 6 Oct 2023 17:48:49 +0200 From: Natanael Copa To: Guido Trotter Cc: ~alpine/devel@lists.alpinelinux.org Subject: Re: Proof of concept alpine non-interactive autosetup Message-ID: <20231006174849.6a309b40@ncopa-desktop.lan> In-Reply-To: References: X-Mailer: Claws Mail 4.1.1 (GTK 3.24.38; x86_64-alpine-linux-musl) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit On Thu, 5 Oct 2023 17:44:33 +0200 Guido Trotter wrote: > Dear alpine devs, > > Thanks a lot for the great work! > > I tried to create a system so that an unmodified Alpine image would > self-install without user interaction, by passing a custom mini apkovl > archive. Nice to see that somebody finally figured out how to do this with apkovl! > I have tested this on libvirt+kvm in diskless mode, but it should work > pretty much on any platform where the apkovl can be passed in either > directly or via an extra block device. > > My initial proof of concept is at: > https://gitlab.alpinelinux.org/ultrotter/alpine-autosetup > > Let me know if you have thoughts, or ideas! Since alpine 3.18 you can use tiny-cloud and attach a cidata volume similar to cloud-init's nocloud. This was implemented because the apkovl way appeared to be too hard for users in general. Here is how you can provision an alpine vm image using this with qemu: #!/bin/sh echo "hostname: alpine-vm" > meta-data cat >user-data<