summaryrefslogtreecommitdiff
path: root/src/Propellor
AgeCommit message (Collapse)Author
2015-11-11Add Propellor.Property.PropellorRepo.hasUrl, an explicit way to set the git ↵Joey Hess
repository url normally implicitly set when using --spin.
2015-11-01merge from concurrent-outputJoey Hess
2015-11-01run editor processes in foregroundJoey Hess
2015-11-01a few tweaks for concurrent outputJoey Hess
Force console mode when --spin calls SimpleRun
2015-11-01Revert "propellor spin"Joey Hess
This reverts commit 2891006d9f18b9f50b7d8dfc6d32e326499913f0.
2015-11-01propellor spinJoey Hess
2015-11-01take dkim out of test modeJoey Hess
2015-10-29generalize what can be outputJoey Hess
This adds a dependency on Text, but I don't mind propellor depending on it and am somewhat surprised it doesn't already. Using Text also lets this use encodeUtf8 instead of the nasty hack it was using to go from String -> ByteString.
2015-10-28propellor spinJoey Hess
2015-10-28propellor spinJoey Hess
2015-10-28have to flush concurrent output before printing result when chainingJoey Hess
2015-10-28fix bad MVar use, use STMJoey Hess
I had 2 MVars both involved in the same lock, and it seemed intractable to avoid deadlocks with them. STM makes it easy. At this point, the concurrent process stuff seems to work pretty well, but I'm not 100% sure it's not got some bugs.
2015-10-28need withConcurrentOutput to flush any buffered concurrent outputJoey Hess
2015-10-28use outputConcurrent interfaceJoey Hess
This interface will fix the current deadlock when a process is running and the thread that ran it wants to output to the console. The locking and buffering is not implemented yet.
2015-10-28remove debugJoey Hess
Found problem.. actionMessage is blocking.
2015-10-28propellor spinJoey Hess
2015-10-28propellor spinJoey Hess
2015-10-28propellor spinJoey Hess
2015-10-28split out generic ConcurrentOutput module to UtilityJoey Hess
2015-10-28concurrency docsJoey Hess
2015-10-27use execProcessConcurrent everywhereJoey Hess
Found a reasonable clean way to make Utility.Process use execProcessConcurrent, while still allowing copying updates to it from git-annex.
2015-10-27concurrent version of createProcessJoey Hess
Have not yet wired everything up to use this, that currently uses Utility.Process.
2015-10-27make Propellor.Message use lock to handle concurrent threads outputting messagesJoey Hess
Not yet handled: Output from concurrent programs.
2015-10-27use a shared global for the MessageHandleJoey Hess
2015-10-27Explicit Info/NoInfo for RevertableProperty (API change)Joey Hess
RevertableProperty used to be assumed to contain info, but this is now made explicit, with RevertableProperty HasInfo or RevertableProperty NoInfo. Transition guide: - If you define a RevertableProperty, expect some type check failures like: "Expecting one more argument to ‘RevertableProperty’". - Change it to "RevertableProperty NoInfo" - The compiler will then tell you if it needs "HasInfo" instead. - If you have code that uses the RevertableProperty constructor that fails to type check, use the more powerful <!> operator
2015-10-26Add File.isCopyOfPer Olofsson
Signed-off-by: Per Olofsson <pelle@dsv.su.se>
2015-10-24propellor spinJoey Hess
2015-10-24improve RevertableProperty combiningJoey Hess
* Various property combinators that combined a RevertableProperty with a non-revertable property used to yield a RevertableProperty. This was a bug, because the combined property could not be fully reverted in many cases. Fixed by making the combined property instead be a Property HasInfo. * combineWith now takes an addional parameter to control how revert actions are combined (API change).
2015-10-24Added Propellor.Property.Concurrent for concurrent properties.Joey Hess
Note that no output multiplexing is currently done.
2015-10-24simpliftJoey Hess
2015-10-23commentsJoey Hess
2015-10-23Hostname.sane and Hostname.setTo can now safely be used as a property of a ↵Joey Hess
chroot, and won't affect the hostname of the host system.
2015-10-23generalize checkJoey Hess
Hmm, do I really need my own type class for LiftPropellor? This seems like a general problem so I am probably reinventing the wheel.
2015-10-23allow specifying filesystem mount optionsJoey Hess
2015-10-23refactorJoey Hess
2015-10-23Changed how the operating system is provided to Chroot (API change).Joey Hess
* Where before debootstrapped and bootstrapped took a System parameter, the os property should now be added to the Chroot. * Follow-on change to Systemd.container, which now takes a System parameter. Two motivations for this change: 1. When using ChrootTarball, there may be no particular System that makes sense for the contents of the tarball, so don't force the user to specify one. 2. When creating a chroot for a disk image with the same properties as an existing Host, using hostProperties host to get them, this allows inheriting the os property from the host, and doesn't require it to be redundantly passed to Chroot.debootstrapped.
2015-10-23Add File.basedOnPer Olofsson
Signed-off-by: Per Olofsson <pelle@dsv.su.se>
2015-10-23propellor spinJoey Hess
2015-10-23HostName: Improve domain extraction code.Joey Hess
2015-10-23propellor spinJoey Hess
2015-10-23propellor spinJoey Hess
2015-10-23propellor spinJoey Hess
2015-10-23propellor spinJoey Hess
2015-10-23propellor spinJoey Hess
2015-10-23propellor spinJoey Hess
2015-10-23propellor spinJoey Hess
2015-10-23propellor spinJoey Hess
2015-10-23propellor spinJoey Hess
2015-10-23propellor spinJoey Hess
2015-10-23propellor spinJoey Hess