diff options
author | Joey Hess <joeyh@joeyh.name> | 2018-01-24 13:32:04 -0400 |
---|---|---|
committer | Joey Hess <joeyh@joeyh.name> | 2018-01-24 13:32:04 -0400 |
commit | a730bbda2b91cf2bac9b63be8647ba322691e57f (patch) | |
tree | 0e8e7a13dc3741a362577387ac729406df7b7bdb /doc | |
parent | d79367b4324dec67d929f18239e4159cf8b4d890 (diff) |
Add HasCallStack constraint to pickOS and unsupportedOS, so the call stack includes the caller.
This commit was sponsored by Jochen Bartl on Patreon.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/forum/__34__Unknown_host_OS__34___after_merging_recent_propellor/comment_1_6ed53a6752f3f88acce023a4fe1b9bf6._comment | 27 |
1 files changed, 27 insertions, 0 deletions
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 +<https://wiki.haskell.org/Debugging#Stack_trace>. 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. +"""]] |