From be398665af8b5c2ba7d944a632a560098579cb13 Mon Sep 17 00:00:00 2001 From: spwhitton Date: Fri, 19 Jan 2018 22:59:44 +0000 Subject: Added a comment --- .../comment_2_54a6e8a53221d0db2fe37703cd0a011d._comment | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 doc/todo/partition_properties_should_install_e2fsprogs/comment_2_54a6e8a53221d0db2fe37703cd0a011d._comment diff --git a/doc/todo/partition_properties_should_install_e2fsprogs/comment_2_54a6e8a53221d0db2fe37703cd0a011d._comment b/doc/todo/partition_properties_should_install_e2fsprogs/comment_2_54a6e8a53221d0db2fe37703cd0a011d._comment new file mode 100644 index 00000000..e7527bdc --- /dev/null +++ b/doc/todo/partition_properties_should_install_e2fsprogs/comment_2_54a6e8a53221d0db2fe37703cd0a011d._comment @@ -0,0 +1,8 @@ +[[!comment format=mdwn + username="spwhitton" + avatar="http://cdn.libravatar.org/avatar/9c3f08f80e67733fd506c353239569eb" + subject="comment 2" + date="2018-01-19T22:59:44Z" + content=""" +Thanks for checking this! +"""]] -- cgit v1.3-2-g0d8e From d79367b4324dec67d929f18239e4159cf8b4d890 Mon Sep 17 00:00:00 2001 From: "Nicolas.Schodet" Date: Sat, 20 Jan 2018 13:55:53 +0000 Subject: creating "Unknown host OS" after merging recent propellor --- ...st_OS__34___after_merging_recent_propellor.mdwn | 43 ++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 doc/forum/__34__Unknown_host_OS__34___after_merging_recent_propellor.mdwn diff --git a/doc/forum/__34__Unknown_host_OS__34___after_merging_recent_propellor.mdwn b/doc/forum/__34__Unknown_host_OS__34___after_merging_recent_propellor.mdwn new file mode 100644 index 00000000..8625ee00 --- /dev/null +++ b/doc/forum/__34__Unknown_host_OS__34___after_merging_recent_propellor.mdwn @@ -0,0 +1,43 @@ +Hello, + +I merged 5.2.0 into my .propellor, last merge was merging f6797bed. + +Since the merge, when I try to spin, I get: + + riva4.ni.fr.eu.org has ipv4 91.121.114.4 ... ok + ** warning: Unknown host OS is not supported by this property. + CallStack (from HasCallStack): + error, called at src/Propellor/Property.hs:350:30 in main:Propellor.Property + riva4.ni.fr.eu.org container vz-web2 ... failed + riva4.ni.fr.eu.org overall ... failed + +I have in my config.hs: + + riva4 :: Host + riva4 = host "riva4.ni.fr.eu.org" $ props + & ipv4 "91.121.114.4" + & stdContainerSpawn "vz-web2" "2g" vzWeb2 + + stdContainerSpawn :: Systemd.MachineName + -> String + -> Systemd.Container + -> Property (HasInfo + DebianLike) + stdContainerSpawn name size container = + Lvm.lvFormatted Lvm.YesReallyFormatLogicalVolume + (Lvm.LogicalVolume name (Lvm.VolumeGroup "vg0")) size + Partition.EXT4 + `before` Fstab.mounted "auto" dev dir mempty + `before` Systemd.nspawned container + `describe` ("container " ++ name) + where + dev = "/dev/vg0" name + dir = "/var/lib/container" name + + vzWeb2 :: Systemd.Container + vzWeb2 = Systemd.debContainer "vz-web2" $ props + & osDebian (Stable "stretch") X86_64 + & ipv4 "10.42.2.13" + +I reviewed all changes in propellor, but I cannot find what can cause this. + +How can I debug this? -- cgit v1.3-2-g0d8e From a730bbda2b91cf2bac9b63be8647ba322691e57f Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 24 Jan 2018 13:32:04 -0400 Subject: Add HasCallStack constraint to pickOS and unsupportedOS, so the call stack includes the caller. This commit was sponsored by Jochen Bartl on Patreon. --- debian/changelog | 2 ++ ...ent_1_6ed53a6752f3f88acce023a4fe1b9bf6._comment | 27 ++++++++++++++++++++++ src/Propellor/Property.hs | 4 +++- 3 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 doc/forum/__34__Unknown_host_OS__34___after_merging_recent_propellor/comment_1_6ed53a6752f3f88acce023a4fe1b9bf6._comment diff --git a/debian/changelog b/debian/changelog index 4545bcd1..2ffe4f8c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -8,6 +8,8 @@ propellor (5.3.0) UNRELEASED; urgency=medium * Added rawPartition to PartSpec, for specifying partitions with no filesystem. * Added BiosGrubFlag to PartFlag. + * Add HasCallStack constraint to pickOS and unsupportedOS, so the + call stack includes the caller. -- Joey Hess Tue, 02 Jan 2018 13:06:45 -0400 diff --git a/doc/forum/__34__Unknown_host_OS__34___after_merging_recent_propellor/comment_1_6ed53a6752f3f88acce023a4fe1b9bf6._comment b/doc/forum/__34__Unknown_host_OS__34___after_merging_recent_propellor/comment_1_6ed53a6752f3f88acce023a4fe1b9bf6._comment new file mode 100644 index 00000000..608bc3e2 --- /dev/null +++ b/doc/forum/__34__Unknown_host_OS__34___after_merging_recent_propellor/comment_1_6ed53a6752f3f88acce023a4fe1b9bf6._comment @@ -0,0 +1,27 @@ +[[!comment format=mdwn + username="joey" + subject="""comment 1""" + date="2018-01-24T16:55:19Z" + content=""" +This comes from something using `unsupportedOS'`, perhaps via `pickOS`. + +Probably it's coming from the use of `Systemd.nspawned`, +which is going to use debootstrap to build the container, +since the container uses debian. To use debootstrap, +it needs to install it, and `Debootstrap.installed` +uses `pickOS` to work out how to install it, but only supports +installing debootstrap on linux hosts. Your riva4 host does not have its OS +declared, leading to the failure. + +It seems there ought to be a way to get a deeper call +stack, to make it easier to work this out. It's possible to build +propellor with profiling and get a complete call stack, as shown at +. It might make sense for +propellor to always be built that way. + +A simpler approach is to +add `HasCallStack =>` constraints to `pickOS` and `unsupportedOS'`, +so that those will have a call stack that reaches back to their +caller, which in your case would reach back to `Debootstrap.installed`, +which is probably enough. For now, I've made this change. +"""]] diff --git a/src/Propellor/Property.hs b/src/Propellor/Property.hs index 884ee683..8c0a5859 100644 --- a/src/Propellor/Property.hs +++ b/src/Propellor/Property.hs @@ -55,6 +55,7 @@ import Data.Maybe import Data.List import Data.Hashable import Control.Applicative +import GHC.Stack import Prelude import Propellor.Types @@ -283,6 +284,7 @@ isNewerThan x y = do -- fail that way. pickOS :: + HasCallStack => ( SingKind ('KProxy :: KProxy ka) , SingKind ('KProxy :: KProxy kb) , DemoteRep ('KProxy :: KProxy ka) ~ [MetaType] @@ -344,7 +346,7 @@ unsupportedOS = property "unsupportedOS" unsupportedOS' -- | Throws an error, for use in `withOS` when a property is lacking -- support for an OS. -unsupportedOS' :: Propellor Result +unsupportedOS' :: HasCallStack => Propellor Result unsupportedOS' = go =<< getOS where go Nothing = error "Unknown host OS is not supported by this property." -- cgit v1.3-2-g0d8e From e98be1c0ae80a940a7d47395da01168941510c76 Mon Sep 17 00:00:00 2001 From: gueux Date: Mon, 29 Jan 2018 17:55:43 +0000 Subject: Added a comment --- .../comment_19_22178bd21d8a44bdd67cad162f71c400._comment | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 doc/forum/imageBuiltFor_mount_points_not_automatically_created/comment_19_22178bd21d8a44bdd67cad162f71c400._comment diff --git a/doc/forum/imageBuiltFor_mount_points_not_automatically_created/comment_19_22178bd21d8a44bdd67cad162f71c400._comment b/doc/forum/imageBuiltFor_mount_points_not_automatically_created/comment_19_22178bd21d8a44bdd67cad162f71c400._comment new file mode 100644 index 00000000..bd34df0a --- /dev/null +++ b/doc/forum/imageBuiltFor_mount_points_not_automatically_created/comment_19_22178bd21d8a44bdd67cad162f71c400._comment @@ -0,0 +1,11 @@ +[[!comment format=mdwn + username="gueux" + avatar="http://cdn.libravatar.org/avatar/2982bac2c2cd94ab3860efb189deafc8" + subject="comment 19" + date="2018-01-29T17:55:43Z" + content=""" +I tried several configurations, without success. Without a serial console, that was not fun to debug... I finally tried to boot the image with qemu, and that worked! So I thought that maybe I should try to use a MSDOS partition table instead of a GPT one, just to be sure. And that finally produced a bootable image on that damn card! :) I'll report a bug to PCEngines. It's unfortunate I can't test the GPT code more, but it would probably work, as it booted in qemu. + +Thanks a lot Joey! + +"""]] -- cgit v1.3-2-g0d8e From 81d288629d82e1fa81bb004a74ef9480b3a544a0 Mon Sep 17 00:00:00 2001 From: "Nicolas.Schodet" Date: Mon, 29 Jan 2018 20:49:46 +0000 Subject: Added a comment: response --- .../comment_2_8592411690ea524b65e4fba580d51ba8._comment | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 doc/forum/__34__Unknown_host_OS__34___after_merging_recent_propellor/comment_2_8592411690ea524b65e4fba580d51ba8._comment diff --git a/doc/forum/__34__Unknown_host_OS__34___after_merging_recent_propellor/comment_2_8592411690ea524b65e4fba580d51ba8._comment b/doc/forum/__34__Unknown_host_OS__34___after_merging_recent_propellor/comment_2_8592411690ea524b65e4fba580d51ba8._comment new file mode 100644 index 00000000..430c4e90 --- /dev/null +++ b/doc/forum/__34__Unknown_host_OS__34___after_merging_recent_propellor/comment_2_8592411690ea524b65e4fba580d51ba8._comment @@ -0,0 +1,10 @@ +[[!comment format=mdwn + username="Nicolas.Schodet" + avatar="http://cdn.libravatar.org/avatar/0d7ec808ec329d04ee9a93c0da3c0089" + subject="response" + date="2018-01-29T20:49:46Z" + content=""" +Thanks, it works :) + +riva4 is not configured by propellor yet, but osDebian does not touch anything so it's OK. +"""]] -- cgit v1.3-2-g0d8e From b6000d75626114c7234c67da5f9a665e084923c6 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 1 Feb 2018 12:28:13 -0400 Subject: releasing package propellor version 5.3.0 --- debian/changelog | 4 ++-- propellor.cabal | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/debian/changelog b/debian/changelog index fcbd3951..b1fb27af 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -propellor (5.3.0) UNRELEASED; urgency=medium +propellor (5.3.0) unstable; urgency=medium * Avoid bogus warning about new upstream version when /usr/bin/propellor is run on a Debian system, but ~/.propellor was not cloned from the @@ -15,7 +15,7 @@ propellor (5.3.0) UNRELEASED; urgency=medium * Grub: Added properties to configure /etc/default/grub. * Laptop: New module, starting with powertopAutoTuneOnBoot. - -- Joey Hess Tue, 02 Jan 2018 13:06:45 -0400 + -- Joey Hess Thu, 01 Feb 2018 12:27:01 -0400 propellor (5.2.0) unstable; urgency=medium diff --git a/propellor.cabal b/propellor.cabal index e59a55a4..f716b978 100644 --- a/propellor.cabal +++ b/propellor.cabal @@ -1,5 +1,5 @@ Name: propellor -Version: 5.2.0 +Version: 5.3.0 Cabal-Version: >= 1.20 License: BSD2 Maintainer: Joey Hess @@ -126,8 +126,8 @@ Library Propellor.Property.Installer.Target Propellor.Property.Journald Propellor.Property.Kerberos - Propellor.Property.LetsEncrypt Propellor.Property.Laptop + Propellor.Property.LetsEncrypt Propellor.Property.List Propellor.Property.LightDM Propellor.Property.Locale -- cgit v1.3-2-g0d8e From c530dffb7aea8e05cc8184be634a39908780a981 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 1 Feb 2018 12:28:31 -0400 Subject: add news item for propellor 5.3.0 --- doc/news/version_5.2.0.mdwn | 24 ------------------------ doc/news/version_5.3.0.mdwn | 16 ++++++++++++++++ 2 files changed, 16 insertions(+), 24 deletions(-) delete mode 100644 doc/news/version_5.2.0.mdwn create mode 100644 doc/news/version_5.3.0.mdwn diff --git a/doc/news/version_5.2.0.mdwn b/doc/news/version_5.2.0.mdwn deleted file mode 100644 index 8cd1edaf..00000000 --- a/doc/news/version_5.2.0.mdwn +++ /dev/null @@ -1,24 +0,0 @@ -propellor 5.2.0 released with [[!toggle text="these changes"]] -[[!toggleable text=""" - * [ Joey Hess ] - * bootstrappedFrom: Set up local privdata file. - * Parted: Fix names used for FAT and VFAT partitions. - * Parted: Add an Alignment parameter. (API change) - A good default to use is safeAlignment, which is 4MiB, - well suited for inexpensive flash drives, and fine for other disks too. - Previously, a very non-optimial 1MB (not 1MiB) alignment had been used. - * DiskImage: Use safeAlignment. It didn't seem worth making the - alignment configurable here. - * Fixed rounding bug in Parted.calcPartTable. - * DiskImage: Fix rsync crash when a mount point does not exist in the - chroot. - * Fix bug in unmountBelow that caused unmounting of nested mounts to - fail. - * Grub.boots, Grub.bootsMounted: Pass --target to grub-install. - * Added Propellor.Property.Installer modules, which can be used to create - bootable installer disk images, which then run propellor to install - a system. This code was extracted from the demo I gave in my - talk at DebConf 2017. - * [ Sean Whitton ] - * Sbuild: add notes about Debian jessie hosts and backports of sbuild and - autopkgtest."""]] \ No newline at end of file diff --git a/doc/news/version_5.3.0.mdwn b/doc/news/version_5.3.0.mdwn new file mode 100644 index 00000000..07900e0b --- /dev/null +++ b/doc/news/version_5.3.0.mdwn @@ -0,0 +1,16 @@ +propellor 5.3.0 released with [[!toggle text="these changes"]] +[[!toggleable text=""" + * Avoid bogus warning about new upstream version when /usr/bin/propellor + is run on a Debian system, but ~/.propellor was not cloned from the + Debian git bundle. + * Parted: Allow partitions to have no filesystem, for eg, GPT BIOS boot + partitions. (API change) + * Added rawPartition to PartSpec, for specifying partitions with no + filesystem. + * Added BiosGrubFlag to PartFlag. + * Add HasCallStack constraint to pickOS and unsupportedOS, so the + call stack includes the caller. + * Run su with --login, to avoid inheriting some problematic environment + variables, such as TMP, from the caller. + * Grub: Added properties to configure /etc/default/grub. + * Laptop: New module, starting with powertopAutoTuneOnBoot."""]] \ No newline at end of file -- cgit v1.3-2-g0d8e From 50600a71877fed94dae567a6ef5fc3b15c62b9b9 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sun, 4 Feb 2018 11:54:17 -0400 Subject: clean up after merge --- config.hs | 2 +- privdata/relocate | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) delete mode 100644 privdata/relocate diff --git a/config.hs b/config.hs index 97d90636..ec313725 120000 --- a/config.hs +++ b/config.hs @@ -1 +1 @@ -joeyconfig.hs \ No newline at end of file +config-simple.hs \ No newline at end of file diff --git a/privdata/relocate b/privdata/relocate deleted file mode 100644 index 271692d8..00000000 --- a/privdata/relocate +++ /dev/null @@ -1 +0,0 @@ -.joeyconfig -- cgit v1.3-2-g0d8e From ab7a7f421c9b57b5963a44e57a6a4df7c594aca6 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sun, 4 Feb 2018 11:58:42 -0400 Subject: Last release mistakenly contained my personal branch not master. * Last release mistakenly contained my personal branch not master. * contrib/post-merge-hook documentation updated to recommend also using it as a post-checkout hook, to avoid such problems. --- contrib/post-merge-hook | 4 ++-- debian/changelog | 8 ++++++++ propellor.cabal | 2 +- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/contrib/post-merge-hook b/contrib/post-merge-hook index fa9ab5b6..4bbb1de7 100755 --- a/contrib/post-merge-hook +++ b/contrib/post-merge-hook @@ -1,7 +1,7 @@ #!/bin/sh # -# git post-merge hook, used by propellor's author to maintain a -# joeyconfig branch with some changes while being able to merge +# git post-merge (and post-checkout) hook, used by propellor's author to +# maintain a joeyconfig branch with some changes while being able to merge # between it and branches without the changes. # # Each time this hook is run, it checks if it's on a branch with diff --git a/debian/changelog b/debian/changelog index b1fb27af..a0471182 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +propellor (5.3.1) UNRELEASED; urgency=medium + + * Last release mistakenly contained my personal branch not master. + * contrib/post-merge-hook documentation updated to recommend also using + it as a post-checkout hook, to avoid such problems. + + -- Joey Hess Sun, 04 Feb 2018 11:54:28 -0400 + propellor (5.3.0) unstable; urgency=medium * Avoid bogus warning about new upstream version when /usr/bin/propellor diff --git a/propellor.cabal b/propellor.cabal index f716b978..4f90c49c 100644 --- a/propellor.cabal +++ b/propellor.cabal @@ -1,5 +1,5 @@ Name: propellor -Version: 5.3.0 +Version: 5.3.1 Cabal-Version: >= 1.20 License: BSD2 Maintainer: Joey Hess -- cgit v1.3-2-g0d8e