summaryrefslogtreecommitdiff
path: root/src/Propellor/Property/Borg.hs
AgeCommit message (Collapse)Author
2020-08-22Borg: use --umask after command for old borg versionsborg-umaskNicolas Schodet
2020-08-22Borg: add UseUmaskNicolas Schodet
2020-08-22Borg: use borg date formater instead of $(date ...)Nicolas Schodet
2020-08-10Borg: handle old borg versions and issue a warning if no archive is foundborg-fixesNicolas Schodet
The --last and --glob-archive options need borg version 1.1. Stop using these options and do the filtering in haskell. This had the side benefit of having better checkpoint filtering. Also issue a warning in case no archive is found.
2020-08-10Borg: fix restorationNicolas Schodet
When using borg extract, the result is extracted in the current directory. Also an archive name must be provided, so use the latest archive.
2020-08-10Borg.init: add the now required encryption type parameterNicolas Schodet
The encryption type is now a required parameter when creating a repository. Unless you use no encryption, you must provide the repository passphrase, for example: withPrivData (Password "backups") (Context "borg") $ \getdata -> property' "borg repo" $ \w -> getdata $ \privdata -> ensureProperty w $ Borg.init (Borg.BorgRepoUsing [Borg.UsesEnvVar ("BORG_PASSPHRASE", privDataVal privdata)] "/path/to/backups") Borg.BorgEncKeyfile
2019-01-18fix withOS type level bugJoey Hess
withOS had a type level bug that allowed ensureProperty to be used inside it with a Property that does not match the type of the withOS itself. Propellor.Property.Cron.runPropellor is a Property DebianLike; it was incorrectly a Property UnixLike before and that wrong type was hidden by the withOS bug. This commit was sponsored by Jack Hill on Patreon.
2018-10-09Borg: Added UsesEnvVar.Joey Hess
For eg, BORG_REMOTE_PATH needed to use borg on rsync.net This commit was sponsored by Jochen Bartl on Patreon.
2018-05-17Apt.installedBackport replaced with Apt.backportInstalledSean Whitton
Apt.installedBackport would do this: apt-get install -t stretch-backports foo bar Apt.backportInstalled does this: apt-get install foo/stretch-backports bar/stretch-backports The Apt.installedBackport behaviour can install the dependencies of foo and bar from stretch-backports even when the versions in stretch will satisfy the dependencies of the backports of foo and bar. So this property can result in very many more backports being installed on the host when intended. But the number of installed backports should always be minimised. Worse, whether this happens is highly dependent on the system state, and the order in which other properties get ensured. For example, & Apt.installed ["dgit"] & Apt.installedBackport ["dgit"] will install only dgit from stretch-backports, but unless debhelper and devscripts happen to already be installed, & Apt.installedBackport ["dgit"] & Apt.installed ["dgit"] will install dgit, debhelper, devscripts and maybe more from backports. This is surprising, difficult to debug, and breaks the expectation that when the order in which properties are ensured is not specified with connectives like `requires` and `before`, ensuring them in any order will produce the same result. Property renamed because user configs should not silently break, as they would if they did not list dependencies that must be installed from stable-backports. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
2017-10-19Use isUnpopulated when creating a chroot or restoring a backupignore-lost-n-foundNicolas Schodet
2017-09-25Borg: Fix handling of UseSshKey.Joey Hess
2017-09-25Borg: Fix propigation of exit status of borg backup.Joey Hess
2017-09-25expand BorgRepo, allowing ssh private key to be specifiedJoey Hess
* Borg: Converted BorgRepo from a String alias to a data type. (API change) * Borg: Allow specifying ssh private key to use when accessing a borg repo by using the BorgRepoUsing constructor with UseSshKey. This commit was sponsored by Jeff Goeke-Smith on Patreon.
2017-09-25borg repo is not necessarily a local fileJoey Hess
2017-08-25Borg: Fix broken shell escaping in borg cron job.Joey Hess
2017-08-25clarify commentJoey Hess
And, the borg property adds a :: , so don't need that in the use on branchable.
2017-02-26use val instead of showJoey Hess
2016-06-13add DebianKernel datatypeFélix Sipma
(cherry picked from commit 3590a1241580ddcdd153e2619a3c02ce18a8db8c but without the changes to src/Propellor/Precompiled.hs)
2016-05-17add descriptionsJoey Hess
2016-05-15add Borg moduleFélix Sipma