summary refs log tree commit diff
diff options
context:
space:
mode:
authorJaka Hudoklin <offlinehacker@users.noreply.github.com>2018-05-05 08:07:14 +0200
committerGitHub <noreply@github.com>2018-05-05 08:07:14 +0200
commit3ec4528dcfc8380dfe618a08337de451277bd302 (patch)
tree0f1a2ee875d69f76efb57d333c450193382ffc32
parent30caa09e51142e98c43f6288f55e1776fd5b625e (diff)
parentc3eefe801a55586445125d49f159c1c0c5e76f76 (diff)
downloadnixlib-3ec4528dcfc8380dfe618a08337de451277bd302.tar
nixlib-3ec4528dcfc8380dfe618a08337de451277bd302.tar.gz
nixlib-3ec4528dcfc8380dfe618a08337de451277bd302.tar.bz2
nixlib-3ec4528dcfc8380dfe618a08337de451277bd302.tar.lz
nixlib-3ec4528dcfc8380dfe618a08337de451277bd302.tar.xz
nixlib-3ec4528dcfc8380dfe618a08337de451277bd302.tar.zst
nixlib-3ec4528dcfc8380dfe618a08337de451277bd302.zip
Merge pull request #39991 from xeji/remove-fleet
fleet, panamax: remove
-rw-r--r--nixos/modules/misc/ids.nix6
-rw-r--r--nixos/modules/module-list.nix2
-rw-r--r--nixos/modules/services/cluster/fleet.nix150
-rw-r--r--nixos/modules/services/cluster/panamax.nix156
-rw-r--r--nixos/release.nix2
-rw-r--r--nixos/tests/fleet.nix76
-rw-r--r--nixos/tests/panamax.nix21
-rw-r--r--pkgs/applications/networking/cluster/panamax/api/Gemfile23
-rw-r--r--pkgs/applications/networking/cluster/panamax/api/Gemfile.lock164
-rw-r--r--pkgs/applications/networking/cluster/panamax/api/default.nix74
-rw-r--r--pkgs/applications/networking/cluster/panamax/api/gemset.nix568
-rw-r--r--pkgs/applications/networking/cluster/panamax/ui/Gemfile31
-rw-r--r--pkgs/applications/networking/cluster/panamax/ui/Gemfile.lock226
-rw-r--r--pkgs/applications/networking/cluster/panamax/ui/default.nix72
-rw-r--r--pkgs/applications/networking/cluster/panamax/ui/gemset.nix789
-rw-r--r--pkgs/servers/fleet/default.nix37
-rw-r--r--pkgs/top-level/all-packages.nix5
17 files changed, 3 insertions, 2399 deletions
diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix
index 805d83c7ce3d..cc7d86849824 100644
--- a/nixos/modules/misc/ids.nix
+++ b/nixos/modules/misc/ids.nix
@@ -190,7 +190,7 @@
       cadvisor = 167;
       nylon = 168;
       apache-kafka = 169;
-      panamax = 170;
+      #panamax = 170; # unused
       exim = 172;
       #fleet = 173; # unused
       #input = 174; # unused
@@ -474,9 +474,9 @@
       #chronos = 164; # unused
       gitlab = 165;
       nylon = 168;
-      panamax = 170;
+      #panamax = 170; # unused
       exim = 172;
-      fleet = 173;
+      #fleet = 173; # unused
       input = 174;
       sddm = 175;
       tss = 176;
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index cb4c09176789..6c4326046ef8 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -171,11 +171,9 @@
   ./services/backup/rsnapshot.nix
   ./services/backup/tarsnap.nix
   ./services/backup/znapzend.nix
-  ./services/cluster/fleet.nix
   ./services/cluster/kubernetes/default.nix
   ./services/cluster/kubernetes/dns.nix
   ./services/cluster/kubernetes/dashboard.nix
-  ./services/cluster/panamax.nix
   ./services/computing/boinc/client.nix
   ./services/computing/torque/server.nix
   ./services/computing/torque/mom.nix
