Hi pureos-project,
I'm trying to build a PureOS ISO image on my own system but can't seem to locate a script/repo/documentation, etc. I'm probably just missing something obvious. To clarify, I'm trying to build an ISO like:
https://www.pureos.net/download/
... rather than the OEM image. I'm guess Matthias is the person to specifically ask here? (Ping?)
Just to underline it really doesn't matter how ugly/manual the process is or that it could potentially be improved — everything always can be and I won't "judge" anyone on the status quo, especially for non-daily processes; I'd just like to build one myself.
Best wishes,
On Wed, 2019-03-06 at 13:55 -0500, Chris Lamb wrote:
Hi pureos-project,
I'm trying to build a PureOS ISO image on my own system but can't seem to locate a script/repo/documentation, etc. I'm probably just missing something obvious. To clarify, I'm trying to build an ISO like:
https://www.pureos.net/download/
... rather than the OEM image. I'm guess Matthias is the person to specifically ask here? (Ping?)
Thanks for the reminder lamby!
I've forked the 'make-live' tool that Matthias put in our Gitlab: https://source.puri.sm/jeremiah.foster/make-live
I'm going to see if I can build an image with that.
Cheers,
Jeremiah
Just to underline it really doesn't matter how ugly/manual the process is or that it could potentially be improved — everything always can be and I won't "judge" anyone on the status quo, especially for non- daily processes; I'd just like to build one myself.
Best wishes,
Am Mi., 6. März 2019 um 19:56 Uhr schrieb Chris Lamb chris.lamb@puri.sm:
Hi pureos-project,
I'm trying to build a PureOS ISO image on my own system but can't seem to locate a script/repo/documentation, etc. I'm probably just missing something obvious. To clarify, I'm trying to build an ISO like:
https://www.pureos.net/download/
... rather than the OEM image. I'm guess Matthias is the person to specifically ask here? (Ping?)
Just to underline it really doesn't matter how ugly/manual the process is or that it could potentially be improved — everything always can be and I won't "judge" anyone on the status quo, especially for non-daily processes; I'd just like to build one myself.
That should be pretty easy. The basic process is the following (see below for replicating almost 100% of what our builders do):
1) Create a PureOS green chroot (just debootstrap green and chroot into PureOS) 1.1) /!\ All following steps happen inside of the PureOS chroot 2) Run `apt install live-build git ca-certificates` 3) cd /srv && git clone https://source.puri.sm/pureos/infra/make-live.git 4) cd /srv/make-live 5) Set the FLAVOR environment variable to what flavor of PureOS you want to build. Possible values are: * gnome-live * gnome-oem * plasma-live E.g. `export FLAVOR="gnome-oem"`. If no FLAVOR variable is set, the GNOME Live Flavor will be built by default 6) Run `lb config` 7) Run `lb build` 8) Have fun with a fresh new PureOS image!
These steps can be sped up a lot and be automated by using debspawn, which is used to create the official PureOS images in a controlled environment. In order to use debspawn, just follow these steps: 1) Run `sudo apt install debspawn` 2) Then run `debspawn create green` 3) Create a new "build-pureos.sh" file with the following contents: ``` #!/bin/sh set -e set -x
export FLAVOR="gnome-live" export DEBIAN_FRONTEND=noninteractive apt-get install -y git ca-certificates apt-get install -y live-build
git clone --depth=2 https://source.puri.sm/pureos/infra/make-live.git /srv/build/lb cd /srv/build/lb/
lb config lb build
b2sum *.iso *.contents *.zsync *.packages > checksums.b2sum sha256sum *.iso *.contents *.zsync *.packages > checksums.sha256sum mv *.iso /srv/artifacts mv -f *.zsync /srv/artifacts mv -f *.contents /srv/artifacts mv -f *.files /srv/artifacts mv -f *.packages /srv/artifacts mv -f *.b2sum /srv/artifacts mv -f *.sha256sum /srv/artifacts ``` 4) Make the .sh file executable and set the FLAVOR you want. 5) Tell debspawn to run the build and where to place the build result: `debspawn run --external-command --artifacts-out=/where/to/put/the/built/image green /path/to/build-pureos.sh`
This should give you a replica of what our autobuilders did. You can also take a look at the actual code in Spark: https://github.com/lkorigin/laniakea-spark/blob/master/spark/runners/image_b...
I hope this helps :-) I was also really sure that I had written this down somewhere already (although not in this much detail), but when looking at our Wiki I couldn't find it.
Cheers, Matthias
Quoting Matthias Klumpp (2019-03-06 22:04:37)
- Create a PureOS green chroot (just debootstrap green and chroot into PureOS)
1.1) /!\ All following steps happen inside of the PureOS chroot 2) Run `apt install live-build git ca-certificates` 3) cd /srv && git clone https://source.puri.sm/pureos/infra/make-live.git 4) cd /srv/make-live 5) Set the FLAVOR environment variable to what flavor of PureOS you want to build. Possible values are: * gnome-live * gnome-oem * plasma-live E.g. `export FLAVOR="gnome-oem"`. If no FLAVOR variable is set, the GNOME Live Flavor will be built by default 6) Run `lb config` 7) Run `lb build` 8) Have fun with a fresh new PureOS image!
Great! Very valuable information! I have been curious to know this kind of information since I began working for Purism.
- Jonas
On Wed, 2019-03-06 at 22:04 +0100, Matthias Klumpp wrote:
Am Mi., 6. März 2019 um 19:56 Uhr schrieb Chris Lamb < chris.lamb@puri.sm>:
Hi pureos-project,
I'm trying to build a PureOS ISO image on my own system but can't seem to locate a script/repo/documentation, etc
That should be pretty easy. The basic process is the following (see below for replicating almost 100% of what our builders do):
Thanks!
- Create a PureOS green chroot (just debootstrap green and chroot
into PureOS) 1.1) /!\ All following steps happen inside of the PureOS chroot 2) Run `apt install live-build git ca-certificates` 3) cd /srv && git clone https://source.puri.sm/pureos/infra/make-live.git 4) cd /srv/make-live 5) Set the FLAVOR environment variable to what flavor of PureOS you want to build. Possible values are: * gnome-live * gnome-oem * plasma-live E.g. `export FLAVOR="gnome-oem"`. If no FLAVOR variable is set, the GNOME Live Flavor will be built by default 6) Run `lb config`
At this step I get an error;
$ lb config [2019-03-07 15:31:49] lb config P: Executing auto/config script. Using default flavor: gnome-live ERROR: Run this first: ln -sf sid /usr/share/live/build/data/debian-cd/green
I created the symlink and config worked. But I imagine the symlink needs to be mentioned if I post this on the wiki somewhere?
- Run `lb build`
- Have fun with a fresh new PureOS image!
This worked well, thanks! Now I'll test the resulting ISO and try and use this process as a start for automated QA.
These steps can be sped up a lot and be automated by using debspawn, which is used to create the official PureOS images in a controlled environment.
What does 'controlled' environment mean? The use of apt below leads me to believe that at least one will have to be on a Debian machine.
I'll test the below method tomorrow.
In order to use debspawn, just follow these steps:
- Run `sudo apt install debspawn`
- Then run `debspawn create green`
- Create a new "build-pureos.sh" file with the following contents:
#!/bin/sh set -e set -x export FLAVOR="gnome-live" export DEBIAN_FRONTEND=noninteractive apt-get install -y git ca-certificates apt-get install -y live-build git clone --depth=2 https://source.puri.sm/pureos/infra/make-live.git /srv/build/lb cd /srv/build/lb/ lb config lb build b2sum *.iso *.contents *.zsync *.packages > checksums.b2sum sha256sum *.iso *.contents *.zsync *.packages > checksums.sha256sum mv *.iso /srv/artifacts mv -f *.zsync /srv/artifacts mv -f *.contents /srv/artifacts mv -f *.files /srv/artifacts mv -f *.packages /srv/artifacts mv -f *.b2sum /srv/artifacts mv -f *.sha256sum /srv/artifacts
- Make the .sh file executable and set the FLAVOR you want.
- Tell debspawn to run the build and where to place the build
result: `debspawn run --external-command --artifacts-out=/where/to/put/the/built/image green /path/to/build-pureos.sh`
This should give you a replica of what our autobuilders did. You can also take a look at the actual code in Spark: https://github.com/lkorigin/laniakea-spark/blob/master/spark/runners/image_b...
I hope this helps :-)
It helps a lot, thanks!
I was also really sure that I had written this down somewhere already (although not in this much detail), but when looking at our Wiki I couldn't find it.
Cheers, Matthias
Jeremiah
Am Do., 7. März 2019 um 22:19 Uhr schrieb Jeremiah C. Foster jeremiah.foster@puri.sm:
[...] $ lb config [2019-03-07 15:31:49] lb config P: Executing auto/config script. Using default flavor: gnome-live ERROR: Run this first: ln -sf sid /usr/share/live/build/data/debian-cd/green
I created the symlink and config worked. But I imagine the symlink needs to be mentioned if I post this on the wiki somewhere?
This is odd - this error and extra step does not happen on the autobuilders. Are you really running all command in a PureOS chroot?
[...]
These steps can be sped up a lot and be automated by using debspawn, which is used to create the official PureOS images in a controlled environment.
What does 'controlled' environment mean? The use of apt below leads me to believe that at least one will have to be on a Debian machine.
I'll test the below method tomorrow.
Debspawn is backed by systemd-nspawn, so it will create a container instead of just a plain chroot. This provides better isolation from the host system and some neat methods of controlling resource usage of the container. The build environment will also be always up-to-date without any cruft (as it gets recreated on build invocation), which might make the image build a bit easier to reproduce.
Cheers, Matthias
[...]
On Thu, 2019-03-07 at 22:25 +0100, Matthias Klumpp wrote:
Am Do., 7. März 2019 um 22:19 Uhr schrieb Jeremiah C. Foster jeremiah.foster@puri.sm:
[...] $ lb config [2019-03-07 15:31:49] lb config P: Executing auto/config script. Using default flavor: gnome-live ERROR: Run this first: ln -sf sid /usr/share/live/build/data/debian-cd/green
I created the symlink and config worked. But I imagine the symlink needs to be mentioned if I post this on the wiki somewhere?
This is odd - this error and extra step does not happen on the autobuilders. Are you really running all command in a PureOS chroot?
I don't think I was in a chroot in fact.
[...]
These steps can be sped up a lot and be automated by using debspawn, which is used to create the official PureOS images in a controlled environment.
What does 'controlled' environment mean? The use of apt below leads me to believe that at least one will have to be on a Debian machine.
I'll test the below method tomorrow.
Debspawn is backed by systemd-nspawn, so it will create a container instead of just a plain chroot. This provides better isolation from the host system and some neat methods of controlling resource usage of the container.
systemd-nspawn is my preferred tool for containers in general, glad to hear debspawn is using it.
The build environment will also be always up-to-date without any cruft (as it gets recreated on build invocation), which might make the image build a bit easier to reproduce.
I'll test debspawn now.
Regards,
Jeremiah
Jeremiah C. Foster wrote:
I created the symlink and config worked. But I imagine the symlink needs to be mentioned if I post this on the wiki somewhere?
As an aside, I've added these instructions verbatim to the make- live.git repo in:
https://source.puri.sm/pureos/infra/make-live/commit/85764dcce2d4606481d138c...
Let's make that the canonical version for now. (I haven't had a moment to look at it beyond the above yet...)
Best wishes,
On Thu, 2019-03-07 at 16:18 -0500, Jeremiah C. Foster wrote:
On Wed, 2019-03-06 at 22:04 +0100, Matthias Klumpp wrote:
Am Mi., 6. März 2019 um 19:56 Uhr schrieb Chris Lamb <
In order to use debspawn, just follow these steps:
- Run `sudo apt install debspawn`
- Then run `debspawn create green`
- Create a new "build-pureos.sh" file with the following contents:
#!/bin/sh set -e set -x export FLAVOR="gnome-live" export DEBIAN_FRONTEND=noninteractive apt-get install -y git ca-certificates apt-get install -y live-build git clone --depth=2 https://source.puri.sm/pureos/infra/make-live.git /srv/build/lb cd /srv/build/lb/ lb config lb build b2sum *.iso *.contents *.zsync *.packages > checksums.b2sum sha256sum *.iso *.contents *.zsync *.packages > checksums.sha256sum mv *.iso /srv/artifacts mv -f *.zsync /srv/artifacts mv -f *.contents /srv/artifacts mv -f *.files /srv/artifacts mv -f *.packages /srv/artifacts mv -f *.b2sum /srv/artifacts mv -f *.sha256sum /srv/artifacts
- Make the .sh file executable and set the FLAVOR you want.
- Tell debspawn to run the build and where to place the build
result: `debspawn run --external-command --artifacts-out=/where/to/put/the/built/image green /path/to/build-pureos.sh`
Doing this `debspawn run --external-command --artifacts-out=build green ./build-pureos.sh` produces
" ┌──────────────────────┐ │ Running Task │ └──────────────────────┘ Failed to parse --bind(-ro)= argument build:/srv/artifacts/: Invalid argument "
Creating that directory doesn't make much of a difference.
Regards,
Jeremiah
On Fri, 2019-03-08 at 14:29 -0500, Jeremiah C. Foster wrote:
On Thu, 2019-03-07 at 16:18 -0500, Jeremiah C. Foster wrote:
On Wed, 2019-03-06 at 22:04 +0100, Matthias Klumpp wrote:
Am Mi., 6. März 2019 um 19:56 Uhr schrieb Chris Lamb <
In order to use debspawn, just follow these steps:
- Run `sudo apt install debspawn`
- Then run `debspawn create green`
- Create a new "build-pureos.sh" file with the following
contents:
#!/bin/sh set -e set -x export FLAVOR="gnome-live" export DEBIAN_FRONTEND=noninteractive apt-get install -y git ca-certificates apt-get install -y live-build git clone --depth=2 https://source.puri.sm/pureos/infra/make-live.git /srv/build/lb cd /srv/build/lb/ lb config lb build b2sum *.iso *.contents *.zsync *.packages > checksums.b2sum sha256sum *.iso *.contents *.zsync *.packages > checksums.sha256sum mv *.iso /srv/artifacts mv -f *.zsync /srv/artifacts mv -f *.contents /srv/artifacts mv -f *.files /srv/artifacts mv -f *.packages /srv/artifacts mv -f *.b2sum /srv/artifacts mv -f *.sha256sum /srv/artifacts
- Make the .sh file executable and set the FLAVOR you want.
- Tell debspawn to run the build and where to place the build
result: `debspawn run --external-command --artifacts-out=/where/to/put/the/built/image green /path/to/build-pureos.sh`
Doing this `debspawn run --external-command --artifacts-out=build green ./build-pureos.sh` produces
I changed the --artifacts-out argument to the full path, e.g. (/home/jeremiah/Packaing/build) and things started to work.
Jeremiah
Am Fr., 8. März 2019 um 20:34 Uhr schrieb Jeremiah C. Foster jeremiah.foster@puri.sm:
[...]
I changed the --artifacts-out argument to the full path, e.g. (/home/jeremiah/Packaing/build) and things started to work.
Jup, that's a bug. I changed the debspawn code to work with either absolute or relative paths now.
Cheers, Matthias
On Fri, 2019-03-08 at 14:29 -0500, Jeremiah C. Foster wrote:
On Thu, 2019-03-07 at 16:18 -0500, Jeremiah C. Foster wrote:
On Wed, 2019-03-06 at 22:04 +0100, Matthias Klumpp wrote:
Am Mi., 6. März 2019 um 19:56 Uhr schrieb Chris Lamb <
In order to use debspawn, just follow these steps:
- Run `sudo apt install debspawn`
- Then run `debspawn create green`
- Create a new "build-pureos.sh" file with the following
contents:
#!/bin/sh set -e set -x export FLAVOR="gnome-live" export DEBIAN_FRONTEND=noninteractive apt-get install -y git ca-certificates apt-get install -y live-build git clone --depth=2 https://source.puri.sm/pureos/infra/make-live.git /srv/build/lb cd /srv/build/lb/ lb config lb build b2sum *.iso *.contents *.zsync *.packages > checksums.b2sum sha256sum *.iso *.contents *.zsync *.packages > checksums.sha256sum mv *.iso /srv/artifacts mv -f *.zsync /srv/artifacts mv -f *.contents /srv/artifacts mv -f *.files /srv/artifacts mv -f *.packages /srv/artifacts mv -f *.b2sum /srv/artifacts mv -f *.sha256sum /srv/artifacts
- Make the .sh file executable and set the FLAVOR you want.
- Tell debspawn to run the build and where to place the build
result: `debspawn run --external-command --artifacts-out=/where/to/put/the/built/image green /path/to/build-pureos.sh`
Using the above process filled up my disk. For some reason the pagemap file grew to 77 Gigs and on that partition it ran out of space.
-r-------- 1 root root 77G Mar 8 16:37 pagemap
I'll try on another (slightly larger) partition. How much disk space should one have for this? 77 Gigs seems like an awful lot of space for an image. All the source code for a image and yocto tooling in comparison comes to about 60 Gigs or so.
Regards,
Jeremiah
Am Mo., 11. März 2019 um 15:06 Uhr schrieb Jeremiah C. Foster jeremiah.foster@puri.sm:
[...] Using the above process filled up my disk. For some reason the pagemap file grew to 77 Gigs and on that partition it ran out of space.
-r-------- 1 root root 77G Mar 8 16:37 pagemap
I'll try on another (slightly larger) partition. How much disk space should one have for this? 77 Gigs seems like an awful lot of space for an image. All the source code for a image and yocto tooling in comparison comes to about 60 Gigs or so.
That's odd... The whole process defbitely works if you have much less then 4GB of disk space, and I think our current autobuilder has 30GB. What data was written to where, can you find that out? And which filesystem are you using? I assume you are running either PureOS or Debian Testing on the host system.
You only need ~500MB to store a compressed root filesystem image, then some space to decompress it and the amount of space to build the image and space to store the resulting image. That should never fill up 77GB of space (and I built it with less then 4GB free on my local machine once).
Cheers, Matthias
On Mon, 2019-03-11 at 18:10 +0100, Matthias Klumpp wrote:
Am Mo., 11. März 2019 um 15:06 Uhr schrieb Jeremiah C. Foster jeremiah.foster@puri.sm:
[...] Using the above process filled up my disk. For some reason the pagemap file grew to 77 Gigs and on that partition it ran out of space.
-r-------- 1 root root 77G Mar 8 16:37 pagemap
I'll try on another (slightly larger) partition. How much disk space should one have for this? 77 Gigs seems like an awful lot of space for an image. All the source code for a image and yocto tooling in comparison comes to about 60 Gigs or so.
That's odd... The whole process defbitely works if you have much less then 4GB of disk space, and I think our current autobuilder has 30GB. What data was written to where, can you find that out?
The bulk of the data got written to that file above (pagemap), the rest of the file system was the same.
And which filesystem are you using?
findmnt in the container says ext4 as does the host.
# findmnt TARGET SOURCE FSTYPE OPTIONS / /dev/root[/var/lib/machines/pureos] ext4 rw,relatime,stripe=256 -host- / /dev/nvme0n1p3 ext4 rw,relatime,stripe=256
I assume you are running either PureOS or Debian Testing on the host system.
Yes;
# cat /etc/os-release PRETTY_NAME="PureOS" NAME="PureOS" ID=pureos HOME_URL="https://pureos.net/" SUPPORT_URL="https://puri.sm/faq/#faq-pureosandsoftware" BUG_REPORT_URL="https://tracker.pureos.net/"
You only need ~500MB to store a compressed root filesystem image, then some space to decompress it and the amount of space to build the image and space to store the resulting image. That should never fill up 77GB of space (and I built it with less then 4GB free on my local machine once).
Seems logical. Not sure what happned in my system. I'll run the commands again.
Regards,
Jeremiah
On Mon, 2019-03-11 at 13:39 -0400, Jeremiah C. Foster wrote:
On Mon, 2019-03-11 at 18:10 +0100, Matthias Klumpp wrote:
Am Mo., 11. März 2019 um 15:06 Uhr schrieb Jeremiah C. Foster jeremiah.foster@puri.sm:
[...] Using the above process filled up my disk. For some reason the pagemap file grew to 77 Gigs and on that partition it ran out of space.
-r-------- 1 root root 77G Mar 8 16:37 pagemap
I'll try on another (slightly larger) partition. How much disk space should one have for this? 77 Gigs seems like an awful lot of space for an image. All the source code for a image and yocto tooling in comparison comes to about 60 Gigs or so.
That's odd... The whole process defbitely works if you have much less then 4GB of disk space, and I think our current autobuilder has 30GB. What data was written to where, can you find that out?
The bulk of the data got written to that file above (pagemap), the rest of the file system was the same.
And which filesystem are you using?
findmnt in the container says ext4 as does the host.
# findmnt TARGET SOURCE FSTYPE OPTIONS / /dev/root[/var/lib/machines/pureos] ext4 rw,relatime,stripe=256 -host- / /dev/nvme0n1p3 ext4 rw,relatime,stripe=256
I assume you are running either PureOS or Debian Testing on the host system.
Re-reading this question the answer should be "no". I'm running Clear Linux on the host, I boot into PureOS via systemd-nspawn. So PureOS is running in a container.
Yes;
# cat /etc/os-release PRETTY_NAME="PureOS" NAME="PureOS" ID=pureos HOME_URL="https://pureos.net/" SUPPORT_URL="https://puri.sm/faq/#faq-pureosandsoftware" BUG_REPORT_URL="https://tracker.pureos.net/"
Am Mo., 11. März 2019 um 18:47 Uhr schrieb Jeremiah C. Foster jeremiah.foster@puri.sm:
[...]
Re-reading this question the answer should be "no". I'm running Clear Linux on the host, I boot into PureOS via systemd-nspawn. So PureOS is running in a container.
Ah! So, you are running debspawn in a PureOS container created with systemd-nspawn? That's probably not a good idea, because it means you are nesting containers, as debspawn will create another ephemeral container on its own as well. So I guess this behavior might be some kind of bug related to nesting containers (I am actually very surprised that nspawn lets you do that - I never tried that but always thought that it wouldn't work anyway.
Cheers, Matthias
P.S: Debspawn will probably work on any distribution that has debootstrap, but I don't think anyone has tried that yet.
-
On Mon, 2019-03-11 at 13:47 -0400, Jeremiah C. Foster wrote:
On Mon, 2019-03-11 at 13:39 -0400, Jeremiah C. Foster wrote:
On Mon, 2019-03-11 at 18:10 +0100, Matthias Klumpp wrote:
Am Mo., 11. März 2019 um 15:06 Uhr schrieb Jeremiah C. Foster jeremiah.foster@puri.sm:
[...] Using the above process filled up my disk. For some reason the pagemap file grew to 77 Gigs and on that partition it ran out of space.
-r-------- 1 root root 77G Mar 8 16:37 pagemap
I'll try on another (slightly larger) partition. How much disk space should one have for this? 77 Gigs seems like an awful lot of space for an image. All the source code for a image and yocto tooling in comparison comes to about 60 Gigs or so.
That's odd... The whole process defbitely works if you have much less then 4GB of disk space, and I think our current autobuilder has 30GB. What data was written to where, can you find that out?
To follow up, I ran the command again in the container. This is the output;
[2019-03-13 19:17:11] lb bootstrap_cache save P: Saving bootstrap stage to cache... cp: error reading 'chroot/proc/1/attr/current': Invalid argument cp: error reading 'chroot/proc/1/attr/prev': Invalid argument cp: error reading 'chroot/proc/1/attr/exec': Invalid argument cp: error reading 'chroot/proc/1/attr/fscreate': Invalid argument cp: error reading 'chroot/proc/1/attr/keycreate': Invalid argument cp: error reading 'chroot/proc/1/attr/sockcreate': Invalid argument cp: error reading 'chroot/proc/1/task/1/mem': Input/output error cp: error reading 'chroot/proc/1/task/1/clear_refs': Invalid argument
Then lb just writes the bootstrap_cache to pagemap until disk fills up.
Cheers,
jeremiah
On Wed, 2019-03-06 at 22:04 +0100, Matthias Klumpp wrote:
Am Mi., 6. März 2019 um 19:56 Uhr schrieb Chris Lamb < chris.lamb@puri.sm>:
Hi pureos-project,
I'm trying to build a PureOS ISO image on my own system but can't seem to locate a script/repo/documentation
That should be pretty easy. The basic process is the following (see below for replicating almost 100% of what our builders do):
I've put the instructions here as well: http://tracker.pureos.net/w/howto_build/
Cheers,
Jeremiah
On Wed, 2019-03-06 at 22:04 +0100, Matthias Klumpp wrote:
Am Mi., 6. März 2019 um 19:56 Uhr schrieb Chris Lamb < chris.lamb@puri.sm>:
Hi pureos-project,
I'm trying to build a PureOS ISO image on my own system but can't seem to locate a script/repo/documentation
That should be pretty easy. The basic process is the following (see below for replicating almost 100% of what our builders do):
<snip>
These steps can be sped up a lot and be automated by using debspawn, which is used to create the official PureOS images in a controlled environment. In order to use debspawn, just follow these steps:
- Run `sudo apt install debspawn`
- Then run `debspawn create green`
Running this I get this error;
I: Target architecture can be executed I: Keyring file not available at /usr/share/keyrings/pureos-archive- keyring.gpg; switching to https mirror https://deb.debian.org/debian I: Retrieving InRelease
The error is easily mitigated by running with the --mirror arg; $ debspawn create green --mirror https://repo.pureos.net/pureos
Should we somehow provide the pureos-archive-keyring or mention it ought to be downloaded?
Regards,
Jeremiah
Am Mo., 18. März 2019 um 22:28 Uhr schrieb Jeremiah C. Foster jeremiah.foster@puri.sm:
On Wed, 2019-03-06 at 22:04 +0100, Matthias Klumpp wrote:
Am Mi., 6. März 2019 um 19:56 Uhr schrieb Chris Lamb < chris.lamb@puri.sm>:
Hi pureos-project,
I'm trying to build a PureOS ISO image on my own system but can't seem to locate a script/repo/documentation
That should be pretty easy. The basic process is the following (see below for replicating almost 100% of what our builders do):
I've put the instructions here as well: http://tracker.pureos.net/w/howto_build/
Thanks a lot for doing that!
Am Mo., 18. März 2019 um 22:48 Uhr schrieb Jeremiah C. Foster jeremiah.foster@puri.sm:
On Wed, 2019-03-06 at 22:04 +0100, Matthias Klumpp wrote:
Am Mi., 6. März 2019 um 19:56 Uhr schrieb Chris Lamb < chris.lamb@puri.sm>:
Hi pureos-project,
I'm trying to build a PureOS ISO image on my own system but can't seem to locate a script/repo/documentation
That should be pretty easy. The basic process is the following (see below for replicating almost 100% of what our builders do):
<snip>
These steps can be sped up a lot and be automated by using debspawn, which is used to create the official PureOS images in a controlled environment. In order to use debspawn, just follow these steps:
- Run `sudo apt install debspawn`
- Then run `debspawn create green`
Running this I get this error;
I: Target architecture can be executed I: Keyring file not available at /usr/share/keyrings/pureos-archive- keyring.gpg; switching to https mirror https://deb.debian.org/debian I: Retrieving InRelease
The error is easily mitigated by running with the --mirror arg; $ debspawn create green --mirror https://repo.pureos.net/pureos
Should we somehow provide the pureos-archive-keyring or mention it ought to be downloaded?
We could probably include it in Debian at some point, but for now mentioning to download it explicitly makes sense to me, especially because that ensures people will get a recent enough version of the archive keyring (which reminds me that we should likely refresh the keys at some point).
Cheers, Matthias
On Mon, 2019-03-18 at 23:43 +0100, Matthias Klumpp wrote:
Am Mo., 18. März 2019 um 22:28 Uhr schrieb Jeremiah C. Foster jeremiah.foster@puri.sm:
On Wed, 2019-03-06 at 22:04 +0100, Matthias Klumpp wrote:
Am Mi., 6. März 2019 um 19:56 Uhr schrieb Chris Lamb < chris.lamb@puri.sm>:
Hi pureos-project,
I'm trying to build a PureOS ISO image on my own system but can't seem to locate a script/repo/documentation
That should be pretty easy. The basic process is the following (see below for replicating almost 100% of what our builders do):
I've put the instructions here as well: http://tracker.pureos.net/w/howto_build/
Thanks a lot for doing that!
Thank you for your help with the instructions, much appreciated.
Am Mo., 18. März 2019 um 22:48 Uhr schrieb Jeremiah C. Foster jeremiah.foster@puri.sm:
On Wed, 2019-03-06 at 22:04 +0100, Matthias Klumpp wrote:
Am Mi., 6. März 2019 um 19:56 Uhr schrieb Chris Lamb < chris.lamb@puri.sm>:
Hi pureos-project,
I'm trying to build a PureOS ISO image on my own system but can't seem to locate a script/repo/documentation
That should be pretty easy. The basic process is the following (see below for replicating almost 100% of what our builders do):
<snip>
These steps can be sped up a lot and be automated by using debspawn, which is used to create the official PureOS images in a controlled environment. In order to use debspawn, just follow these steps:
- Run `sudo apt install debspawn`
- Then run `debspawn create green`
Running this I get this error;
I: Target architecture can be executed I: Keyring file not available at /usr/share/keyrings/pureos- archive- keyring.gpg; switching to https mirror https://deb.debian.org/debian I: Retrieving InRelease
The error is easily mitigated by running with the --mirror arg; $ debspawn create green --mirror https://repo.pureos.net/pureos
Should we somehow provide the pureos-archive-keyring or mention it ought to be downloaded?
We could probably include it in Debian at some point, but for now mentioning to download it explicitly makes sense to me, especially because that ensures people will get a recent enough version of the archive keyring (which reminds me that we should likely refresh the keys at some point).
+1
I think I'll add a little blurb to the instructions mentioning the keys.
Cheers,
Jeremiah