about summary refs log tree commit diff
path: root/modules
Commit message (Collapse)AuthorAgeFilesLines
* Add a new module and test for gpg-agentaszlig2016-04-025-0/+671
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since NixOS/nixpkgs@5391882 there no longer is the option to start the agent during X session startup, which prompted me to write this module. I was unhappy how GnuPG is handled in NixOS since a long time and wanted to OCD all the configuration files directly into the module. Unfortunately, this is something I eventually gave up because GnuPG's design makes it very hard to preseed configuration. My first attempt was to provide default configuration files in /etc/gnupg, but that wasn't properly picked up by GnuPG. Another way would have been to change the default configuration files, but that would have the downside that we could only override those configurations using command line options for each individual GnuPG component. The approach I tried to go for was to patch GnuPG so that all the defaults are directly set in the source code using a giant sed expression. It turned out that this approach doesn't work very well, because every component has implemented its own ways how to handle commandline arguments versus (default) configuration files. In the end I gave up trying to OCD anything related to GnuPG configuration and concentrated just on the agent. And that's another beast, which unfortunately doesn't work very well with systemd. While searching the net for existing patches I stumbled upon one done by @shlevy: https://lists.gnupg.org/pipermail/gnupg-devel/2014-November/029092.html Unfortunately, the upstream author seems to be quite anti-systemd and didn't want to accept that into the upstream project. Because of this I went for using LD_PRELOAD to pick up the file descriptors provided by the systemd sockets, because in the end I don't want to constantly catch up with upstream and rebase the patch on every new release. Apart from just wrapping the agent to be socket activated, we also wrap the pinentry program, so that we can inject a _CLIENT_PID environment variable from the LD_PRELOAD wrapper that is picked up by the pinentry wrapper to determine the TTY and/or display of the client communicating with the agent. The wrapper uses the proc filesystem to get all the relevant information and passes it to the real pinentry. The advantage of this is that we don't need to do things such as "gpg-connect-agent updatestartuptty /bye" or any other workarounds and even if we connect via SSH the agent should be able to correctly pick up the TTY and/or display. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* aszlig/profiles: Move VirtualBox to dnyarri onlyaszlig2016-03-211-2/+0
| | | | | | | Actually this is the *only* machine where I actually use VirtualBox, on every other machine I'm fine with qemu/KVM. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* aszlig/profiles: Use full source info for nix-replaszlig2016-03-211-2/+4
| | | | | | | | Using overrideDerivation on fetchFromGitHub is going to only override the attributes from fetchzip, because fetchFromGitHub isn't directly overridable. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* aszlig/profiles: Fix build of nix-replaszlig2016-03-211-0/+8
| | | | | | | | As of edolstra/nix-repl@8a2f5f0, this won't build with current nixUnstable (version 1.12pre4509_69f28eb) and it already has been fixed upstream (edolstra/nix-repl#25 and edolstra/nix-repl@ff8d069). Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* modules/starbound: Fix setting serverUsersaszlig2016-03-151-1/+3
| | | | | | | | | | | | | | | | | | | | | | Not a big deal because Starbound ignores unknown nodes, but having something like this in the resulting config file is a bit ugly: { "serverUsers" : { "user1" : { "_module" : { "args" : { "name" : "user1" }, "check" : true }, "admin" : false, "password" : "passwd1" } } } Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* modules/starbound: Fix non-existing <value/> tagaszlig2016-03-151-2/+3
| | | | | | | Docbook XSL doesn't have such a tag and it really should be <literal/> instead. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* modules/starbound: Provide description for usersaszlig2016-03-151-0/+4
| | | | | | Geesh, forgot to add it in b5ef6a6f32ebed51255918ed100c12e8dfa165c6. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* modules/starbound: Provide defaultText for packageaszlig2016-03-151-0/+1
| | | | | | | We don't want to evaluate the package while building the manual, so let's provide a defaultText instead. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* modules: Add new Starbound service and testaszlig2016-03-152-0/+319
| | | | | | | | | | | | | | | | | | | | | Very preliminary and doesn't have all the option descriptions right, nor does it have convenience features such as setting allowAdminCommands based on whether any users are defined with admin privileges. Of course the latter needs to undergo the decision on how to handle RCON connections, because the latter *might* need that option. But apart from that single option, there are a lot more options we need to flesh out. Also, the test currently is very limited and only spins up a client, connects to the server and does a movement (just walk to the right). Needless to say, it's even quite fragile and relies on OCR to properly detect the custom pixel fonts from Starbound. Which unfortunately fails most of the time. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profiles/tests: Fix up upstream test namesaszlig2016-03-011-5/+11
| | | | | | | With NixOS/nixpkgs#13585 landing (NixOS/nixpkgs@f70ec0d) in master, the tests are now named differently, so we need to fix it. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* rtl8192cu: Move enableRTL8192cFirmware from tyreeaszlig2016-03-011-0/+1
| | | | | | | | | | | This really is specific to the RTL8192CX chipset and I originally was using this for tyree along with the mainline kernel modules. Unfortunately, I had connection drop outs so I switched to the original Realtek driver, which is now vuizvui.hardware.rtl8192cu, so the firmware is used and should be enabled there as well. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* modules: Add hardware module for RTL8192CUaszlig2016-03-012-0/+48
| | | | | | | | It's actually a backport of Realtek's own USB WiFi driver that is not (yet?) in mainline. I'm using this for tyree (the T100HA) because the internal WiFi card isn't recognized by SDHCI yet. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* hardware/t100ha: Work around vblank issueaszlig2016-03-011-0/+11
| | | | | | | | | | Essentially forcing DPMS standby and bringing it on again for now mitigates the vblank issue with the I915 driver. Of course in the long term I need to debug this properly, but for now this works consistently so I'll leave it that way. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* hardware/t100ha: Switch to linux-next with patchesaszlig2016-03-014-1028/+292
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Both of these patches are from the following Google Drive: https://drive.google.com/folderview?id=0B4DiU2o72FbuejQ1S2VZZW5xV2c The meta-keys-asus.patch (which is called just meta-keys.patch in this repository) is used verbatim. However, the baytrail-backlight.4.4.patch (here just backlight.patch) is a rebased version of the patch from the Google Drive with a few modifications by me, which boils down to: * Remove the module parameter force_backlight_pmic, because this module is hardware-specific so we don't actually need to do that (and *if* we want to do that we'd compile it in directly). * Add an unused pipe function argument to vlv_pmic_setup_backlight(). As the backlight patch introduces the functions intel_soc_pmic_readb() and intel_soc_pmic_writeb() which are not available at module link time, I have also added DRM_I915 to be compiled into the kernel. In addition I needed to disable VIDEO_EM28XX and RAPIDIO, because they do not compile with linux-next-20160226 and I didn't bother to provide fixes because it's for hardware that is not existing on the T100HA. Note that I'm using linux-next-20160226 here instead of 20160229 because the latter has some networking I/O issues right now. This makes the backlight, battery status and charging usable on the T100HA and the fixes from the drm-intel-fixes branch are no longer needed because they're already in linux-next-20160229. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* hardware/t100ha: Compile in INTEL_SOC_PMICaszlig2016-03-011-0/+1
| | | | | | | | | So far INTEL_SOC_PMIC hasn't been enabled *at* *all* so there wasn't any battery status available nor did it charge while the system was running. Enabling INTEL_SOC_PMIC now solves this issue. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* programs/scanning: Fix module descriptionaszlig2016-03-011-1/+1
| | | | | | | The output is docbook XSL, so we need to properly turn ampersands into entities. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* programs/git: Flesh out type info for Git configaszlig2016-03-011-8/+3
| | | | | | | This now is a little more accurate than providing the name and a propagation of types.unspecified. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profiles/tests: Update upstream tests.aszlig2016-02-281-3/+12
| | | | | | | | | | | | | | In NixOS/nixpkgs@d4636fa, the nixosPinVersion got removed, so we need to avoid evaluating it. Some other tests were added in the meantime, namely: * PostgreSQL (NixOS/nixpkgs@109ba4c) * Grsecurity (NixOS/nixpkgs@dd18447) * initrd-network (NixOS/nixpkgs@cc925d0) * Mathics (NixOS/nixpkgs@fe8498f) Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* hardware/thinkpad: mkDefaultOpenlab Labtop2016-02-241-3/+3
|
* modules/thinkpad: Move into modules/hardwareaszlig2016-02-232-1/+1
| | | | | | | | | | | | | We already have a directory just for hardware-specific configuration options and the module option already says "vuizvui.hardware", so it should better be consistent with the directory layout. Tested using: nix-instantiate release.nix -A machines.profpatsch.katara Signed-off-by: aszlig <aszlig@redmoonstudios.org> Cc: @Profpatsch
* hardware/t100ha: Add custom kernel + patchesaszlig2016-02-232-6/+1057
| | | | | | | | | | | | | | The custom kernel has built in modules for the MMC storage and a small patch which is essentially diff of the merge of the "drm-intel-fixes" branch from git://anongit.freedesktop.org/drm-intel against 4.5-rc5. This is the HEAD of what I have merged: https://cgit.freedesktop.org/drm-intel/commit/?h=drm-intel-fixes&id=9b18572e83bfd5378b3fcff3acf123f7bddf558a Eventually these fixes will hit mainline so we can drop them very soon. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* hardware/t100ha: Rotate the touch screen as wellaszlig2016-02-231-0/+7
| | | | | | | | | This may need some calibration as well, but I don't have a stylus to do it very precisely so I'm leaving this to the defaults because I tried to calibrate it using my monstrous fingers and it got worse than the defaults. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* hardware/t100ha: Set videoDriver to "intel"aszlig2016-02-231-0/+1
| | | | | | | We already know the display device for this particular type of hardware, so there is no need to probe different video drivers. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* hardware/t100ha: Rotate monitor in Xorg as wellaszlig2016-02-231-0/+8
| | | | | | | We already rotate the fbcon display, but we need to make sure we also apply the rotation to the X server. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* aszlig/kernel: Update to latest upstream masteraszlig2016-02-221-3/+3
| | | | | | By coincidence I now got *exactly* the -rc5 tag :-) Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* Use users.users/users.groups instead of extra*aszlig2016-02-151-5/+2
| | | | | | | It has been renamed since months (NixOS/nixpkgs@14321ae) and users.extra* are now just aliases to users.users and users.groups. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* mmrnmhrm/dnyarri: Update kernel src/cfg to 4.5-rc4aszlig2016-02-151-3/+3
| | | | | | | | | | | | | | | | Geesh, the configuration is getting more and more rotten and it's time to make this in a more generic configuration *very* soon. The configuration does have a lot of cruft in it because it's a bunch of "make oldconfig" iterations and no cleanup in-between. In addition, even if I'd do the cleanup I'd probably want common options to be factored out. But for now let's keep the config as-is until 4.6 comes out and we either play the "make oldconfig" game again or we finally rewrite it. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profpatsch/programs: add support for scanningProfpatsch2016-02-042-0/+14
|
* profiles/workstation: Add my PlayStation 2 gamepadaszlig2016-01-261-0/+26
| | | | | | | This one is a PlayStation 2 gamepad connected via USB using some GreenAsia adapter. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* modules: Add a new gamecontroller moduleaszlig2016-01-262-0/+110
| | | | | | | | This module is for declaratively specifying SDL_GAMECONTROLLERCONFIG, an environment variable used by SDL 2 to map arbitrary controllers to that of an XBox reference controller. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profiles/base: Add Headcounter Hydra as log serveraszlig2016-01-191-0/+1
| | | | | | | | | | Quite useful for paging logs so that I don't all the time need to either scroll back the buffer (which is also limited so it's not very useful for large builds) or use something like: curl https://headcounter.org/hydra/log/$drvbasename | less Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* programs/taalo-build: Directly connect to taaloaszlig2016-01-191-3/+3
| | | | | | | | As I'm moving away the deployment from mmrnmhrm, it's not a very good idea to rely on the deployment machine being up, which also makes it two machines that need to be up in order to build from tishtushi. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profiles/tests: Revert disabling quake3 testaszlig2016-01-161-2/+0
| | | | | | | | | This reverts commit 71d24b28c16fbae58d1ecfeaecf5a26c7ec015da. Evaluation has been fixed upstream at NixOS/nixpkgs@c4de45b and the test should succeed after NixOS/nixpkgs@5caa8ab as well. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profiles/tests: Temporarily disable quake3 testaszlig2016-01-151-0/+2
| | | | | | | | | | | | | The Quake 3 demo data have been marked as "unfreeRedistributable" in NixOS/nixpkgs@6b447a3, which causes this test to not evaluate unless we set config.allowUnfree to true. I guess the best solution to fix this upstream is to use something like OpenArena for the Quake 3 tests, because I didn't manage to find anything regarding the demo files and/or whether those are redistributable or not. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* machines/tyree: Factor out T100HA specific stuffaszlig2016-01-142-0/+21
| | | | | | | | This should go into its own hardware module, so it might be helpful for others as well (especially if we're going to put it into upstream <nixpkgs>). Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* modules/README: Put hardware into own namespaceaszlig2016-01-141-1/+5
| | | | | | | | That way we can separate completely hardware-related stuff from things like bootup and kernel, although the lines between kernel and hardware are quite blurry. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* modules: Add my own custom xpdf configurationaszlig2016-01-144-1/+22
| | | | | | | | | It's only a very handy keybinding for toggling the outline, because it sometimes gets very annoying if you don't want to go full screen but still don't want that outline eating up space (and no, I don't want to reach for the mouse). Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profiles/workstation: Add more printing driversaszlig2016-01-141-0/+1
| | | | | | | For example at the place where I am right now, I need hplip to access the printer. Also, it won't hurt to include gutenprint as well. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profiles/base: Switch to nix.buildCoresaszlig2016-01-141-1/+1
| | | | | | | | | This option has been there for a long time (since NixOS/nixpkgs@e8dace2), so let's actually use it instead of putting it into extraOptions to make sure we get an error should the option be renamed or removed. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* aszlig/kernel: Update to version 4.4.0-rc8.aszlig2016-01-071-3/+3
| | | | | | This is -rc8 plus 36 commits ahead. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* hardware.tinkpad: module for thinkpad optionsProfpatsch2015-12-222-0/+32
|
* profiles/workstation: Reboot 30m after panicaszlig2015-12-211-1/+1
| | | | | | | | | | Just happened to have a kernel panic on mmrnmhrm and no way to physically access the machine, which is quite a bummer. While we can't prevent kernel panics, we can at least prevent the machine to hang indefinitely. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profiles/base: Enable beets-alternatives pluginaszlig2015-12-181-0/+3
| | | | | | | | This has been introduced in NixOS/nixpkgs@662ab05 and it's quite useful for creating USB sticks for crappy audio players which are only able to read crappy audio formats ;-) Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profiles/tests: Add networking.*.loopback testaszlig2015-12-181-0/+3
| | | | | | | | | | | | I've added that test in NixOS/nixpkgs@4c61faa and it fails at the moment, still leaving the channels in a broken state in regards to networkd. The reason I'm doing this anyway is to ensure I won't forget to add that test here as well. We can't easily go back to the "not broken" state anymore, except if we roll back to a version with systemd < 228. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* aszlig/programs: Add a new "taalo-build" program.aszlig2015-12-142-0/+66
| | | | | | | | | | | | | | | This is primarily for whenever I'm on the road with varying degrees of internet connectivity. What it essentially does is ssh to mmrnmhrm, then ssh to taalo and then run nix-store --serve --write on it. Taalo is the Hydra master of https://headcounter.org/hydra/ and it has remote builds enabled. The script essentially only builds on the remote host but doesn't fetch the builds. The latter can be done if the Hydra is added as a build cache to the local system, which in case of vuizvui is by default. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profiles/tests: Add a check for allProxy.aszlig2015-12-111-1/+3
| | | | | | | This was just pushed a few minutes ago as commit NixOS/nixpkgs@565707c57abc6ee9e81d4f6c9bd5fed5bbac2d40. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profiles/tests: Avoid scanning full linuxPackages.aszlig2015-12-111-1/+2
| | | | | | | | | | | | | Using an equality test on an attribute set is actually a very bad idea, because it forces strict evaluation. In this case a simple test on the kernel version between the defined one and the available one should be sufficient. And if we have a false-positive in test inclusions it doesn't hurt anyway. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profiles/tests: Fix evaluation for real.aszlig2015-12-111-3/+5
| | | | | | | | | | This time I've gone through the hoops of almost running out of memory, because evaluating the channel expression now eats lots of RAM. Meaning: I've now actually tested it on my system without just throwing it at the Hydra box which has lots of RAM... unlike my local machine :-( Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profiles/tests: Fix evaluation.aszlig2015-12-111-1/+1
| | | | | | Forgot to include pkgs to module args. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* profiles/tests: Add most of the NixOS tests.aszlig2015-12-111-6/+217
| | | | | | | | | | | I've added all tests that are not related to packages in environment.systemPackages or are otherwise tricky to include or to distinguish (for example NFSv3 vs. NFSv4). So we now should have a pretty good test coverage for all of our machines. Signed-off-by: aszlig <aszlig@redmoonstudios.org>