| Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
* Added ConfigurableValue type class, for values that can be used in a
config file, or to otherwise configure a program.
* The val function converts such values to String.
This was motivated by the bug caused by type Port = Int changing to
newtype Port = Port Int deriving Show
After that change, some things that used show port to generate config
files were broken. By using the ConfigurableValue type class instead,
such breakage can be prevented.
|
|
|
|
* Arch Linux is now supported by Propellor!
Thanks to Zihao Wang for this port.
* Added Propellor.Property.Pacman for Arch's package manager.
Maintained by Zihao Wang.
* The types of some properties changed; eg from Property DebianLike
to Property (DebianLike + ArchLinux). This could require updates
to code using those properties, so is a minor API change.
|
|
|
|
This is to allow multiple admins of iabak to access the privdata. Since
there's a single privdata file for all machines in a propellor
deployment, and I don't want them to see all my secrets, we needed to
break it out.
|
|
|
|
|
|
|
|
ghc 7 does not support -fno-warn-redundant-constraints so this can't be
done on a per-module basis.
It would be good to revert this commit when dropping support for ghc 7.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Sadly my bug report about this is not going to get fixed it seems, so
I have to drag around a whole added module file just to deal with it.
https://github.com/haskell/directory/issues/52
|
|
|
|
|
|
|
|
Paths_propellor prevents use of the module out of propellor's tree.
Failure looked like:
/home/lukas/.propellor/.cabal-sandbox/lib/x86_64-linux-ghc-7.10.3/propellor-3.0.
1-0JokOieT9kY9W7enKSzFHh/libHSpropellor-3.0.1-0JokOieT9kY9W7enKSzFHh.a(DotDir.o)
:(.text+0x591): undefined reference to `propezu0JokOieT9kY9W7enKSzzFHh_Pathszupropellor_getLibDir_closure'
This module is only needed for the wrapper program anyway, which handles --init.
This does mean that ./propellor --init in propellor's tree will fail even
though the help shows --init as an option.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Stack support. "git config propellor.buildsystem stack" will make
propellor build its config using stack.
* When propellor is installed using stack, propellor --init will
automatically set propellor.buildsystem=stack.
|
|
|
|
The config-simple file now shows:
1. Adding PPAs
2. Adding apt keys from a remote keyserver
3. Adding apt sources
4. Installing signed packages from a new repository.
|
|
Using the external concurrent-output library lets it be built with -O2 as
is needed to get good runtime memory use.
Enabling -O0 because ghc is using rather a lot more time and memory due to
the new more complex types.
old master branch:
Linking dist/build/propellor-config/propellor-config ...
24.59user 0.97system 0:25.93elapsed 98%CPU (0avgtext+0avgdata 354612maxresident)k
1544inputs+46064outputs (0major+371244minor)pagefaults 0swaps
this branch before -O0:
Linking dist/build/propellor-config/propellor-config ...
25.56user 0.73system 0:26.61elapsed 98%CPU (0avgtext+0avgdata 345348maxresident)k
0inputs+43480outputs (0major+364163minor)pagefaults 0swaps
this branch with -O0:
Linking dist/build/propellor-config/propellor-config ...
11.91user 0.75system 0:12.97elapsed 97%CPU (0avgtext+0avgdata 237472maxresident)k
16inputs+37264outputs (0major+336166minor)pagefaults 0swaps
Above benchmarks are building all source files needed by config-simple.hs.
The story is rather worse for joeyconfig.hs; building it now needs over 500 mb
even with -O0 :-/
|
|
|
|
|
|
Renamed several utility functions along the way.
|
|
|
|
|
|
Moved to its own module to keep everything related in one place.
|
|
|
|
|
|
|
|
|