summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGregor Kleen <gkleen@yggdrasil.li>2015-07-16 19:44:44 +0200
committerGregor Kleen <gkleen@yggdrasil.li>2015-07-16 19:44:44 +0200
commit885af08edef3eede81101d4303e3a025dc078449 (patch)
tree2f5460b5cf387fec5c92f77afd07c32ed4bd265b
parent5ffaa3126e1a35309a09d5bd356dbe363de91d88 (diff)
downloadutils-885af08edef3eede81101d4303e3a025dc078449.tar
utils-885af08edef3eede81101d4303e3a025dc078449.tar.gz
utils-885af08edef3eede81101d4303e3a025dc078449.tar.bz2
utils-885af08edef3eede81101d4303e3a025dc078449.tar.xz
utils-885af08edef3eede81101d4303e3a025dc078449.zip
cleanup, rebuild-system
-rw-r--r--nix/cliparg.nix4
-rw-r--r--nix/default.nix3
-rw-r--r--nix/rebuild-system.nix28
-rw-r--r--rebuild-system11
4 files changed, 43 insertions, 3 deletions
diff --git a/nix/cliparg.nix b/nix/cliparg.nix
index fcb2066..8aa9a71 100644
--- a/nix/cliparg.nix
+++ b/nix/cliparg.nix
@@ -1,7 +1,7 @@
1{ stdenv 1{ stdenv
2, fetchgit 2, fetchgit
3, makeWrapper 3, makeWrapper
4, xclip 4, xclip
5}: 5}:
6 6
7stdenv.mkDerivation rec { 7stdenv.mkDerivation rec {
diff --git a/nix/default.nix b/nix/default.nix
index 9aadc46..de52fd4 100644
--- a/nix/default.nix
+++ b/nix/default.nix
@@ -3,5 +3,6 @@
3let 3let
4 pkgs = import <nixpkgs> {}; 4 pkgs = import <nixpkgs> {};
5in rec { 5in rec {
6 cliparg = pkgs.callPackage (import ./cliparg.nix) {}; 6 cliparg = pkgs.callPackage ./cliparg.nix {};
7 rebuild-system = pkgs.callPackage ./system-rebuild.nix {};
7} 8}
diff --git a/nix/rebuild-system.nix b/nix/rebuild-system.nix
new file mode 100644
index 0000000..b787392
--- /dev/null
+++ b/nix/rebuild-system.nix
@@ -0,0 +1,28 @@
1{ stdenv
2, fetchgit
3, makeWrapper
4, sudo
5, git
6}:
7
8stdenv.mkDerivation rec {
9 inherit sudo git;
10 name = "rebuild-system-${version}";
11 version = "0.1";
12 src = fetchgit {
13 inherit name;
14 url = git://git.yggdrasil.li/utils;
15 rev = "";
16 sha256 = "";
17 };
18 buildInputs = [ makeWrapper ];
19 buildPhase = "true";
20 installPhase = ''
21 mkdir -p $out/bin
22 cp $src/rebuild-system $out/bin/
23 chmod +x $out/bin/rebuild-system
24 wrapProgram $out/bin/rebuild-system \
25 --prefix PATH : ${sudo}/bin \
26 --prefix PATH : ${git}/bin
27 '';
28}
diff --git a/rebuild-system b/rebuild-system
new file mode 100644
index 0000000..8f116e3
--- /dev/null
+++ b/rebuild-system
@@ -0,0 +1,11 @@
1#!/usr/bin/env bash
2
3if [[ "$USER" != "root" ]]; then
4 exec sudo -- $0 $@
5fi
6
7path=/etc/nixos
8
9git -C $path pull && \
10 git -C $path submodule update && \
11 nixos-rebuild $@