<feed xmlns='http://www.w3.org/2005/Atom'>
<title>propellor/src/wrapper.hs, branch master</title>
<subtitle>gnusosa's centralized propellor repository for hosts spin-up.
</subtitle>
<id>https://git.gnusosa.net/propellor/atom?h=master</id>
<link rel='self' href='https://git.gnusosa.net/propellor/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/'/>
<updated>2018-04-22T16:19:40Z</updated>
<entry>
<title>separate Hs-Source-Dirs for binaries</title>
<updated>2018-04-22T16:19:40Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2018-04-22T16:15:35Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=d8d2faece72eabd18c2ff303e5fb63c3a69961f6'/>
<id>urn:sha1:d8d2faece72eabd18c2ff303e5fb63c3a69961f6</id>
<content type='text'>
This is a trick I only just learned about, see
https://stackoverflow.com/questions/6711151/how-to-avoid-recompiling-in-this-cabal-file#6711739

Significantly increased propellor build speed when your config.hs is in
a fork of the propellor repository, by avoiding redundant builds of
propellor library.

Also avoids needing to list all the build deps 3 times.

Also avoids cabal 2.x wanting every module to be listed 3 times.

Note that the bulk of wrapper.hs had to move into the propellor library,
since that code depended on stuff not exposed by the library.

This commit was sponsored by Henrik Riomar on Patreon.
</content>
</entry>
<entry>
<title>GHC's fileSystemEncoding is used for all String IO, to avoid encoding-related crashes in eg, Propellor.Property.File.</title>
<updated>2016-12-24T19:14:05Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2016-12-24T19:14:05Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=44bf67b7a2da75ef80e32d6409cc41a6ab8b6ffe'/>
<id>urn:sha1:44bf67b7a2da75ef80e32d6409cc41a6ab8b6ffe</id>
<content type='text'>
</content>
</entry>
<entry>
<title>check that config.hs mentions "Propellor"</title>
<updated>2016-11-12T05:41:30Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2016-11-12T05:41:30Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=bde6a58ef862ab01ee89a07d815fad4a51361b5b'/>
<id>urn:sha1:bde6a58ef862ab01ee89a07d815fad4a51361b5b</id>
<content type='text'>
from eg, "import Propellor"
</content>
</entry>
<entry>
<title>The propellor wrapper checks if ./config.hs exists; if so it runs using the configuration in the current directory, rather than ~/.propellor/config.hs</title>
<updated>2016-11-12T05:34:19Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2016-11-12T05:34:19Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=b4adaf75a36d6d6425df820c46023a32e79bb6df'/>
<id>urn:sha1:b4adaf75a36d6d6425df820c46023a32e79bb6df</id>
<content type='text'>
The config,hs name now seems a bit badly chosen, propellor.hs would be less
ambiguous. To avoid accidentially running with a config.hs for something
else, the file content has to contain "Propellor".

Note that checkRepoUpToDate is only run for ~/.propellor/. I guess
propellor configs in other directories won't have been set up that way,
and it would take some changes to make that not hardcode use of
dotPropellor.

There's a new security boundary here, since running propellor looks at the
cwd, whose contents might not be user the user's control. The security
checks I added for this seem pretty good, but even if they can be bypassed,
this is not much different than `make` using the Makefile in cwd.

This commit was sponsored by Ole-Morten Duesund on Patreon.
</content>
</entry>
<entry>
<title>Fix build with directory-1.2.6.2.</title>
<updated>2016-04-28T19:31:35Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2016-04-28T19:31:35Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=2e513dc98c51eca1cdfce3715b4a017be39734f7'/>
<id>urn:sha1:2e513dc98c51eca1cdfce3715b4a017be39734f7</id>
<content type='text'>
It's now exporting a conflicting isSymbolicLink
https://github.com/haskell/directory/issues/52

Only a few places in propellor use isSymbolicLink, but to prevent future
problems, made as much of it as possible import Utility.Directory, which
re-exports System.Directory without the conflicting symbol.

(Utility.Tmp and System.Console.Concurrent.Internal cannot import
Utility.Directory due to cycles, and don't use isSymbolicLink anyway.)
</content>
</entry>
<entry>
<title>make sure that the wrapper runs propellor in the foreground</title>
<updated>2016-04-02T05:59:38Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2016-04-02T05:59:38Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=db2d46246c5772c12aa8cf64ea604b65d164a7b0'/>
<id>urn:sha1:db2d46246c5772c12aa8cf64ea604b65d164a7b0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>typo</title>
<updated>2016-04-02T05:52:09Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2016-04-02T05:51:01Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=828830eace62dba7d75b656142d83f8396fd2968'/>
<id>urn:sha1:828830eace62dba7d75b656142d83f8396fd2968</id>
<content type='text'>
</content>
</entry>
<entry>
<title>avoid wrapper building propellor unnessessarily</title>
<updated>2016-04-02T05:49:01Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2016-04-02T05:49:01Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=1c70d2e18917973723bf836fdc1f789532d96811'/>
<id>urn:sha1:1c70d2e18917973723bf836fdc1f789532d96811</id>
<content type='text'>
</content>
</entry>
<entry>
<title>separate propellor --init</title>
<updated>2016-04-02T01:20:13Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2016-04-02T01:20:13Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=1dc914a71c94e0395641565e5891a2dc33ba1b35'/>
<id>urn:sha1:1dc914a71c94e0395641565e5891a2dc33ba1b35</id>
<content type='text'>
</content>
</entry>
<entry>
<title>setup gpg key in initial setup process</title>
<updated>2016-04-01T23:48:23Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2016-04-01T23:34:27Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=93b083f3a1204a7cf4452b5ebd589dd77d25dbac'/>
<id>urn:sha1:93b083f3a1204a7cf4452b5ebd589dd77d25dbac</id>
<content type='text'>
</content>
</entry>
</feed>
