path: root/src/Propellor/Property/Apt.hs
AgeCommit message (Collapse)Author
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 <>
2018-04-18Apt.stdSourcesList now adds stable-updates suiteSean Whitton
Signed-off-by: Sean Whitton <>
2018-03-01Apt.trustsKey: Use apt-key to add key rather than manually driving gpg, ↵Joey Hess
which seems to not work anymore. Thanks, Russell Sim.
2017-11-20prevent Sbuilt.useHostProxy from looping by not peeking too earlyJoey Hess
2017-09-25Apt.isInstalled: Fix handling of packages that are not known at all to apt.Joey Hess
getInstallStatus returns [] when passed only such packages, and all of that list == IsInstalled. So also check that the list contains every package queried.
2017-07-15add a description for Apt.useLocalCacherSean Whitton
2017-07-15drop suggestion to use Apt.mirror for a LAN apt cacherSean Whitton
It is probably best to use Apt.proxy for this.
2017-07-15add Apt.proxy, Apt.useLocalCacherSean Whitton
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-19shorten names of mirror propertiesSean Whitton
2017-03-19add Apt.hostMirrorIsSean Whitton
2017-03-19improve error msg from Apt.getHostMirrorSean Whitton
2017-03-19add Ubuntu std mirror to Apt.hsSean Whitton
2017-03-19replace debCdn with stdArchiveLinesSean Whitton
Though stdArchiveLines is not used in Apt.hs, this is the logical replacement for the old debCdn property.
2017-03-19replace use of debCdn in Apt.hsSean Whitton
2017-03-19add withHostMirror helperSean Whitton
2017-03-19add HostMirror info typeSean Whitton
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-02-26use val instead of showJoey Hess
2017-02-13deb.debian.orgJoey Hess
* Apt: Removed the line from stdSourcesList etc. The mirror CDN has a new implementation that should avoid the problems with httpredir that made an extra mirror sometimes be needed. * Switch Debian CDN address to points to the same IPs as now, so this shouldn't change anything except to use the now preferred name.
2017-02-04AptPrefPackage -> AptPackagePrefSean Whitton
This reads much better: it's an "apt package preference".
2017-02-04Apt.pinnedTo takes a list of suites and pin prioritiesSean Whitton
2017-02-04factor out suitePinBlockSean Whitton
2017-02-04rm superfluous TODOSean Whitton
2017-02-02add Explanation: lines to pref filesSean Whitton
2017-02-02drop a superfluous blank line in pref fileSean Whitton
2017-02-02fix type of Apt.pinnedToSean Whitton
2017-02-02AptPrefPackage typeSean Whitton
2017-02-02Apt.pinnedTo uses File.configFileNameSean Whitton
2017-01-31more spacingSean Whitton
2017-01-31neaten the prefs file Apt.pinnedTo generatesSean Whitton
2017-01-31spacingSean Whitton
2017-01-31describe Apt.pinnedToSean Whitton
2017-01-31pass a tuple to Apt.pinnedToSean Whitton
This permits calling Apt.pinnedTo infix
2017-01-31suiteAvailablePinned avoids pinning backportsSean Whitton
2017-01-31implement Apt.pinnedToSean Whitton
2017-01-30commented hackingSean Whitton
2017-01-30TODOSean Whitton
2017-01-30fix swapped sourceFile & prefFileSean Whitton
2017-01-30refactor to fix type errorsSean Whitton
2017-01-30pin even if hostSuite == suiteSean Whitton
2017-01-30tweak stubSean Whitton
2017-01-30implement suiteAvailablePinnedSean Whitton
2017-01-30pin property prototypesSean Whitton
2017-01-19add Apt.noPDiffsSean Whitton
2016-06-18Really make Apt.install fail when asked to install a package that apt does ↵Joey Hess
not know about
2016-06-17Apt.install: When asked to install a package that apt does not know about, ↵Joey Hess
it used to incorrectly succeed. Now it will fail.
2016-06-13add DebianKernel datatypeFélix Sipma
(cherry picked from commit 3590a1241580ddcdd153e2619a3c02ce18a8db8c but without the changes to src/Propellor/Precompiled.hs)
2016-04-05Apt.unattendedUpgrades: mail rootFélix Sipma
2016-04-05add commentsJoey Hess