summaryrefslogtreecommitdiff
path: root/debian
AgeCommit message (Collapse)Author
2017-07-10Export a Restic.backup' property. Thanks, Félix Sipma.Joey Hess
2017-07-06releasing package propellor version 4.3.2Joey Hess
2017-07-06Really include Propellor.Property.FreeDesktop.Joey Hess
2017-07-06releasing package propellor version 4.3.1Joey Hess
2017-07-06Added reservedSpacePercentage to the PartSpec EDSL.Joey Hess
2017-07-05Added Propellor.Property.FreeDesktop module.Joey Hess
This commit was sponsored by Trenton Cronholm on Patreon.
2017-07-05releasing package propellor version 4.3.0Joey Hess
2017-07-05DiskImage: Removed grubBootedJoey Hess
Properties that used to need it as a parameter now look at Info about the bootloader that is installed in the chroot that the disk image is created from. (API change) This is a simplication, and avoids the user needing to repeat themselves in the propellor config, thus avoiding mistakes. When no boot loader is installed, or multiple different ones are, disk image creation will fail, which seems reasonable. This commit was sponsored by Jake Vosloo on Patreon.
2017-07-05releasing package propellor version 4.2.0Joey Hess
2017-07-05Image.grubBooted no longer takes a BIOS parameterJoey Hess
* DiskImage.grubBooted no longer takes a BIOS parameter, and no longer implicitly adds Grub.installed to the properties of the disk image. If you used DiskImage.grubBooted, you'll need to update your propellor configuration, removing the BIOS parameter from grubBooted and adding a Grub.installed property to the disk image, eg: & Grub.installed PC (API change) * Grub.installed: Avoid running update-grub when used in a chroot, since it will get confused. * DiskImage.Finalization: Simplified this type since it does not need to be used to install packages anymore. (API change) The advantage of doing this comes when using hostChroot with imageBuilt, since the Host then has its Grub.installed property explicitly listed so propellor knows about it when otherwise deploying that host. Also, it simplifies the quite complex imageBuilt parameters. This commit was sponsored by Ewen McNeill.
2017-07-05releasing package propellor version 4.1.0Joey Hess
2017-07-05Added File.checkOverwrite.Joey Hess
This commit was sponsored by Ethan Aubin.
2017-07-05File.isCopyOf: Fix bug that prevented this property from working when the ↵Joey Hess
destination file did not yet exist. This commit was sponsored by andrea rota.
2017-07-05XFCE and applyPath propertiesJoey Hess
* Propellor.Property.XFCE added with some useful properties for the desktop environment. * Added File.applyPath property. This commit was sponsored by Riku Voipio.
2017-07-05LightDM.autoLogin: Make it require LightDM.installedJoey Hess
(minor API change as the type changed)
2017-07-05avoid buffering container chain outputJoey Hess
When provisioning a container, output was buffered until the whole process was done; now output will be displayed immediately. I know this didn't used to be a problem. I belive it was introduced by accident when propellor started using concurrent-output. I know I've seen it for a while and never was bothered enough to get to the bottom of it; apparently "a while" was longer than I thought. Also refactored code to do with chain provisioning to all be in Propellor.Engine and avoided some duplication. This commit was sponsored by Anthony DeRobertis on Patreon.
2017-07-04Bootstrap.bootstrappedFrom: Avoid doing anything when not run in a chroot.Joey Hess
This way, when a disk image is built using this property, and booted up, running propellor won't try to ensure this property again. This commit was sponsored by Jeff Goeke-Smith on Patreon.
2017-07-04Bootstrap.bootstrappedFrom: Fix bug that caused propellor to only be built ↵Joey Hess
from the bootstrapped config the first time. When the config changes, the bootstrapped propellor needs to get rebuilt. This commit was sponsored by Fernando Jimenez on Patreon.
2017-07-04Diskimage.imageExists: Align disk image size to multiple of 4096 sector sizeJoey Hess
Since some programs (such as VBoxManage convertdd) refuse to operate on disk images not aligned to a sector size. This commit was sponsored by Boyd Stephen Smith Jr. on Patreon.
2017-07-04Bootstrap.clonedFrom: Fix bug that broke copying .git/config into chroot.Joey Hess
2017-06-28addJoey Hess
2017-06-20User.hasInsecurePassword makes sure shadow passwords are enabledJoey Hess
So if the insecure password is later changed, the new password won't be exposed.
2017-06-18releasing package propellor version 4.0.6Joey Hess
2017-06-18Fix bug that sometimes made --spin fail with "fatal: Couldn't find remote ↵Joey Hess
ref HEAD" Tricky stdin buffering problem. An easier fix would have been: hSetBuffering stdin NoBuffering But that approach is less robust; even with NoBuffering, anything that uses hLookAhead causes 1 byte of buffering. And, any reads from stdin before hSetBuffering would still cause the problem. Instead, I used a bigger hammer that will always work. It involves a bit more CPU work, but this is data that is already being fed through ssh; copying it one more time won't cause a measurable performance impact. This commit was sponsored by Jack Hill on Patreon.
2017-06-18Display error and warning messages to stderr, not stdout.Joey Hess
2017-06-03Switch cabal file from Extensions to Default-Extensions to fix new picky ↵Joey Hess
hackage rejection.
2017-06-03releasing package propellor version 4.0.4Joey Hess
2017-05-15mergeJoey Hess
2017-05-15Merge branch 'master' into joeyconfigJoey Hess
2017-05-15Removed dependency on MissingH, instead depends on split and hashable.Joey Hess
MissingH is a heavy dependency, which pulls in parsec and a bunch of stuff. So eliminating it makes propellor easier to install and less likely to fail to build. changesFileContent now uses hashable's hash. This may not be stable across upgrades, I'm not sure -- but it's surely ok here, as the hash is not stored. socketFile also uses hash. I *think* this is ok, even if it's not stable. If it's not stable, an upgrade might make propellor hash a hostname to a different number, but with 9 digets of number in use, the chances of a collision are small. In any case, I've opned a bug report asking for the stability to be documented, and I think it's intended to be stable, only the documentation is bad. NB: I have not checked that the arch linux and freebsd packages for the new deps, that Propellor.Bootstrap lists, are the right names or even exist. Since propellor depends on hashable, it could be changed to use unordered-containers, rather than containers, which would be faster and perhaps less deps too. This commit was sponsored by Alexander Thompson on Patreon.
2017-04-27Propellor.Property.Restic added for yet another backup program. Thanks, ↵Joey Hess
Félix Sipma.
2017-04-20releasing package propellor version 4.0.3Joey Hess
2017-04-09doneJoey Hess
2017-04-06tweaks to db45x's patchJoey Hess
Removed mountNow as a top-level property, as I don't think it makes sense for anything except for mounted to use it. db45x's patch turns out to have introduced a bug in mounted's use of "mountNow src". That made mountNow check if the device was a mount point, which it isn't. The fix would have been to use "mountNow mnt", but my inlining of mountnow just basically reverted the part of the patch that introduced the bug. swapOn does not involve the fstab so moved to the Mount module. (Also noticed that Mount.mounted is a kind of weird property, given that it fails the next time ran. It's only used internally by some chroot properties, so I left it as-is, but added a comment. It might make sense to make Mount.mounted check like mountNow does if the thing is already mounted.)
2017-03-24releasing package propellor version 4.0.2Joey Hess
2017-03-24fix diskimage finalization bugJoey Hess
* Fix bug when using setContainerProps with a chroot that prevented properties added to a chroot that way from being seen when propellor was running inside the chroot. This affected disk image creation, and possibly other things that use chroots. The problem was, propagateChrootInfo was being passed the initial version of the Chroot, but then the Chroot got more properties added, and so those were not recorded in the _chroot info. Fix was simply to make InfoPropagator be passed the Chroot as an additional parameter, so Chroot.provisioned' can pass in the final Chroot to it.
2017-03-24Merge branch 'master' into joeyconfigJoey Hess
2017-03-24Property.Partition: Update kpartx output parser, as its output format ↵Joey Hess
changed around version 0.6. Both output formats are supported now. Do we trust kpartx to not change again, given how little documented its output format is and that it's changed w/o warning? Little other things like vmdebootstrap depend on its output in the same way.. This commit was sponsored by Ignacio on Patreon.
2017-03-24Property.Partition: Improve loop device detection code used with kpartx when ↵Joey Hess
building disk images. /dev/mapper/loop* symlinks are now detected as block devices.
2017-03-19Apt.mirror can be used to set the preferred apt mirror of a host, overriding ↵Joey Hess
the default CDN. This info is used by Apt.stdSourcesList and Sbuild.builtFor. Thanks, Sean Whitton.
2017-03-19releasing package propellor version 4.0.1Joey Hess
2017-03-19Merge branch 'joeyconfig'Joey Hess
2017-03-19Tor.named, Tor.torPrivKey: Include the new ed25519 public/private key pair ↵Joey Hess
in addition to the old secret_id_key.
2017-03-18Tor: Restart daemon after installing private key.Joey Hess
2017-03-18Fix build with pre-AMP ghc.Joey Hess
2017-03-15more changelogJoey Hess
2017-03-15prep releaseJoey Hess
2017-03-15Added Monoid instances for Property and RevertableProperty.Joey Hess
* Added Monoid instances for Property and RevertableProperty. * Removed applyToList. Instead, use mconcat. (API change) Eg, if you had: applyToList accountFor [User "joey", User "root"] use instead: mconcat (map accountFor [User "joey", User "root"]) mappend x y is basically the same as x `before` y. In particular, if x fails to be ensured, it won't ensure y. This seems to make sense, since applyToList had that behavior, and so does the Monoid for Propellor Result. The alternative would be to try to ensure both and combine the results. However, I don't see any reason to do it that way. It would be nice if the description of both properties were displayed when ensuring the combination. But then, it would need to display eg: ensuring x..ok ensuring y..failed ensuring x and ensuring y..failed Without a way to get rid of that redundant last line, I don't want to do that. Note that the haddocks for the Monoid instances need a really wide screen to display! This is IMHO an infelicity in haddock, and I can't do anything about it really. This commit was sponsored by Fernando Jimenez on Patreon.
2017-03-15Property types changed to use a Maybe (Propellor Result). (API change)Joey Hess
* Property types changed to use a Maybe (Propellor Result). (API change) * When Nothing needs to be done to ensure a property, propellor will avoid displaying its description at all. The doNothing property is an example of such a property. This is mostly in preparation for Monoid instances for Property types, but is's also nice that anything that uses doNothing will avoid printing out any message at all. At least, I think it probably is. It might potentially be confusing for something that sometimes takes an action and sometimes resolves to doNothing and in either case has a description set to not always show the description. If this did turn out to be confusing, the change to doNothing could be reverted. This commit was sponsored by Boyd Stephen Smith Jr. on Patreon.
2017-03-11don't propagate DNS info from DiskImage chrootsJoey Hess
* DiskImage building properties used to propagate DNS info out from the chroot used to build the disk image to the Host. That is no longer done, since that chroot only exists as a side effect of the disk image creation and servers will not be running in it. * The IsInfo types class's propagateInfo function changed to use a PropagateInfo data type. (API change) This is particularly important when using hostChroot, since the host could well have DNS settings then. This commit was sponsored by Ole-Morten Duesund on Patreon.