diff --git a/nixos/modules/services/cluster/fleet.nix b/nixos/modules/services/cluster/fleet.nix
deleted file mode 100644
index ec03be395948..000000000000
--- a/nixos/modules/services/cluster/fleet.nix
+++ /dev/null
@@ -1,150 +0,0 @@
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-let
-  cfg = config.services.fleet;
-
-in {
-
-  ##### Interface
-  options.services.fleet = {
-    enable = mkOption {
-      type = types.bool;
-      default = false;
-      description = ''
-        Whether to enable fleet service.
-      '';
-    };
-
-    listen = mkOption {
-      type = types.listOf types.str;
-      default = [ "/var/run/fleet.sock" ];
-      example = [ "/var/run/fleet.sock" "127.0.0.1:49153" ];
-      description = ''
-        Fleet listening addresses.
-      '';
-    };
-
-    etcdServers = mkOption {
-      type = types.listOf types.str;
-      default = [ "http://127.0.0.1:2379" ];
-      description = ''
-        Fleet list of etcd endpoints to use.
-      '';
-    };
-
-    publicIp = mkOption {
-      type = types.nullOr types.str;
-      default = "";
-      description = ''
-        Fleet IP address that should be published with the local Machine's
-        state and any socket information. If not set, fleetd will attempt
-        to detect the IP it should publish based on the machine's IP
-        routing information.
-      '';
-    };
-
-    etcdCafile = mkOption {
-      type = types.nullOr types.path;
-      default = null;
-      description = ''
-        Fleet TLS ca file when SSL certificate authentication is enabled
-        in etcd endpoints.
-      '';
-    };
-
-    etcdKeyfile = mkOption {
-      type = types.nullOr types.path;
-      default = null;
-      description = ''
-        Fleet TLS key file when SSL certificate authentication is enabled
-        in etcd endpoints.
-      '';
-    };
-
-    etcdCertfile = mkOption {
-      type = types.nullOr types.path;
-      default = null;
-      description = ''
-        Fleet TLS cert file when SSL certificate authentication is enabled
-        in etcd endpoints.
-      '';
-    };
-
-    metadata = mkOption {
-      type = types.attrsOf types.str;
-      default = {};
-      apply = attrs: concatMapStringsSep "," (n: "${n}=${attrs."${n}"}") (attrNames attrs);
-      example = literalExample ''
-        {
-          region = "us-west";
-          az = "us-west-1";
-        }
-      '';
-      description = ''
-        Key/value pairs that are published with the local to the fleet registry.
-        This data can be used directly by a client of fleet to make scheduling decisions.
-      '';
-    };
-
-    extraConfig = mkOption {
-      type = types.attrsOf types.str;
-      apply = mapAttrs' (n: v: nameValuePair ("FLEET_" + n) v);
-      default = {};
-      example = literalExample ''
-        {
-          VERBOSITY = 1;
-          ETCD_REQUEST_TIMEOUT = "2.0";
-          AGENT_TTL = "40s";
-        }
-      '';
-      description = ''
-        Fleet extra config. See
-        <link xlink:href="https://github.com/coreos/fleet/blob/master/Documentation/deployment-and-configuration.md"/>
-        for configuration options.
-      '';
-    };
-
-  };
-
-  ##### Implementation
-  config = mkIf cfg.enable {
-    systemd.services.fleet = {
-      description = "Fleet Init System Daemon";
-      wantedBy = [ "multi-user.target" ];
-      after = [ "network.target" "fleet.socket" "etcd.service" "docker.service" ];
-      requires = [ "fleet.socket" ];
-      environment = {
-        FLEET_ETCD_SERVERS = concatStringsSep "," cfg.etcdServers;
-        FLEET_PUBLIC_IP = cfg.publicIp;
-        FLEET_ETCD_CAFILE = cfg.etcdCafile;
-        FLEET_ETCD_KEYFILE = cfg.etcdKeyfile;
-        FLEET_ETCD_CERTFILE = cfg.etcdCertfile;
-        FLEET_METADATA = cfg.metadata;
-      } // cfg.extraConfig;
-      serviceConfig = {
-        ExecStart = "${pkgs.fleet}/bin/fleetd";
-        Group = "fleet";
-      };
-    };
-
-    systemd.sockets.fleet = {
-      description = "Fleet Socket for the API";
-      wantedBy = [ "sockets.target" ];
-      listenStreams = cfg.listen;
-      socketConfig = {
-        ListenStream = "/var/run/fleet.sock";
-        SocketMode = "0660";
-        SocketUser = "root";
-        SocketGroup = "fleet";
-      };
-    };
-
-    services.etcd.enable = mkDefault true;
-    virtualisation.docker.enable = mkDefault true;
-
-    environment.systemPackages = [ pkgs.fleet ];
-    users.extraGroups.fleet.gid = config.ids.gids.fleet;
-  };
-}
diff --git a/nixos/modules/services/cluster/panamax.nix b/nixos/modules/services/cluster/panamax.nix
deleted file mode 100644
index 4475e8d8c24b..000000000000
--- a/nixos/modules/services/cluster/panamax.nix
+++ /dev/null
@@ -1,156 +0,0 @@
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-let
-  cfg = config.services.panamax;
-
-  panamax_api = pkgs.panamax_api.override { dataDir = cfg.dataDir + "/api"; };
-  panamax_ui = pkgs.panamax_ui.override { dataDir = cfg.dataDir + "/ui"; };
-
-in {
-
-  ##### Interface
-  options.services.panamax = {
-    enable = mkOption {
-      type = types.bool;
-      default = false;
-      description = ''
-        Whether to enable Panamax service.
-      '';
-    };
-
-    UIPort = mkOption {
-      type = types.int;
-      default = 8888;
-      description = ''
-        Panamax UI listening port.
-      '';
-    };
-
-    APIPort = mkOption {
-      type = types.int;
-      default = 3000;
-      description = ''
-        Panamax UI listening port.
-      '';
-    };
-
-    dataDir = mkOption {
-      type = types.str;
-      default = "/var/lib/panamax";
-      description = ''
-        Data dir for Panamax.
-      '';
-    };
-
-    fleetctlEndpoint = mkOption {
-      type = types.str;
-      default = "http://127.0.0.1:2379";
-      description = ''
-        Panamax fleetctl endpoint.
-      '';
-    };
-
-    journalEndpoint = mkOption {
-      type = types.str;
-      default = "http://127.0.0.1:19531";
-      description = ''
-        Panamax journal endpoint.
-      '';
-    };
-
-    secretKey = mkOption {
-      type = types.str;
-      default = "SomethingVeryLong.";
-      description = ''
-        Panamax secret key (do change this).
-      '';
-    };
-
-  };
-
-  ##### Implementation
-  config = mkIf cfg.enable {
-    systemd.services.panamax-api = {
-      description = "Panamax API";
-
-      wantedBy = [ "multi-user.target" ];
-      after = [ "network.target" "fleet.service" "etcd.service" "docker.service" ];
-
-      path = [ panamax_api ];
-      environment = {
-        RAILS_ENV = "production";
-        JOURNAL_ENDPOINT = cfg.journalEndpoint;
-        FLEETCTL_ENDPOINT = cfg.fleetctlEndpoint;
-        PANAMAX_DATABASE_PATH = "${cfg.dataDir}/api/db/mnt/db.sqlite3";
-      };
-
-      preStart = ''
-        rm -rf ${cfg.dataDir}/state/tmp
-        mkdir -p ${cfg.dataDir}/api/{db/mnt,state/log,state/tmp}
-        ln -sf ${panamax_api}/share/panamax-api/_db/{schema.rb,seeds.rb,migrate} ${cfg.dataDir}/api/db/
-
-        if [ ! -f ${cfg.dataDir}/.created ]; then
-          bundle exec rake db:setup
-          bundle exec rake db:seed
-          bundle exec rake panamax:templates:load || true
-          touch ${cfg.dataDir}/.created
-        else
-          bundle exec rake db:migrate
-        fi
-      '';
-
-      serviceConfig = {
-        ExecStart = "${panamax_api}/bin/bundle exec rails server --binding 127.0.0.1 --port ${toString cfg.APIPort}";
-        User = "panamax";
-        Group = "panamax";
-      };
-    };
-
-    systemd.services.panamax-ui = {
-      description = "Panamax UI";
-
-      wantedBy = [ "multi-user.target" ];
-      after = [ "network.target" "panamax_api.service" ];
-
-      path = [ panamax_ui ];
-      environment = {
-        RAILS_ENV = "production";
-        JOURNAL_ENDPOINT = cfg.journalEndpoint;
-        PMX_API_PORT_3000_TCP_ADDR = "localhost";
-        PMX_API_PORT_3000_TCP_PORT = toString cfg.APIPort;
-        SECRET_KEY_BASE = cfg.secretKey;
-      };
-
-      preStart = ''
-        mkdir -p ${cfg.dataDir}/ui/state/{log,tmp}
-        chown -R panamax:panamax ${cfg.dataDir}
-      '';
-
-      serviceConfig = {
-        ExecStart = "${panamax_ui}/bin/bundle exec rails server --binding 127.0.0.1 --port ${toString cfg.UIPort}";
-        User = "panamax";
-        Group = "panamax";
-        PermissionsStartOnly = true;
-      };
-    };
-
-    users.extraUsers.panamax =
-    { uid = config.ids.uids.panamax;
-      description = "Panamax user";
-      createHome = true;
-      home = cfg.dataDir;
-      extraGroups = [ "docker" ];
-    };
-
-    services.journald.enableHttpGateway = mkDefault true;
-    services.fleet.enable = mkDefault true;
-    services.cadvisor.enable = mkDefault true;
-    services.cadvisor.port = mkDefault 3002;
-    virtualisation.docker.enable = mkDefault true;
-
-    environment.systemPackages = [ panamax_api panamax_ui ];
-    users.extraGroups.panamax.gid = config.ids.gids.panamax;
-  };
-}
diff --git a/nixos/release.nix b/nixos/release.nix
index 5b6640f1d3cc..55b4f19b8688 100644
--- a/nixos/release.nix
+++ b/nixos/release.nix
@@ -284,7 +284,6 @@ in rec {
   tests.ferm = callTest tests/ferm.nix {};
   tests.firefox = callTest tests/firefox.nix {};
   tests.firewall = callTest tests/firewall.nix {};
-  tests.fleet = callTestOnMatchingSystems ["x86_64-linux"] tests/fleet.nix {};
   tests.fwupd = callTest tests/fwupd.nix {};
   #tests.gitlab = callTest tests/gitlab.nix {};
   tests.gitolite = callTest tests/gitolite.nix {};
@@ -360,7 +359,6 @@ in rec {
   tests.openldap = callTest tests/openldap.nix {};
   tests.owncloud = callTest tests/owncloud.nix {};
   tests.pam-oath-login = callTest tests/pam-oath-login.nix {};
-  #tests.panamax = callTestOnMatchingSystems ["x86_64-linux"] tests/panamax.nix {};
   tests.peerflix = callTest tests/peerflix.nix {};
   tests.php-pcre = callTest tests/php-pcre.nix {};
   tests.postgresql = callSubTests tests/postgresql.nix {};
diff --git a/nixos/tests/fleet.nix b/nixos/tests/fleet.nix
deleted file mode 100644
index 67c95446526f..000000000000
--- a/nixos/tests/fleet.nix
+++ /dev/null
@@ -1,76 +0,0 @@
-import ./make-test.nix ({ pkgs, ...} : rec {
-  name = "simple";
-  meta = with pkgs.stdenv.lib.maintainers; {
-    maintainers = [ offline ];
-  };
-
-  nodes = {
-    node1 =
-      { config, pkgs, ... }:
-        {
-          services = {
-            etcd = {
-              enable = true;
-              listenPeerUrls = ["http://0.0.0.0:7001"];
-              initialAdvertisePeerUrls = ["http://node1:7001"];
-              initialCluster = ["node1=http://node1:7001" "node2=http://node2:7001"];
-            };
-         };
-
-          services.fleet = {
-            enable = true;
-            metadata.name = "node1";
-          };
-
-          networking.firewall.allowedTCPPorts = [ 7001 ];
-        };
-
-    node2 =
-      { config, pkgs, ... }:
-        {
-          services = {
-            etcd = {
-              enable = true;
-              listenPeerUrls = ["http://0.0.0.0:7001"];
-              initialAdvertisePeerUrls = ["http://node2:7001"];
-              initialCluster = ["node1=http://node1:7001" "node2=http://node2:7001"];
-            };
-           };
-
-          services.fleet = {
-            enable = true;
-            metadata.name = "node2";
-          };
-
-          networking.firewall.allowedTCPPorts = [ 7001 ];
-        };
-  };
-
-  service = builtins.toFile "hello.service" ''
-    [Unit]
-    Description=Hello World
-
-    [Service]
-    ExecStart=/bin/sh -c "while true; do echo \"Hello, world\"; /var/run/current-system/sw/bin/sleep 1; done"
-
-    [X-Fleet]
-    MachineMetadata=name=node2
-  '';
-
-  testScript =
-    ''
-      startAll;
-      $node1->waitForUnit("fleet.service");
-      $node2->waitForUnit("fleet.service");
-
-      $node2->waitUntilSucceeds("fleetctl list-machines | grep node1");
-      $node1->waitUntilSucceeds("fleetctl list-machines | grep node2");
-
-      $node1->succeed("cp ${service} hello.service && fleetctl submit hello.service");
-      $node1->succeed("fleetctl list-unit-files | grep hello");
-      $node1->succeed("fleetctl start hello.service");
-      $node1->waitUntilSucceeds("fleetctl list-units | grep running");
-      $node1->succeed("fleetctl stop hello.service");
-      $node1->succeed("fleetctl destroy hello.service");
-    '';
-})
diff --git a/nixos/tests/panamax.nix b/nixos/tests/panamax.nix
deleted file mode 100644
index 088aa79f8c61..000000000000
--- a/nixos/tests/panamax.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-import ./make-test.nix ({ pkgs, ...} : {
-  name = "panamax";
-  meta = with pkgs.stdenv.lib.maintainers; {
-    maintainers = [ offline ];
-  };
-
-  machine = { config, pkgs, ... }: {
-    services.panamax.enable = true;
-  };
-
-  testScript =
-    ''
-      startAll;
-      $machine->waitForUnit("panamax-api.service");
-      $machine->waitForUnit("panamax-ui.service");
-      $machine->waitForOpenPort(3000);
-      $machine->waitForOpenPort(8888);
-      $machine->succeed("curl --fail http://localhost:8888/ > /dev/null");
-      $machine->shutdown;
-    '';
-})
diff --git a/pkgs/applications/networking/cluster/panamax/api/Gemfile b/pkgs/applications/networking/cluster/panamax/api/Gemfile
deleted file mode 100644
index 82085aa6db08..000000000000
--- a/pkgs/applications/networking/cluster/panamax/api/Gemfile
+++ /dev/null
@@ -1,23 +0,0 @@
-source 'https://rubygems.org'
-
-gem 'rails', '4.1.7'
-gem 'puma', '2.8.2'
-gem 'sqlite3', '1.3.9'
-gem 'faraday_middleware', '0.9.0'
-gem 'docker-api', '1.13.0', require: 'docker'
-gem 'fleet-api', '0.6.0', require: 'fleet'
-gem 'active_model_serializers', '0.9.0'
-gem 'octokit', '3.2.0'
-gem 'kmts', '2.0.1'
-
-group :test, :development do
-  gem 'rspec-rails'
-  gem 'its'
-end
-
-group :test do
-  gem 'coveralls', '0.7.0'
-  gem 'shoulda-matchers', '2.6.1'
-  gem 'database_cleaner', '1.3.0'
-  gem 'webmock', '1.20.0'
-end
diff --git a/pkgs/applications/networking/cluster/panamax/api/Gemfile.lock b/pkgs/applications/networking/cluster/panamax/api/Gemfile.lock
deleted file mode 100644
index 597c691700ad..000000000000
--- a/pkgs/applications/networking/cluster/panamax/api/Gemfile.lock
+++ /dev/null
@@ -1,164 +0,0 @@
-GEM
-  remote: https://rubygems.org/
-  specs:
-    actionmailer (4.1.7)
-      actionpack (= 4.1.7)
-      actionview (= 4.1.7)
-      mail (~> 2.5, >= 2.5.4)
-    actionpack (4.1.7)
-      actionview (= 4.1.7)
-      activesupport (= 4.1.7)
-      rack (~> 1.5.2)
-      rack-test (~> 0.6.2)
-    actionview (4.1.7)
-      activesupport (= 4.1.7)
-      builder (~> 3.1)
-      erubis (~> 2.7.0)
-    active_model_serializers (0.9.0)
-      activemodel (>= 3.2)
-    activemodel (4.1.7)
-      activesupport (= 4.1.7)
-      builder (~> 3.1)
-    activerecord (4.1.7)
-      activemodel (= 4.1.7)
-      activesupport (= 4.1.7)
-      arel (~> 5.0.0)
-    activesupport (4.1.7)
-      i18n (~> 0.6, >= 0.6.9)
-      json (~> 1.7, >= 1.7.7)
-      minitest (~> 5.1)
-      thread_safe (~> 0.1)
-      tzinfo (~> 1.1)
-    addressable (2.3.6)
-    archive-tar-minitar (0.5.2)
-    arel (5.0.1.20140414130214)
-    builder (3.2.2)
-    coveralls (0.7.0)
-      multi_json (~> 1.3)
-      rest-client
-      simplecov (>= 0.7)
-      term-ansicolor
-      thor
-    crack (0.4.2)
-      safe_yaml (~> 1.0.0)
-    database_cleaner (1.3.0)
-    diff-lcs (1.2.5)
-    docile (1.1.5)
-    docker-api (1.13.0)
-      archive-tar-minitar
-      excon (>= 0.37.0)
-      json
-    erubis (2.7.0)
-    excon (0.37.0)
-    faraday (0.8.9)
-      multipart-post (~> 1.2.0)
-    faraday_middleware (0.9.0)
-      faraday (>= 0.7.4, < 0.9)
-    fleet-api (0.6.0)
-      faraday (= 0.8.9)
-      faraday_middleware (= 0.9.0)
-    hike (1.2.3)
-    i18n (0.7.0)
-    its (0.2.0)
-      rspec-core
-    json (1.8.1)
-    kmts (2.0.1)
-    mail (2.6.3)
-      mime-types (>= 1.16, < 3)
-    mime-types (2.4.3)
-    minitest (5.5.1)
-    multi_json (1.10.1)
-    multipart-post (1.2.0)
-    octokit (3.2.0)
-      sawyer (~> 0.5.3)
-    puma (2.8.2)
-      rack (>= 1.1, < 2.0)
-    rack (1.5.2)
-    rack-test (0.6.3)
-      rack (>= 1.0)
-    rails (4.1.7)
-      actionmailer (= 4.1.7)
-      actionpack (= 4.1.7)
-      actionview (= 4.1.7)
-      activemodel (= 4.1.7)
-      activerecord (= 4.1.7)
-      activesupport (= 4.1.7)
-      bundler (>= 1.3.0, < 2.0)
-      railties (= 4.1.7)
-      sprockets-rails (~> 2.0)
-    railties (4.1.7)
-      actionpack (= 4.1.7)
-      activesupport (= 4.1.7)
-      rake (>= 0.8.7)
-      thor (>= 0.18.1, < 2.0)
-    rake (10.4.0)
-    rest-client (1.6.7)
-      mime-types (>= 1.16)
-    rspec-core (3.1.7)
-      rspec-support (~> 3.1.0)
-    rspec-expectations (3.1.2)
-      diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.1.0)
-    rspec-mocks (3.1.3)
-      rspec-support (~> 3.1.0)
-    rspec-rails (3.1.0)
-      actionpack (>= 3.0)
-      activesupport (>= 3.0)
-      railties (>= 3.0)
-      rspec-core (~> 3.1.0)
-      rspec-expectations (~> 3.1.0)
-      rspec-mocks (~> 3.1.0)
-      rspec-support (~> 3.1.0)
-    rspec-support (3.1.2)
-    safe_yaml (1.0.4)
-    sawyer (0.5.4)
-      addressable (~> 2.3.5)
-      faraday (~> 0.8, < 0.10)
-    shoulda-matchers (2.6.1)
-      activesupport (>= 3.0.0)
-    simplecov (0.9.1)
-      docile (~> 1.1.0)
-      multi_json (~> 1.0)
-      simplecov-html (~> 0.8.0)
-    simplecov-html (0.8.0)
-    sprockets (2.12.3)
-      hike (~> 1.2)
-      multi_json (~> 1.0)
-      rack (~> 1.0)
-      tilt (~> 1.1, != 1.3.0)
-    sprockets-rails (2.2.4)
-      actionpack (>= 3.0)
-      activesupport (>= 3.0)
-      sprockets (>= 2.8, < 4.0)
-    sqlite3 (1.3.9)
-    term-ansicolor (1.3.0)
-      tins (~> 1.0)
-    thor (0.19.1)
-    thread_safe (0.3.4)
-    tilt (1.4.1)
-    tins (1.3.0)
-    tzinfo (1.2.2)
-      thread_safe (~> 0.1)
-    webmock (1.20.0)
-      addressable (>= 2.3.6)
-      crack (>= 0.3.2)
-
-PLATFORMS
-  ruby
-
-DEPENDENCIES
-  active_model_serializers (= 0.9.0)
-  coveralls (= 0.7.0)
-  database_cleaner (= 1.3.0)
-  docker-api (= 1.13.0)
-  faraday_middleware (= 0.9.0)
-  fleet-api (= 0.6.0)
-  its
-  kmts (= 2.0.1)
-  octokit (= 3.2.0)
-  puma (= 2.8.2)
-  rails (= 4.1.7)
-  rspec-rails
-  shoulda-matchers (= 2.6.1)
-  sqlite3 (= 1.3.9)
-  webmock (= 1.20.0)
diff --git a/pkgs/applications/networking/cluster/panamax/api/default.nix b/pkgs/applications/networking/cluster/panamax/api/default.nix
deleted file mode 100644
index 1c2e2ccac27b..000000000000
--- a/pkgs/applications/networking/cluster/panamax/api/default.nix
+++ /dev/null
@@ -1,74 +0,0 @@
-{ stdenv, fetchgit, fetchurl, makeWrapper, bundlerEnv, bundler
-, ruby, libxslt, libxml2, sqlite, openssl, docker
-, dataDir ? "/var/lib/panamax-api" }@args:
-
-with stdenv.lib;
-
-stdenv.mkDerivation rec {
-  name = "panamax-api-${version}";
-  version = "0.2.16";
-
-  env = bundlerEnv {
-    name = "panamax-api-gems-${version}";
-    inherit ruby;
-    gemdir = ./.;
-  };
-
-  bundler = args.bundler.override { inherit ruby; };
-
-  database_yml = builtins.toFile "database.yml" ''
-    production:
-      adapter: sqlite3
-      database: <%= ENV["PANAMAX_DATABASE_PATH"] || "${dataDir}/db/mnt/db.sqlite3" %>
-      timeout: 5000
-  '';
-
-  src = fetchgit {
-    rev = "refs/tags/v${version}";
-    url = "git://github.com/CenturyLinkLabs/panamax-api";
-    sha256 = "0dqg0fbmy5cgjh0ql8yqlybhjyyrslgghjrc24wjhd1rghjn2qi6";
-  };
-
-  buildInputs = [ makeWrapper sqlite openssl env.ruby bundler ];
-
-  setSourceRoot = ''
-    mkdir -p $out/share
-    cp -R panamax-api $out/share/panamax-api
-    export sourceRoot="$out/share/panamax-api"
-  '';
-
-  postPatch = ''
-    find . -type f -exec sed -e 's|/usr/bin/docker|${docker}/bin/docker|g' -i "{}" \;
-  '';
-
-  configurePhase = ''
-    export HOME=$PWD
-    export GEM_HOME=${env}/${env.ruby.gemPath}
-    export RAILS_ENV=production
-
-    ln -sf ${database_yml} config/database.yml
-  '';
-
-  installPhase = ''
-    rm -rf log tmp
-    mv ./db ./_db
-    ln -sf ${dataDir}/{db,state/log,state/tmp} .
-
-    mkdir -p $out/bin
-    makeWrapper bin/bundle "$out/bin/bundle" \
-      --run "cd $out/share/panamax-api" \
-      --prefix "PATH" : "$out/share/panamax-api/bin:${env.ruby}/bin:$PATH" \
-      --prefix "HOME" : "$out/share/panamax-api" \
-      --prefix "GEM_HOME" : "${env}/${env.ruby.gemPath}" \
-      --prefix "GEM_PATH" : "$out/share/panamax-api:${bundler}/${env.ruby.gemPath}"
-  '';
-
-  meta = with stdenv.lib; {
-    broken = true; # needs ruby 2.1
-    homepage = https://github.com/CenturyLinkLabs/panamax-api;
-    description = "The API behind The Panamax UI";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ matejc offline ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/applications/networking/cluster/panamax/api/gemset.nix b/pkgs/applications/networking/cluster/panamax/api/gemset.nix
deleted file mode 100644
index 8182543a2bb9..000000000000
--- a/pkgs/applications/networking/cluster/panamax/api/gemset.nix
+++ /dev/null
@@ -1,568 +0,0 @@
-{
-  "actionmailer" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "0qjv5akjbpgd4cx518k522mssvc3y3nki65hi6fj5nbzi7a6rwq5";
-    };
-    dependencies = [
-      "actionpack"
-      "actionview"
-      "mail"
-    ];
-  };
-  "actionpack" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "07y1ny00h69xklq260smyl5md052f617gqrzkyw5sxafs5z25zax";
-    };
-    dependencies = [
-      "actionview"
-      "activesupport"
-      "rack"
-      "rack-test"
-    ];
-  };
-  "actionview" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "06sp37gfpn2jn7j6vlpp1y6vfi5kig60vyvixrjhyz0g4vgm13ax";
-    };
-    dependencies = [
-      "activesupport"
-      "builder"
-      "erubis"
-    ];
-  };
-  "active_model_serializers" = {
-    version = "0.9.0";
-    source = {
-      type = "gem";
-      sha256 = "1ws3gx3wwlm17w7k0agwzmcmww6627lvqaqm828lzm3g1xqilkkl";
-    };
-    dependencies = [
-      "activemodel"
-    ];
-  };
-  "activemodel" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "0rlqzz25l7vsphgkilg80kmk20d9h357awi27ax6zzb9klkqh0jr";
-    };
-    dependencies = [
-      "activesupport"
-      "builder"
-    ];
-  };
-  "activerecord" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "0j4r0m32mjbwmz9gs8brln35jzr1cn7h585ggj0w0f1ai4hjsby5";
-    };
-    dependencies = [
-      "activemodel"
-      "activesupport"
-      "arel"
-    ];
-  };
-  "activesupport" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "13i3mz66d5kp5y39gjwmcfqv0wb6mxm5k1nnz40wvd38dsf7n3bs";
-    };
-    dependencies = [
-      "i18n"
-      "json"
-      "minitest"
-      "thread_safe"
-      "tzinfo"
-    ];
-  };
-  "addressable" = {
-    version = "2.3.6";
-    source = {
-      type = "gem";
-      sha256 = "137fj0whmn1kvaq8wjalp8x4qbblwzvg3g4bfx8d8lfi6f0w48p8";
-    };
-  };
-  "archive-tar-minitar" = {
-    version = "0.5.2";
-    source = {
-      type = "gem";
-      sha256 = "1j666713r3cc3wb0042x0wcmq2v11vwwy5pcaayy5f0lnd26iqig";
-    };
-  };
-  "arel" = {
-    version = "5.0.1.20140414130214";
-    source = {
-      type = "gem";
-      sha256 = "0dhnc20h1v8ml3nmkxq92rr7qxxpk6ixhwvwhgl2dbw9mmxz0hf9";
-    };
-  };
-  "builder" = {
-    version = "3.2.2";
-    source = {
-      type = "gem";
-      sha256 = "14fii7ab8qszrvsvhz6z2z3i4dw0h41a62fjr2h1j8m41vbrmyv2";
-    };
-  };
-  "coveralls" = {
-    version = "0.7.0";
-    source = {
-      type = "gem";
-      sha256 = "0sz30d7b83qqsj3i0fr691w05d62wj7x3afh0ryjkqkis3fq94j4";
-    };
-    dependencies = [
-      "multi_json"
-      "rest-client"
-      "simplecov"
-      "term-ansicolor"
-      "thor"
-    ];
-  };
-  "crack" = {
-    version = "0.4.2";
-    source = {
-      type = "gem";
-      sha256 = "1il94m92sz32nw5i6hdq14f1a2c3s9hza9zn6l95fvqhabq38k7a";
-    };
-    dependencies = [
-      "safe_yaml"
-    ];
-  };
-  "database_cleaner" = {
-    version = "1.3.0";
-    source = {
-      type = "gem";
-      sha256 = "19w25yda684pg29bggq26wy4lpyjvzscwg2hx3hmmmpysiwfnxgn";
-    };
-  };
-  "diff-lcs" = {
-    version = "1.2.5";
-    source = {
-      type = "gem";
-      sha256 = "1vf9civd41bnqi6brr5d9jifdw73j9khc6fkhfl1f8r9cpkdvlx1";
-    };
-  };
-  "docile" = {
-    version = "1.1.5";
-    source = {
-      type = "gem";
-      sha256 = "0m8j31whq7bm5ljgmsrlfkiqvacrw6iz9wq10r3gwrv5785y8gjx";
-    };
-  };
-  "docker-api" = {
-    version = "1.13.0";
-    source = {
-      type = "gem";
-      sha256 = "1rara27gn7lxaf12dqkx8s1clssg10jndfcy4wz2fv6ms1i1lnp6";
-    };
-    dependencies = [
-      "archive-tar-minitar"
-      "excon"
-      "json"
-    ];
-  };
-  "erubis" = {
-    version = "2.7.0";
-    source = {
-      type = "gem";
-      sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3";
-    };
-  };
-  "excon" = {
-    version = "0.37.0";
-    source = {
-      type = "gem";
-      sha256 = "05x7asmsq5m419n1lhzk9bic02gwng4cqmrcqsfnd6kmkwm8csv2";
-    };
-  };
-  "faraday" = {
-    version = "0.8.9";
-    source = {
-      type = "gem";
-      sha256 = "17d79fsgx0xwh0mfxyz5pbr435qlw79phlfvifc546w2axdkp718";
-    };
-    dependencies = [
-      "multipart-post"
-    ];
-  };
-  "faraday_middleware" = {
-    version = "0.9.0";
-    source = {
-      type = "gem";
-      sha256 = "1kwvi2sdxd6j764a7q5iir73dw2v6816zx3l8cgfv0wr2m47icq2";
-    };
-    dependencies = [
-      "faraday"
-    ];
-  };
-  "fleet-api" = {
-    version = "0.6.0";
-    source = {
-      type = "gem";
-      sha256 = "0136mzc0fxp6mzh38n6xbg87cw9g9vq1nrlr3ylazbflvmlxgan6";
-    };
-    dependencies = [
-      "faraday"
-      "faraday_middleware"
-    ];
-  };
-  "hike" = {
-    version = "1.2.3";
-    source = {
-      type = "gem";
-      sha256 = "0i6c9hrszzg3gn2j41v3ijnwcm8cc2931fnjiv6mnpl4jcjjykhm";
-    };
-  };
-  "i18n" = {
-    version = "0.7.0";
-    source = {
-      type = "gem";
-      sha256 = "1i5z1ykl8zhszsxcs8mzl8d0dxgs3ylz8qlzrw74jb0gplkx6758";
-    };
-  };
-  "its" = {
-    version = "0.2.0";
-    source = {
-      type = "gem";
-      sha256 = "0rxwds9ipqp48mzqcaxzmfcqhawazg0zlhc1avv3i2cmm3np1z8g";
-    };
-    dependencies = [
-      "rspec-core"
-    ];
-  };
-  "json" = {
-    version = "1.8.1";
-    source = {
-      type = "gem";
-      sha256 = "0002bsycvizvkmk1jyv8px1hskk6wrjfk4f7x5byi8gxm6zzn6wn";
-    };
-  };
-  "kmts" = {
-    version = "2.0.1";
-    source = {
-      type = "gem";
-      sha256 = "1wk680q443lg35a25am6i8xawf16iqg5xnq1m8xd2gib4dsy1d8v";
-    };
-  };
-  "mail" = {
-    version = "2.6.3";
-    source = {
-      type = "gem";
-      sha256 = "1nbg60h3cpnys45h7zydxwrl200p7ksvmrbxnwwbpaaf9vnf3znp";
-    };
-    dependencies = [
-      "mime-types"
-    ];
-  };
-  "mime-types" = {
-    version = "2.4.3";
-    source = {
-      type = "gem";
-      sha256 = "16nissnb31wj7kpcaynx4gr67i7pbkzccfg8k7xmplbkla4rmwiq";
-    };
-  };
-  "minitest" = {
-    version = "5.5.1";
-    source = {
-      type = "gem";
-      sha256 = "1h8jn0rgmwy37jnhfcg55iilw0n370vgp8xnh0g5laa8rhv32fyn";
-    };
-  };
-  "multi_json" = {
-    version = "1.10.1";
-    source = {
-      type = "gem";
-      sha256 = "1ll21dz01jjiplr846n1c8yzb45kj5hcixgb72rz0zg8fyc9g61c";
-    };
-  };
-  "multipart-post" = {
-    version = "1.2.0";
-    source = {
-      type = "gem";
-      sha256 = "12p7lnmc52di1r4h73h6xrpppplzyyhani9p7wm8l4kgf1hnmwnc";
-    };
-  };
-  "octokit" = {
-    version = "3.2.0";
-    source = {
-      type = "gem";
-      sha256 = "07ll3x1hv72zssb4hkdw56xg3xk6x4fch4yf38zljvbh388r11ng";
-    };
-    dependencies = [
-      "sawyer"
-    ];
-  };
-  "puma" = {
-    version = "2.8.2";
-    source = {
-      type = "gem";
-      sha256 = "1l57fmf8vyxfjv7ab5znq0k339cym5ghnm5xxfvd1simjp73db0k";
-    };
-    dependencies = [
-      "rack"
-    ];
-  };
-  "rack" = {
-    version = "1.5.2";
-    source = {
-      type = "gem";
-      sha256 = "19szfw76cscrzjldvw30jp3461zl00w4xvw1x9lsmyp86h1g0jp6";
-    };
-  };
-  "rack-test" = {
-    version = "0.6.3";
-    source = {
-      type = "gem";
-      sha256 = "0h6x5jq24makgv2fq5qqgjlrk74dxfy62jif9blk43llw8ib2q7z";
-    };
-    dependencies = [
-      "rack"
-    ];
-  };
-  "rails" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "059mpljplmhfz8rr4hk40q67fllcpsy809m4mwwbkm8qwif2z5r0";
-    };
-    dependencies = [
-      "actionmailer"
-      "actionpack"
-      "actionview"
-      "activemodel"
-      "activerecord"
-      "activesupport"
-      "railties"
-      "sprockets-rails"
-    ];
-  };
-  "railties" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "1n08h0rgj0aq5lvslnih6lvqz9wadpz6nnb25i4qhp37fhhyz9yz";
-    };
-    dependencies = [
-      "actionpack"
-      "activesupport"
-      "rake"
-      "thor"
-    ];
-  };
-  "rake" = {
-    version = "10.4.0";
-    source = {
-      type = "gem";
-      sha256 = "0a10xzqc1lh6gjkajkslr0n40wjrniyiyzxkp9m5fc8wf7b74zw8";
-    };
-  };
-  "rest-client" = {
-    version = "1.6.7";
-    source = {
-      type = "gem";
-      sha256 = "0nn7zalgidz2yj0iqh3xvzh626krm2al79dfiij19jdhp0rk8853";
-    };
-    dependencies = [
-      "mime-types"
-    ];
-  };
-  "rspec-core" = {
-    version = "3.1.7";
-    source = {
-      type = "gem";
-      sha256 = "01bawvln663gffljwzpq3mrpa061cghjbvfbq15jvhmip3csxqc9";
-    };
-    dependencies = [
-      "rspec-support"
-    ];
-  };
-  "rspec-expectations" = {
-    version = "3.1.2";
-    source = {
-      type = "gem";
-      sha256 = "0m8d36wng1lpbcs54zhg1rxh63rgj345k3p0h0c06lgknz339nzh";
-    };
-    dependencies = [
-      "diff-lcs"
-      "rspec-support"
-    ];
-  };
-  "rspec-mocks" = {
-    version = "3.1.3";
-    source = {
-      type = "gem";
-      sha256 = "0gxk5w3klia4zsnp0svxck43xxwwfdqvhr3srv6p30f3m5q6rmzr";
-    };
-    dependencies = [
-      "rspec-support"
-    ];
-  };
-  "rspec-rails" = {
-    version = "3.1.0";
-    source = {
-      type = "gem";
-      sha256 = "1b1in3n1dc1bpf9wb3p3b2ynq05iacmr48jxzc73lj4g44ksh3wq";
-    };
-    dependencies = [
-      "actionpack"
-      "activesupport"
-      "railties"
-      "rspec-core"
-      "rspec-expectations"
-      "rspec-mocks"
-      "rspec-support"
-    ];
-  };
-  "rspec-support" = {
-    version = "3.1.2";
-    source = {
-      type = "gem";
-      sha256 = "14y6v9r9lrh91ry9r79h85v0f3y9ja25w42nv5z9n0bipfcwhprb";
-    };
-  };
-  "safe_yaml" = {
-    version = "1.0.4";
-    source = {
-      type = "gem";
-      sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094";
-    };
-  };
-  "sawyer" = {
-    version = "0.5.4";
-    source = {
-      type = "gem";
-      sha256 = "01kl4zpf0gaacnkra5nikrzfpwj8f10hsvgyzm7z2s1mz4iipx2v";
-    };
-    dependencies = [
-      "addressable"
-      "faraday"
-    ];
-  };
-  "shoulda-matchers" = {
-    version = "2.6.1";
-    source = {
-      type = "gem";
-      sha256 = "1p3jhvd4dsj6d7nbmvnqhqhpmb8pnr05pi7jv9ajwqcys8140mc1";
-    };
-    dependencies = [
-      "activesupport"
-    ];
-  };
-  "simplecov" = {
-    version = "0.9.1";
-    source = {
-      type = "gem";
-      sha256 = "06hylxlalaxxldpbaqa54gc52wxdff0fixdvjyzr6i4ygxwzr7yf";
-    };
-    dependencies = [
-      "docile"
-      "multi_json"
-      "simplecov-html"
-    ];
-  };
-  "simplecov-html" = {
-    version = "0.8.0";
-    source = {
-      type = "gem";
-      sha256 = "0jhn3jql73x7hsr00wwv984iyrcg0xhf64s90zaqv2f26blkqfb9";
-    };
-  };
-  "sprockets" = {
-    version = "2.12.3";
-    source = {
-      type = "gem";
-      sha256 = "1bn2drr8bc2af359dkfraq0nm0p1pib634kvhwn5lvj3r4vllnn2";
-    };
-    dependencies = [
-      "hike"
-      "multi_json"
-      "rack"
-      "tilt"
-    ];
-  };
-  "sprockets-rails" = {
-    version = "2.2.4";
-    source = {
-      type = "gem";
-      sha256 = "172cdg38cqsfgvrncjzj0kziz7kv6b1lx8pccd0blyphs25qf4gc";
-    };
-    dependencies = [
-      "actionpack"
-      "activesupport"
-      "sprockets"
-    ];
-  };
-  "sqlite3" = {
-    version = "1.3.9";
-    source = {
-      type = "gem";
-      sha256 = "07m6a6flmyyi0rkg0j7x1a9861zngwjnximfh95cli2zzd57914r";
-    };
-  };
-  "term-ansicolor" = {
-    version = "1.3.0";
-    source = {
-      type = "gem";
-      sha256 = "1a2gw7gmpmx57sdpyhjwl0zn4bqp7jyjz7aslpvvphd075layp4b";
-    };
-    dependencies = [
-      "tins"
-    ];
-  };
-  "thor" = {
-    version = "0.19.1";
-    source = {
-      type = "gem";
-      sha256 = "08p5gx18yrbnwc6xc0mxvsfaxzgy2y9i78xq7ds0qmdm67q39y4z";
-    };
-  };
-  "thread_safe" = {
-    version = "0.3.4";
-    source = {
-      type = "gem";
-      sha256 = "1cil2zcdzqkyr8zrwhlg7gywryg36j4mxlxw0h0x0j0wjym5nc8n";
-    };
-  };
-  "tilt" = {
-    version = "1.4.1";
-    source = {
-      type = "gem";
-      sha256 = "00sr3yy7sbqaq7cb2d2kpycajxqf1b1wr1yy33z4bnzmqii0b0ir";
-    };
-  };
-  "tins" = {
-    version = "1.3.0";
-    source = {
-      type = "gem";
-      sha256 = "1yxa5kyp9mw4w866wlg7c32ingzqxnzh3ir9yf06pwpkmq3mrbdi";
-    };
-  };
-  "tzinfo" = {
-    version = "1.2.2";
-    source = {
-      type = "gem";
-      sha256 = "1c01p3kg6xvy1cgjnzdfq45fggbwish8krd0h864jvbpybyx7cgx";
-    };
-    dependencies = [
-      "thread_safe"
-    ];
-  };
-  "webmock" = {
-    version = "1.20.0";
-    source = {
-      type = "gem";
-      sha256 = "0bl5v0xzcj24lx7xpsnywv3liqnqb5lfxysmmfb2fgi0n8586i6m";
-    };
-    dependencies = [
-      "addressable"
-      "crack"
-    ];
-  };
-}
\ No newline at end of file
diff --git a/pkgs/applications/networking/cluster/panamax/ui/Gemfile b/pkgs/applications/networking/cluster/panamax/ui/Gemfile
deleted file mode 100644
index 6f7dc59d04d0..000000000000
--- a/pkgs/applications/networking/cluster/panamax/ui/Gemfile
+++ /dev/null
@@ -1,31 +0,0 @@
-source 'https://rubygems.org'
-
-gem 'rails', '4.1.7'
-gem 'puma', '2.8.2'
-gem 'sass', '3.3.9'
-gem 'therubyracer', '0.12.1', platforms: :ruby
-gem 'haml', '4.0.5'
-gem 'uglifier', '2.5.1'
-gem 'ctl_base_ui'
-gem 'activeresource', '4.0.0'
-gem 'kramdown', '1.4.0'
-gem 'zeroclipboard-rails'
-
-
-group :test, :development do
-  gem 'rspec-rails'
-  gem 'its'
-  gem 'capybara'
-  gem 'teaspoon'
-  gem 'phantomjs'
-  gem 'dotenv-rails', '0.11.1'
-  gem 'pry'
-  gem 'pry-byebug'
-  gem 'pry-stack_explorer'
-end
-
-group :test do
-  gem 'webmock'
-  gem 'sinatra', '1.4.5'
-  gem 'coveralls', '0.7.0'
-end
diff --git a/pkgs/applications/networking/cluster/panamax/ui/Gemfile.lock b/pkgs/applications/networking/cluster/panamax/ui/Gemfile.lock
deleted file mode 100644
index b273595bbb05..000000000000
--- a/pkgs/applications/networking/cluster/panamax/ui/Gemfile.lock
+++ /dev/null
@@ -1,226 +0,0 @@
-GEM
-  remote: https://rubygems.org/
-  specs:
-    actionmailer (4.1.7)
-      actionpack (= 4.1.7)
-      actionview (= 4.1.7)
-      mail (~> 2.5, >= 2.5.4)
-    actionpack (4.1.7)
-      actionview (= 4.1.7)
-      activesupport (= 4.1.7)
-      rack (~> 1.5.2)
-      rack-test (~> 0.6.2)
-    actionview (4.1.7)
-      activesupport (= 4.1.7)
-      builder (~> 3.1)
-      erubis (~> 2.7.0)
-    activemodel (4.1.7)
-      activesupport (= 4.1.7)
-      builder (~> 3.1)
-    activerecord (4.1.7)
-      activemodel (= 4.1.7)
-      activesupport (= 4.1.7)
-      arel (~> 5.0.0)
-    activeresource (4.0.0)
-      activemodel (~> 4.0)
-      activesupport (~> 4.0)
-      rails-observers (~> 0.1.1)
-    activesupport (4.1.7)
-      i18n (~> 0.6, >= 0.6.9)
-      json (~> 1.7, >= 1.7.7)
-      minitest (~> 5.1)
-      thread_safe (~> 0.1)
-      tzinfo (~> 1.1)
-    addressable (2.3.6)
-    arel (5.0.1.20140414130214)
-    binding_of_caller (0.7.2)
-      debug_inspector (>= 0.0.1)
-    builder (3.2.2)
-    byebug (3.5.1)
-      columnize (~> 0.8)
-      debugger-linecache (~> 1.2)
-      slop (~> 3.6)
-    capybara (2.4.4)
-      mime-types (>= 1.16)
-      nokogiri (>= 1.3.3)
-      rack (>= 1.0.0)
-      rack-test (>= 0.5.4)
-      xpath (~> 2.0)
-    coderay (1.1.0)
-    columnize (0.8.9)
-    coveralls (0.7.0)
-      multi_json (~> 1.3)
-      rest-client
-      simplecov (>= 0.7)
-      term-ansicolor
-      thor
-    crack (0.4.2)
-      safe_yaml (~> 1.0.0)
-    ctl_base_ui (0.0.5)
-      haml (~> 4.0)
-      jquery-rails (~> 3.1)
-      jquery-ui-rails (~> 4.2)
-      rails (~> 4.1)
-      sass (~> 3.3)
-    debug_inspector (0.0.2)
-    debugger-linecache (1.2.0)
-    diff-lcs (1.2.5)
-    docile (1.1.5)
-    dotenv (0.11.1)
-      dotenv-deployment (~> 0.0.2)
-    dotenv-deployment (0.0.2)
-    dotenv-rails (0.11.1)
-      dotenv (= 0.11.1)
-    erubis (2.7.0)
-    execjs (2.2.2)
-    haml (4.0.5)
-      tilt
-    hike (1.2.3)
-    i18n (0.7.0)
-    its (0.2.0)
-      rspec-core
-    jquery-rails (3.1.2)
-      railties (>= 3.0, < 5.0)
-      thor (>= 0.14, < 2.0)
-    jquery-ui-rails (4.2.1)
-      railties (>= 3.2.16)
-    json (1.8.2)
-    kramdown (1.4.0)
-    libv8 (3.16.14.11)
-    mail (2.6.3)
-      mime-types (>= 1.16, < 3)
-    method_source (0.8.2)
-    mime-types (2.4.3)
-    mini_portile (0.6.1)
-    minitest (5.5.1)
-    multi_json (1.10.1)
-    netrc (0.8.0)
-    nokogiri (1.6.5)
-      mini_portile (~> 0.6.0)
-    phantomjs (1.9.7.1)
-    pry (0.10.1)
-      coderay (~> 1.1.0)
-      method_source (~> 0.8.1)
-      slop (~> 3.4)
-    pry-byebug (2.0.0)
-      byebug (~> 3.4)
-      pry (~> 0.10)
-    pry-stack_explorer (0.4.9.1)
-      binding_of_caller (>= 0.7)
-      pry (>= 0.9.11)
-    puma (2.8.2)
-      rack (>= 1.1, < 2.0)
-    rack (1.5.2)
-    rack-protection (1.5.3)
-      rack
-    rack-test (0.6.3)
-      rack (>= 1.0)
-    rails (4.1.7)
-      actionmailer (= 4.1.7)
-      actionpack (= 4.1.7)
-      actionview (= 4.1.7)
-      activemodel (= 4.1.7)
-      activerecord (= 4.1.7)
-      activesupport (= 4.1.7)
-      bundler (>= 1.3.0, < 2.0)
-      railties (= 4.1.7)
-      sprockets-rails (~> 2.0)
-    rails-observers (0.1.2)
-      activemodel (~> 4.0)
-    railties (4.1.7)
-      actionpack (= 4.1.7)
-      activesupport (= 4.1.7)
-      rake (>= 0.8.7)
-      thor (>= 0.18.1, < 2.0)
-    rake (10.4.0)
-    ref (1.0.5)
-    rest-client (1.7.2)
-      mime-types (>= 1.16, < 3.0)
-      netrc (~> 0.7)
-    rspec-core (3.1.7)
-      rspec-support (~> 3.1.0)
-    rspec-expectations (3.1.2)
-      diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.1.0)
-    rspec-mocks (3.1.3)
-      rspec-support (~> 3.1.0)
-    rspec-rails (3.1.0)
-      actionpack (>= 3.0)
-      activesupport (>= 3.0)
-      railties (>= 3.0)
-      rspec-core (~> 3.1.0)
-      rspec-expectations (~> 3.1.0)
-      rspec-mocks (~> 3.1.0)
-      rspec-support (~> 3.1.0)
-    rspec-support (3.1.2)
-    safe_yaml (1.0.4)
-    sass (3.3.9)
-    simplecov (0.9.1)
-      docile (~> 1.1.0)
-      multi_json (~> 1.0)
-      simplecov-html (~> 0.8.0)
-    simplecov-html (0.8.0)
-    sinatra (1.4.5)
-      rack (~> 1.4)
-      rack-protection (~> 1.4)
-      tilt (~> 1.3, >= 1.3.4)
-    slop (3.6.0)
-    sprockets (2.12.3)
-      hike (~> 1.2)
-      multi_json (~> 1.0)
-      rack (~> 1.0)
-      tilt (~> 1.1, != 1.3.0)
-    sprockets-rails (2.2.4)
-      actionpack (>= 3.0)
-      activesupport (>= 3.0)
-      sprockets (>= 2.8, < 4.0)
-    teaspoon (0.8.0)
-      railties (>= 3.2.5, < 5)
-    term-ansicolor (1.3.0)
-      tins (~> 1.0)
-    therubyracer (0.12.1)
-      libv8 (~> 3.16.14.0)
-      ref
-    thor (0.19.1)
-    thread_safe (0.3.4)
-    tilt (1.4.1)
-    tins (1.3.3)
-    tzinfo (1.2.2)
-      thread_safe (~> 0.1)
-    uglifier (2.5.1)
-      execjs (>= 0.3.0)
-      json (>= 1.8.0)
-    webmock (1.20.4)
-      addressable (>= 2.3.6)
-      crack (>= 0.3.2)
-    xpath (2.0.0)
-      nokogiri (~> 1.3)
-    zeroclipboard-rails (0.1.0)
-      railties (>= 3.1)
-
-PLATFORMS
-  ruby
-
-DEPENDENCIES
-  activeresource (= 4.0.0)
-  capybara
-  coveralls (= 0.7.0)
-  ctl_base_ui
-  dotenv-rails (= 0.11.1)
-  haml (= 4.0.5)
-  its
-  kramdown (= 1.4.0)
-  phantomjs
-  pry
-  pry-byebug
-  pry-stack_explorer
-  puma (= 2.8.2)
-  rails (= 4.1.7)
-  rspec-rails
-  sass (= 3.3.9)
-  sinatra (= 1.4.5)
-  teaspoon
-  therubyracer (= 0.12.1)
-  uglifier (= 2.5.1)
-  webmock
-  zeroclipboard-rails
diff --git a/pkgs/applications/networking/cluster/panamax/ui/default.nix b/pkgs/applications/networking/cluster/panamax/ui/default.nix
deleted file mode 100644
index 2f60942f014b..000000000000
--- a/pkgs/applications/networking/cluster/panamax/ui/default.nix
+++ /dev/null
@@ -1,72 +0,0 @@
-{ stdenv, fetchgit, fetchurl, makeWrapper, bundlerEnv, bundler
-, ruby, openssl, sqlite, dataDir ? "/var/lib/panamax-ui"}@args:
-
-with stdenv.lib;
-
-stdenv.mkDerivation rec {
-  name = "panamax-ui-${version}";
-  version = "0.2.14";
-
-  env = bundlerEnv {
-    name = "panamax-ui-gems-${version}";
-    inherit ruby;
-    gemdir = ./.;
-  };
-
-  bundler = args.bundler.override { inherit ruby; };
-
-  src = fetchgit {
-    rev = "refs/tags/v${version}";
-    url = "git://github.com/CenturyLinkLabs/panamax-ui";
-    sha256 = "01k0h0rjqp5arvwxm2xpfxjsag5qw0qqlg7hx4v8f6jsyc4wmjfl";
-  };
-
-  buildInputs = [ makeWrapper env.ruby openssl sqlite bundler ];
-
-  setSourceRoot = ''
-    mkdir -p $out/share
-    cp -R panamax-ui $out/share/panamax-ui
-    export sourceRoot="$out/share/panamax-ui"
-  '';
-
-  postPatch = ''
-    find . -type f -iname "*.haml" -exec sed -e 's|CoreOS Journal|NixOS Journal|g' -i "{}" \;
-    find . -type f -iname "*.haml" -exec sed -e 's|CoreOS Local|NixOS Local|g' -i "{}" \;
-    find . -type f -iname "*.haml" -exec sed -e 's|CoreOS Host|NixOS Host|g' -i "{}" \;
-    sed -e 's|CoreOS Local|NixOS Local|g' -i "spec/features/manage_application_spec.rb"
-    # fix libv8 dependency
-    substituteInPlace Gemfile.lock --replace "3.16.14.7" "3.16.14.11"
-  '';
-
-  configurePhase = ''
-    export HOME=$PWD
-    export GEM_HOME=${env}/${env.ruby.gemPath}
-  '';
-
-  buildPhase = ''
-    rm -f ./bin/*
-    bundle exec rake rails:update:bin
-  '';
-
-  installPhase = ''
-    rm -rf log tmp db
-    ln -sf ${dataDir}/{db,state/log,state/tmp} .
-
-    mkdir -p $out/bin
-    makeWrapper bin/bundle "$out/bin/bundle" \
-      --run "cd $out/share/panamax-ui" \
-      --prefix "PATH" : "$out/share/panamax-ui/bin:${env.ruby}/bin:$PATH" \
-      --prefix "HOME" : "$out/share/panamax-ui" \
-      --prefix "GEM_HOME" : "${env}/${env.ruby.gemPath}" \
-      --prefix "GEM_PATH" : "$out/share/panamax-ui:${bundler}/${env.ruby.gemPath}"
-  '';
-
-  meta = with stdenv.lib; {
-    broken = true; # needs ruby 2.1
-    homepage = https://github.com/CenturyLinkLabs/panamax-ui;
-    description = "The Web GUI for Panamax";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ matejc offline ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/applications/networking/cluster/panamax/ui/gemset.nix b/pkgs/applications/networking/cluster/panamax/ui/gemset.nix
deleted file mode 100644
index b41b482edb73..000000000000
--- a/pkgs/applications/networking/cluster/panamax/ui/gemset.nix
+++ /dev/null
@@ -1,789 +0,0 @@
-{
-  "actionmailer" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "0qjv5akjbpgd4cx518k522mssvc3y3nki65hi6fj5nbzi7a6rwq5";
-    };
-    dependencies = [
-      "actionpack"
-      "actionview"
-      "mail"
-    ];
-  };
-  "actionpack" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "07y1ny00h69xklq260smyl5md052f617gqrzkyw5sxafs5z25zax";
-    };
-    dependencies = [
-      "actionview"
-      "activesupport"
-      "rack"
-      "rack-test"
-    ];
-  };
-  "actionview" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "06sp37gfpn2jn7j6vlpp1y6vfi5kig60vyvixrjhyz0g4vgm13ax";
-    };
-    dependencies = [
-      "activesupport"
-      "builder"
-      "erubis"
-    ];
-  };
-  "activemodel" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "0rlqzz25l7vsphgkilg80kmk20d9h357awi27ax6zzb9klkqh0jr";
-    };
-    dependencies = [
-      "activesupport"
-      "builder"
-    ];
-  };
-  "activerecord" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "0j4r0m32mjbwmz9gs8brln35jzr1cn7h585ggj0w0f1ai4hjsby5";
-    };
-    dependencies = [
-      "activemodel"
-      "activesupport"
-      "arel"
-    ];
-  };
-  "activeresource" = {
-    version = "4.0.0";
-    source = {
-      type = "gem";
-      sha256 = "0fc5igjijyjzsl9q5kybkdzhc92zv8wsv0ifb0y90i632jx6d4jq";
-    };
-    dependencies = [
-      "activemodel"
-      "activesupport"
-      "rails-observers"
-    ];
-  };
-  "activesupport" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "13i3mz66d5kp5y39gjwmcfqv0wb6mxm5k1nnz40wvd38dsf7n3bs";
-    };
-    dependencies = [
-      "i18n"
-      "json"
-      "minitest"
-      "thread_safe"
-      "tzinfo"
-    ];
-  };
-  "addressable" = {
-    version = "2.3.6";
-    source = {
-      type = "gem";
-      sha256 = "137fj0whmn1kvaq8wjalp8x4qbblwzvg3g4bfx8d8lfi6f0w48p8";
-    };
-  };
-  "arel" = {
-    version = "5.0.1.20140414130214";
-    source = {
-      type = "gem";
-      sha256 = "0dhnc20h1v8ml3nmkxq92rr7qxxpk6ixhwvwhgl2dbw9mmxz0hf9";
-    };
-  };
-  "binding_of_caller" = {
-    version = "0.7.2";
-    source = {
-      type = "gem";
-      sha256 = "15jg6dkaq2nzcd602d7ppqbdxw3aji961942w93crs6qw4n6h9yk";
-    };
-    dependencies = [
-      "debug_inspector"
-    ];
-  };
-  "builder" = {
-    version = "3.2.2";
-    source = {
-      type = "gem";
-      sha256 = "14fii7ab8qszrvsvhz6z2z3i4dw0h41a62fjr2h1j8m41vbrmyv2";
-    };
-  };
-  "byebug" = {
-    version = "3.5.1";
-    source = {
-      type = "gem";
-      sha256 = "0ldc2r0b316rrn2fgdgiznskj9gb0q9n60243laq7nqw9na8wdan";
-    };
-    dependencies = [
-      "columnize"
-      "debugger-linecache"
-      "slop"
-    ];
-  };
-  "capybara" = {
-    version = "2.4.4";
-    source = {
-      type = "gem";
-      sha256 = "114k4xi4nfbp3jfbxgwa3fksbwsyibx74gbdqpcgg3dxpmzkaa4f";
-    };
-    dependencies = [
-      "mime-types"
-      "nokogiri"
-      "rack"
-      "rack-test"
-      "xpath"
-    ];
-  };
-  "coderay" = {
-    version = "1.1.0";
-    source = {
-      type = "gem";
-      sha256 = "059wkzlap2jlkhg460pkwc1ay4v4clsmg1bp4vfzjzkgwdckr52s";
-    };
-  };
-  "columnize" = {
-    version = "0.8.9";
-    source = {
-      type = "gem";
-      sha256 = "1f3azq8pvdaaclljanwhab78hdw40k908ma2cwk59qzj4hvf7mip";
-    };
-  };
-  "coveralls" = {
-    version = "0.7.0";
-    source = {
-      type = "gem";
-      sha256 = "0sz30d7b83qqsj3i0fr691w05d62wj7x3afh0ryjkqkis3fq94j4";
-    };
-    dependencies = [
-      "multi_json"
-      "rest-client"
-      "simplecov"
-      "term-ansicolor"
-      "thor"
-    ];
-  };
-  "crack" = {
-    version = "0.4.2";
-    source = {
-      type = "gem";
-      sha256 = "1il94m92sz32nw5i6hdq14f1a2c3s9hza9zn6l95fvqhabq38k7a";
-    };
-    dependencies = [
-      "safe_yaml"
-    ];
-  };
-  "ctl_base_ui" = {
-    version = "0.0.5";
-    source = {
-      type = "gem";
-      sha256 = "1pji85xmddgld5lqx52zxi5r2kx6rsjwkqlr26bp62xb29r10x57";
-    };
-    dependencies = [
-      "haml"
-      "jquery-rails"
-      "jquery-ui-rails"
-      "rails"
-      "sass"
-    ];
-  };
-  "debug_inspector" = {
-    version = "0.0.2";
-    source = {
-      type = "gem";
-      sha256 = "109761g00dbrw5q0dfnbqg8blfm699z4jj70l4zrgf9mzn7ii50m";
-    };
-  };
-  "debugger-linecache" = {
-    version = "1.2.0";
-    source = {
-      type = "gem";
-      sha256 = "0iwyx190fd5vfwj1gzr8pg3m374kqqix4g4fc4qw29sp54d3fpdz";
-    };
-  };
-  "diff-lcs" = {
-    version = "1.2.5";
-    source = {
-      type = "gem";
-      sha256 = "1vf9civd41bnqi6brr5d9jifdw73j9khc6fkhfl1f8r9cpkdvlx1";
-    };
-  };
-  "docile" = {
-    version = "1.1.5";
-    source = {
-      type = "gem";
-      sha256 = "0m8j31whq7bm5ljgmsrlfkiqvacrw6iz9wq10r3gwrv5785y8gjx";
-    };
-  };
-  "dotenv" = {
-    version = "0.11.1";
-    source = {
-      type = "gem";
-      sha256 = "09z0y0d6bks7i0sqvd8szfqj9i1kkj01anzly7shi83b3gxhrq9m";
-    };
-    dependencies = [
-      "dotenv-deployment"
-    ];
-  };
-  "dotenv-deployment" = {
-    version = "0.0.2";
-    source = {
-      type = "gem";
-      sha256 = "1ad66jq9a09qq1js8wsyil97018s7y6x0vzji0dy34gh65sbjz8c";
-    };
-  };
-  "dotenv-rails" = {
-    version = "0.11.1";
-    source = {
-      type = "gem";
-      sha256 = "0r6hif0i1lipbi7mkxx7wa5clsn65n6wyd9jry262cx396lsfrqy";
-    };
-    dependencies = [
-      "dotenv"
-    ];
-  };
-  "erubis" = {
-    version = "2.7.0";
-    source = {
-      type = "gem";
-      sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3";
-    };
-  };
-  "execjs" = {
-    version = "2.2.2";
-    source = {
-      type = "gem";
-      sha256 = "05m41mnxn4b2p133qzbz5cy9cc5rn57aa0pp2943hxmzbk379z1f";
-    };
-  };
-  "haml" = {
-    version = "4.0.5";
-    source = {
-      type = "gem";
-      sha256 = "1xmzb0k5q271090crzmv7dbw8ss4289bzxklrc0fhw6pw3kcvc85";
-    };
-    dependencies = [
-      "tilt"
-    ];
-  };
-  "hike" = {
-    version = "1.2.3";
-    source = {
-      type = "gem";
-      sha256 = "0i6c9hrszzg3gn2j41v3ijnwcm8cc2931fnjiv6mnpl4jcjjykhm";
-    };
-  };
-  "i18n" = {
-    version = "0.7.0";
-    source = {
-      type = "gem";
-      sha256 = "1i5z1ykl8zhszsxcs8mzl8d0dxgs3ylz8qlzrw74jb0gplkx6758";
-    };
-  };
-  "its" = {
-    version = "0.2.0";
-    source = {
-      type = "gem";
-      sha256 = "0rxwds9ipqp48mzqcaxzmfcqhawazg0zlhc1avv3i2cmm3np1z8g";
-    };
-    dependencies = [
-      "rspec-core"
-    ];
-  };
-  "jquery-rails" = {
-    version = "3.1.2";
-    source = {
-      type = "gem";
-      sha256 = "0h5a565i3l2mbd221m6mz9d1nr53pz19i9qxv08qr1dv0yx2pr3y";
-    };
-    dependencies = [
-      "railties"
-      "thor"
-    ];
-  };
-  "jquery-ui-rails" = {
-    version = "4.2.1";
-    source = {
-      type = "gem";
-      sha256 = "1garrnqwh35acj2pp4sp6fpm2g881h23y644lzbic2qmcrq9wd2v";
-    };
-    dependencies = [
-      "railties"
-    ];
-  };
-  "json" = {
-    version = "1.8.2";
-    source = {
-      type = "gem";
-      sha256 = "0zzvv25vjikavd3b1bp6lvbgj23vv9jvmnl4vpim8pv30z8p6vr5";
-    };
-  };
-  "kramdown" = {
-    version = "1.4.0";
-    source = {
-      type = "gem";
-      sha256 = "001vy0ymiwbvkdbb9wpqmswv6imliv7xim00gq6rlk0chnbiaq80";
-    };
-  };
-  libv8 = {
-    version = "3.16.14.11";
-    source = {
-      type = "gem";
-      sha256 = "000vbiy78wk5r1f6p7qncab8ldg7qw5pjz7bchn3lw700gpaacxp";
-    };
-  };
-  "mail" = {
-    version = "2.6.3";
-    source = {
-      type = "gem";
-      sha256 = "1nbg60h3cpnys45h7zydxwrl200p7ksvmrbxnwwbpaaf9vnf3znp";
-    };
-    dependencies = [
-      "mime-types"
-    ];
-  };
-  "method_source" = {
-    version = "0.8.2";
-    source = {
-      type = "gem";
-      sha256 = "1g5i4w0dmlhzd18dijlqw5gk27bv6dj2kziqzrzb7mpgxgsd1sf2";
-    };
-  };
-  "mime-types" = {
-    version = "2.4.3";
-    source = {
-      type = "gem";
-      sha256 = "16nissnb31wj7kpcaynx4gr67i7pbkzccfg8k7xmplbkla4rmwiq";
-    };
-  };
-  "mini_portile" = {
-    version = "0.6.1";
-    source = {
-      type = "gem";
-      sha256 = "07gah4k84sar9d850v9gip9b323pw74vwwndh3bbzxpw5iiwsd3l";
-    };
-  };
-  "minitest" = {
-    version = "5.5.1";
-    source = {
-      type = "gem";
-      sha256 = "1h8jn0rgmwy37jnhfcg55iilw0n370vgp8xnh0g5laa8rhv32fyn";
-    };
-  };
-  "multi_json" = {
-    version = "1.10.1";
-    source = {
-      type = "gem";
-      sha256 = "1ll21dz01jjiplr846n1c8yzb45kj5hcixgb72rz0zg8fyc9g61c";
-    };
-  };
-  "netrc" = {
-    version = "0.8.0";
-    source = {
-      type = "gem";
-      sha256 = "1j4jbdvd19kq34xiqx1yqb4wmcywyrlaky8hrh09c1hz3c0v5dkb";
-    };
-  };
-  "nokogiri" = {
-    version = "1.6.5";
-    source = {
-      type = "gem";
-      sha256 = "1xmxz6fa0m4p7c7ngpgz6gjgv65lzz63dsf0b6vh7gs2fkiw8j7l";
-    };
-    dependencies = [
-      "mini_portile"
-    ];
-  };
-  "phantomjs" = {
-    version = "1.9.7.1";
-    source = {
-      type = "gem";
-      sha256 = "14as0yzwbzvshbp1f8igjxcdxc5vbjgh0jhdvy393il084inlrl7";
-    };
-  };
-  "pry" = {
-    version = "0.10.1";
-    source = {
-      type = "gem";
-      sha256 = "1j0r5fm0wvdwzbh6d6apnp7c0n150hpm9zxpm5xvcgfqr36jaj8z";
-    };
-    dependencies = [
-      "coderay"
-      "method_source"
-      "slop"
-    ];
-  };
-  "pry-byebug" = {
-    version = "2.0.0";
-    source = {
-      type = "gem";
-      sha256 = "17b6720ci9345wkzj369ydyj6hdlg2krd26zivpd4dvaijszzgzq";
-    };
-    dependencies = [
-      "byebug"
-      "pry"
-    ];
-  };
-  "pry-stack_explorer" = {
-    version = "0.4.9.1";
-    source = {
-      type = "gem";
-      sha256 = "1828jqcfdr9nk86n15ky199vf33cfz51wkpv6kx230g0dsh9r85z";
-    };
-    dependencies = [
-      "binding_of_caller"
-      "pry"
-    ];
-  };
-  "puma" = {
-    version = "2.8.2";
-    source = {
-      type = "gem";
-      sha256 = "1l57fmf8vyxfjv7ab5znq0k339cym5ghnm5xxfvd1simjp73db0k";
-    };
-    dependencies = [
-      "rack"
-    ];
-  };
-  "rack" = {
-    version = "1.5.2";
-    source = {
-      type = "gem";
-      sha256 = "19szfw76cscrzjldvw30jp3461zl00w4xvw1x9lsmyp86h1g0jp6";
-    };
-  };
-  "rack-protection" = {
-    version = "1.5.3";
-    source = {
-      type = "gem";
-      sha256 = "0cvb21zz7p9wy23wdav63z5qzfn4nialik22yqp6gihkgfqqrh5r";
-    };
-    dependencies = [
-      "rack"
-    ];
-  };
-  "rack-test" = {
-    version = "0.6.3";
-    source = {
-      type = "gem";
-      sha256 = "0h6x5jq24makgv2fq5qqgjlrk74dxfy62jif9blk43llw8ib2q7z";
-    };
-    dependencies = [
-      "rack"
-    ];
-  };
-  "rails" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "059mpljplmhfz8rr4hk40q67fllcpsy809m4mwwbkm8qwif2z5r0";
-    };
-    dependencies = [
-      "actionmailer"
-      "actionpack"
-      "actionview"
-      "activemodel"
-      "activerecord"
-      "activesupport"
-      "railties"
-      "sprockets-rails"
-    ];
-  };
-  "rails-observers" = {
-    version = "0.1.2";
-    source = {
-      type = "gem";
-      sha256 = "1lsw19jzmvipvrfy2z04hi7r29dvkfc43h43vs67x6lsj9rxwwcy";
-    };
-    dependencies = [
-      "activemodel"
-    ];
-  };
-  "railties" = {
-    version = "4.1.7";
-    source = {
-      type = "gem";
-      sha256 = "1n08h0rgj0aq5lvslnih6lvqz9wadpz6nnb25i4qhp37fhhyz9yz";
-    };
-    dependencies = [
-      "actionpack"
-      "activesupport"
-      "rake"
-      "thor"
-    ];
-  };
-  "rake" = {
-    version = "10.4.0";
-    source = {
-      type = "gem";
-      sha256 = "0a10xzqc1lh6gjkajkslr0n40wjrniyiyzxkp9m5fc8wf7b74zw8";
-    };
-  };
-  "ref" = {
-    version = "1.0.5";
-    source = {
-      type = "gem";
-      sha256 = "19qgpsfszwc2sfh6wixgky5agn831qq8ap854i1jqqhy1zsci3la";
-    };
-  };
-  "rest-client" = {
-    version = "1.7.2";
-    source = {
-      type = "gem";
-      sha256 = "0h8c0prfi2v5p8iim3wm60xc4yripc13nqwq601bfl85k4gf25i0";
-    };
-    dependencies = [
-      "mime-types"
-      "netrc"
-    ];
-  };
-  "rspec-core" = {
-    version = "3.1.7";
-    source = {
-      type = "gem";
-      sha256 = "01bawvln663gffljwzpq3mrpa061cghjbvfbq15jvhmip3csxqc9";
-    };
-    dependencies = [
-      "rspec-support"
-    ];
-  };
-  "rspec-expectations" = {
-    version = "3.1.2";
-    source = {
-      type = "gem";
-      sha256 = "0m8d36wng1lpbcs54zhg1rxh63rgj345k3p0h0c06lgknz339nzh";
-    };
-    dependencies = [
-      "diff-lcs"
-      "rspec-support"
-    ];
-  };
-  "rspec-mocks" = {
-    version = "3.1.3";
-    source = {
-      type = "gem";
-      sha256 = "0gxk5w3klia4zsnp0svxck43xxwwfdqvhr3srv6p30f3m5q6rmzr";
-    };
-    dependencies = [
-      "rspec-support"
-    ];
-  };
-  "rspec-rails" = {
-    version = "3.1.0";
-    source = {
-      type = "gem";
-      sha256 = "1b1in3n1dc1bpf9wb3p3b2ynq05iacmr48jxzc73lj4g44ksh3wq";
-    };
-    dependencies = [
-      "actionpack"
-      "activesupport"
-      "railties"
-      "rspec-core"
-      "rspec-expectations"
-      "rspec-mocks"
-      "rspec-support"
-    ];
-  };
-  "rspec-support" = {
-    version = "3.1.2";
-    source = {
-      type = "gem";
-      sha256 = "14y6v9r9lrh91ry9r79h85v0f3y9ja25w42nv5z9n0bipfcwhprb";
-    };
-  };
-  "safe_yaml" = {
-    version = "1.0.4";
-    source = {
-      type = "gem";
-      sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094";
-    };
-  };
-  "sass" = {
-    version = "3.3.9";
-    source = {
-      type = "gem";
-      sha256 = "0k19vj73283i907z4wfkc9qdska2b19z7ps6lcr5s4qzwis1zkmz";
-    };
-  };
-  "simplecov" = {
-    version = "0.9.1";
-    source = {
-      type = "gem";
-      sha256 = "06hylxlalaxxldpbaqa54gc52wxdff0fixdvjyzr6i4ygxwzr7yf";
-    };
-    dependencies = [
-      "docile"
-      "multi_json"
-      "simplecov-html"
-    ];
-  };
-  "simplecov-html" = {
-    version = "0.8.0";
-    source = {
-      type = "gem";
-      sha256 = "0jhn3jql73x7hsr00wwv984iyrcg0xhf64s90zaqv2f26blkqfb9";
-    };
-  };
-  "sinatra" = {
-    version = "1.4.5";
-    source = {
-      type = "gem";
-      sha256 = "0qyna3wzlnvsz69d21lxcm3ixq7db08mi08l0a88011qi4qq701s";
-    };
-    dependencies = [
-      "rack"
-      "rack-protection"
-      "tilt"
-    ];
-  };
-  "slop" = {
-    version = "3.6.0";
-    source = {
-      type = "gem";
-      sha256 = "00w8g3j7k7kl8ri2cf1m58ckxk8rn350gp4chfscmgv6pq1spk3n";
-    };
-  };
-  "sprockets" = {
-    version = "2.12.3";
-    source = {
-      type = "gem";
-      sha256 = "1bn2drr8bc2af359dkfraq0nm0p1pib634kvhwn5lvj3r4vllnn2";
-    };
-    dependencies = [
-      "hike"
-      "multi_json"
-      "rack"
-      "tilt"
-    ];
-  };
-  "sprockets-rails" = {
-    version = "2.2.4";
-    source = {
-      type = "gem";
-      sha256 = "172cdg38cqsfgvrncjzj0kziz7kv6b1lx8pccd0blyphs25qf4gc";
-    };
-    dependencies = [
-      "actionpack"
-      "activesupport"
-      "sprockets"
-    ];
-  };
-  "teaspoon" = {
-    version = "0.8.0";
-    source = {
-      type = "gem";
-      sha256 = "1j3brbm9cv5km9d9wzb6q2b3cvc6m254z48h7h77z1w6c5wr0p3z";
-    };
-    dependencies = [
-      "railties"
-    ];
-  };
-  "term-ansicolor" = {
-    version = "1.3.0";
-    source = {
-      type = "gem";
-      sha256 = "1a2gw7gmpmx57sdpyhjwl0zn4bqp7jyjz7aslpvvphd075layp4b";
-    };
-    dependencies = [
-      "tins"
-    ];
-  };
-  "therubyracer" = {
-    version = "0.12.1";
-    source = {
-      type = "gem";
-      sha256 = "106fqimqyaalh7p6czbl5m2j69z8gv7cm10mjb8bbb2p2vlmqmi6";
-    };
-    dependencies = [
-      "libv8"
-      "ref"
-    ];
-  };
-  "thor" = {
-    version = "0.19.1";
-    source = {
-      type = "gem";
-      sha256 = "08p5gx18yrbnwc6xc0mxvsfaxzgy2y9i78xq7ds0qmdm67q39y4z";
-    };
-  };
-  "thread_safe" = {
-    version = "0.3.4";
-    source = {
-      type = "gem";
-      sha256 = "1cil2zcdzqkyr8zrwhlg7gywryg36j4mxlxw0h0x0j0wjym5nc8n";
-    };
-  };
-  "tilt" = {
-    version = "1.4.1";
-    source = {
-      type = "gem";
-      sha256 = "00sr3yy7sbqaq7cb2d2kpycajxqf1b1wr1yy33z4bnzmqii0b0ir";
-    };
-  };
-  "tins" = {
-    version = "1.3.3";
-    source = {
-      type = "gem";
-      sha256 = "14jnsg15wakdk1ljh2iv9yvzk8nb7gpzd2zw4yvjikmffqjyqvna";
-    };
-  };
-  "tzinfo" = {
-    version = "1.2.2";
-    source = {
-      type = "gem";
-      sha256 = "1c01p3kg6xvy1cgjnzdfq45fggbwish8krd0h864jvbpybyx7cgx";
-    };
-    dependencies = [
-      "thread_safe"
-    ];
-  };
-  "uglifier" = {
-    version = "2.5.1";
-    source = {
-      type = "gem";
-      sha256 = "1vihq309mzv9a2i0s8v4imrn1g2kj8z0vr88q3i5b657c4kxzfp0";
-    };
-    dependencies = [
-      "execjs"
-      "json"
-    ];
-  };
-  "webmock" = {
-    version = "1.20.4";
-    source = {
-      type = "gem";
-      sha256 = "01cz13ybxbbvkpl21bcfv0p9ir8m2zcplx93ps01ma54p25z4mxr";
-    };
-    dependencies = [
-      "addressable"
-      "crack"
-    ];
-  };
-  "xpath" = {
-    version = "2.0.0";
-    source = {
-      type = "gem";
-      sha256 = "04kcr127l34p7221z13blyl0dvh0bmxwx326j72idayri36a394w";
-    };
-    dependencies = [
-      "nokogiri"
-    ];
-  };
-  "zeroclipboard-rails" = {
-    version = "0.1.0";
-    source = {
-      type = "gem";
-      sha256 = "00ixal0a0mxaqsyzp06c6zz4qdwqydy1qv4n7hbyqfhbmsdalcfc";
-    };
-    dependencies = [
-      "railties"
-    ];
-  };
-}
diff --git a/pkgs/servers/fleet/default.nix b/pkgs/servers/fleet/default.nix
deleted file mode 100644
index 98daab253b3c..000000000000
--- a/pkgs/servers/fleet/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ stdenv, lib, go, fetchFromGitHub }:
-
-stdenv.mkDerivation rec {
-  name = "fleet-${version}";
-  version = "1.0.0";
-
-  src = fetchFromGitHub {
-    owner = "coreos";
-    repo = "fleet";
-    rev = "v${version}";
-    sha256 = "0j48ajz19aqfzv9iyznnn39aw51y1nqcl270grmvi5cbqycmrfm0";
-  };
-
-  buildInputs = [ go ];
-
-  buildPhase = ''
-    patchShebangs build
-    ./build
-  '';
-
-  installPhase = ''
-    mkdir -p $out
-    mv bin $out
-  '';
-
-  meta = with stdenv.lib; {
-    description = "A distributed init system";
-    homepage = https://coreos.com/using-coreos/clustering/;
-    license = licenses.asl20;
-    maintainers = with maintainers; [
-      cstrahan
-      jgeerds
-      offline
-    ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index f5db1ada4038..fdaf166d5363 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -12431,8 +12431,6 @@ with pkgs;
   firebird = callPackage ../servers/firebird { icu = null; stdenv = overrideCC stdenv gcc5; };
   firebirdSuper = callPackage ../servers/firebird { icu = icu58; superServer = true; stdenv = overrideCC stdenv gcc5; };
 
-  fleet = callPackage ../servers/fleet { };
-
   foswiki = callPackage ../servers/foswiki { };
 
   frab = callPackage ../servers/web-apps/frab { };
@@ -17033,9 +17031,6 @@ with pkgs;
 
   p4v = libsForQt5.callPackage ../applications/version-management/p4v { };
 
-  panamax_api = callPackage ../applications/networking/cluster/panamax/api { };
-  panamax_ui = callPackage ../applications/networking/cluster/panamax/ui { };
-
   partio = callPackage ../development/libraries/partio {};
 
   pcmanfm = callPackage ../applications/misc/pcmanfm { };