summaryrefslogtreecommitdiffstats
path: root/makefu
diff options
context:
space:
mode:
Diffstat (limited to 'makefu')
-rw-r--r--makefu/1systems/gum.nix1
-rw-r--r--makefu/2configs/default.nix7
-rw-r--r--makefu/2configs/deployment/mycube.connector.one.nix46
-rw-r--r--makefu/2configs/git/cgit-retiolum.nix2
-rw-r--r--makefu/2configs/hw/tp-x2x0.nix3
-rw-r--r--makefu/2configs/main-laptop.nix3
-rw-r--r--makefu/2configs/nginx/update.connector.one.nix2
-rw-r--r--makefu/5pkgs/default.nix1
-rw-r--r--makefu/5pkgs/mycube-flask/default.nix21
-rw-r--r--makefu/default.nix1
10 files changed, 83 insertions, 4 deletions
diff --git a/makefu/1systems/gum.nix b/makefu/1systems/gum.nix
index 04adc494..906c72de 100644
--- a/makefu/1systems/gum.nix
+++ b/makefu/1systems/gum.nix
@@ -17,6 +17,7 @@ in {
../2configs/mattermost-docker.nix
../2configs/nginx/euer.test.nix
../2configs/nginx/update.connector.one.nix
+ ../2configs/deployment/mycube.connector.one.nix
../2configs/exim-retiolum.nix
../2configs/urlwatch.nix
diff --git a/makefu/2configs/default.nix b/makefu/2configs/default.nix
index 83018e9f..3043a1af 100644
--- a/makefu/2configs/default.nix
+++ b/makefu/2configs/default.nix
@@ -4,6 +4,13 @@ with config.krebs.lib;
{
system.stateVersion = "15.09";
+ system.replaceRuntimeDependencies = with pkgs.lib;
+ [{original = pkgs.glibc; replacement = pkgs.stdenv.lib.overrideDerivation pkgs.glibc (oldAttr: { patches = oldAttr.patches ++
+ [(pkgs.fetchurl { url = "https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/development/libraries/glibc/cve-2015-7547.patch";
+ sha256 = "0awpc4rp2x27rjpj83ps0rclmn73hsgfv2xxk18k82w4hdxqpp5r";})];
+ });}
+ ];
+
imports = [
{
users.extraUsers =
diff --git a/makefu/2configs/deployment/mycube.connector.one.nix b/makefu/2configs/deployment/mycube.connector.one.nix
new file mode 100644
index 00000000..38fc4a24
--- /dev/null
+++ b/makefu/2configs/deployment/mycube.connector.one.nix
@@ -0,0 +1,46 @@
+{ config, lib, pkgs, ... }:
+# more than just nginx config but not enough to become a module
+with config.krebs.lib;
+let
+ hostname = config.krebs.build.host.name;
+ external-ip = head config.krebs.build.host.nets.internet.addrs4;
+ wsgi-sock = "${config.services.uwsgi.runDir}/uwsgi.sock";
+in {
+ services.redis.enable = true;
+ services.uwsgi = {
+ enable = true;
+ user = "nginx";
+ plugins = [ "python2" ];
+ instance = {
+ type = "emperor";
+ vassals = {
+ mycube-flask = {
+ type = "normal";
+ python2Packages = self: with self; [ pkgs.mycube-flask flask redis werkzeug jinja2 markupsafe itsdangerous ];
+ socket = wsgi-sock;
+ };
+ };
+ };
+ };
+
+ krebs.nginx = {
+ enable = mkDefault true;
+ servers = {
+ mybox-connector-one = {
+ listen = [ "${external-ip}:80" ];
+ server-names = [
+ "mycube.connector.one"
+ "mybox.connector.one"
+ ];
+ locations = singleton (nameValuePair "/" ''
+ uwsgi_pass unix://${wsgi-sock};
+ uwsgi_param UWSGI_CHDIR ${pkgs.mycube-flask}/${pkgs.python.sitePackages};
+ uwsgi_param UWSGI_MODULE mycube.websrv;
+ uwsgi_param UWSGI_CALLABLE app;
+
+ include ${pkgs.nginx}/conf/uwsgi_params;
+ '');
+ };
+ };
+ };
+}
diff --git a/makefu/2configs/git/cgit-retiolum.nix b/makefu/2configs/git/cgit-retiolum.nix
index a488d98f..15700e10 100644
--- a/makefu/2configs/git/cgit-retiolum.nix
+++ b/makefu/2configs/git/cgit-retiolum.nix
@@ -57,7 +57,7 @@ let
# TODO: get the list of all krebsministers
- krebsminister = with config.krebs.users; [ lass tv uriel ];
+ krebsminister = with config.krebs.users; [ lass tv ];
all-makefu = with config.krebs.users; [ makefu makefu-omo makefu-tsp makefu-vbob ];
all-exco = with config.krebs.users; [ exco ];
diff --git a/makefu/2configs/hw/tp-x2x0.nix b/makefu/2configs/hw/tp-x2x0.nix
index 892be07b..d5ce34bd 100644
--- a/makefu/2configs/hw/tp-x2x0.nix
+++ b/makefu/2configs/hw/tp-x2x0.nix
@@ -2,8 +2,7 @@
with config.krebs.lib;
{
- # TODO: put this somewhere else
- networking.wireless.enable = true;
+ networking.wireless.enable = lib.mkDefault true;
hardware.enableAllFirmware = true;
nixpkgs.config.allowUnfree = true;
diff --git a/makefu/2configs/main-laptop.nix b/makefu/2configs/main-laptop.nix
index c3e43723..452cdfb2 100644
--- a/makefu/2configs/main-laptop.nix
+++ b/makefu/2configs/main-laptop.nix
@@ -12,6 +12,9 @@ with config.krebs.lib;
./fetchWallpaper.nix
./zsh-user.nix
];
+
+ users.users.${config.krebs.build.user.name}.extraGroups = [ "dialout" ];
+
environment.systemPackages = with pkgs;[
vlc
firefox
diff --git a/makefu/2configs/nginx/update.connector.one.nix b/makefu/2configs/nginx/update.connector.one.nix
index 044a1407..ac5e6b17 100644
--- a/makefu/2configs/nginx/update.connector.one.nix
+++ b/makefu/2configs/nginx/update.connector.one.nix
@@ -8,7 +8,7 @@ in {
krebs.nginx = {
enable = mkDefault true;
servers = {
- omo-share = {
+ update-connector-one = {
listen = [ "${external-ip}:80" ];
server-names = [
"update.connector.one"
diff --git a/makefu/5pkgs/default.nix b/makefu/5pkgs/default.nix
index c4a7f498..33e280f0 100644
--- a/makefu/5pkgs/default.nix
+++ b/makefu/5pkgs/default.nix
@@ -10,5 +10,6 @@ in
alsa-hdsploader = callPackage ./alsa-tools { alsaToolTarget="hdsploader";};
awesomecfg = callPackage ./awesomecfg {};
tw-upload-plugin = callPackage ./tw-upload-plugin {};
+ mycube-flask = callPackage ./mycube-flask {};
};
}
diff --git a/makefu/5pkgs/mycube-flask/default.nix b/makefu/5pkgs/mycube-flask/default.nix
new file mode 100644
index 00000000..d01abbbd
--- /dev/null
+++ b/makefu/5pkgs/mycube-flask/default.nix
@@ -0,0 +1,21 @@
+{ lib, pkgs, fetchFromGitHub, ... }:
+
+with pkgs.pythonPackages;buildPythonPackage rec {
+ name = "mycube-flask-${version}";
+ version = "0.2.3";
+ propagatedBuildInputs = [
+ flask
+ redis
+ ];
+ src = fetchFromGitHub {
+ owner = "makefu";
+ repo = "mycube-flask";
+ rev = "5f5260a";
+ sha256 = "1jx0h81nlmi1xry2vw46rvsanq0sdca6hlq31lhh7klqrg885hgh";
+ };
+ meta = {
+ homepage = https://github.com/makefu/mycube-flask;
+ description = "flask app for mycube";
+ license = lib.licenses.asl20;
+ };
+}
diff --git a/makefu/default.nix b/makefu/default.nix
index 320e1a13..b1c7c1be 100644
--- a/makefu/default.nix
+++ b/makefu/default.nix
@@ -4,5 +4,6 @@ _:
../krebs
./2configs
./3modules
+ ./5pkgs
];
}