nix: version home-manager along the nixos channels
This commit is contained in:
parent
0913cdc4d5
commit
ec01ff74b6
5 changed files with 29 additions and 14 deletions
|
@ -3,22 +3,26 @@
|
||||||
{
|
{
|
||||||
channelSources =
|
channelSources =
|
||||||
let
|
let
|
||||||
# channelVersions = (import ((builtins.getEnv "PWD")+"/${dir}/versions.nix"));
|
|
||||||
channelVersions = (import versionsPath);
|
channelVersions = (import versionsPath);
|
||||||
mkChannelSource = channel: builtins.fetchGit {
|
mkChannelSource = channel:
|
||||||
|
let
|
||||||
|
channelVersion = builtins.getAttr channel channelVersions;
|
||||||
|
in builtins.fetchGit {
|
||||||
# Descriptive name to make the store path easier to identify
|
# Descriptive name to make the store path easier to identify
|
||||||
url = "https://github.com/NixOS/nixpkgs-channels/";
|
name = "nixpkgs-channels-${channel}";
|
||||||
# Commit hash for nixos-unstable as of 2018-09-12
|
url = if builtins.hasAttr "url" channelVersion
|
||||||
# `git ls-remote https://github.com/nixos/nixpkgs-channels nixos-unstable`
|
then channelVersion."url"
|
||||||
|
else "https://github.com/NixOS/nixpkgs-channels/"
|
||||||
|
;
|
||||||
ref = (builtins.getAttr channel channelVersions)."ref";
|
ref = (builtins.getAttr channel channelVersions)."ref";
|
||||||
rev = (builtins.getAttr channel channelVersions)."rev";
|
rev = (builtins.getAttr channel channelVersions)."rev";
|
||||||
name = "nixpkgs-channels-${channel}";
|
|
||||||
};
|
};
|
||||||
nix_path = builtins.foldl' (sum: elem: sum +":" + builtins.concatStringsSep "=" elem) "" [
|
nix_path = builtins.foldl' (sum: elem: sum +":" + builtins.concatStringsSep "=" elem) "" [
|
||||||
[ "nixpkgs" (mkChannelSource "channelsNixosStable") ]
|
[ "nixpkgs" (mkChannelSource "channelsNixosStable") ]
|
||||||
[ "nixos" (mkChannelSource "channelsNixosStable" + "/nixos") ]
|
[ "nixos" (mkChannelSource "channelsNixosStable" + "/nixos") ]
|
||||||
[ "channels-nixos-stable" (mkChannelSource "channelsNixosStable") ]
|
[ "channels-nixos-stable" (mkChannelSource "channelsNixosStable") ]
|
||||||
[ "channels-nixos-unstable" (mkChannelSource "channelsNixosUnstable") ]
|
[ "channels-nixos-unstable" (mkChannelSource "channelsNixosUnstable") ]
|
||||||
|
[ "home-manager-module" (mkChannelSource "homeManagerModule") ]
|
||||||
];
|
];
|
||||||
in (import (mkChannelSource "channelsNixosStable") {}).writeText "channels.rc" ''
|
in (import (mkChannelSource "channelsNixosStable") {}).writeText "channels.rc" ''
|
||||||
export NIX_PATH=${nix_path}
|
export NIX_PATH=${nix_path}
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
{ pkgs,
|
{ pkgs
|
||||||
...
|
, ...
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
in {
|
in {
|
||||||
programs.home-manager.enable = true;
|
# TODO: re-enable this with the appropriate version
|
||||||
programs.home-manager.path = https://github.com/rycee/home-manager/archive/445c0b1482c38172a9f8294ee16a7ca7462388e5.tar.gz;
|
# programs.home-manager.enable = true;
|
||||||
|
# programs.home-manager.path = https://github.com/rycee/home-manager/archive/445c0b1482c38172a9f8294ee16a7ca7462388e5.tar.gz;
|
||||||
|
|
||||||
nixpkgs.overlays = [
|
nixpkgs.overlays = [
|
||||||
(import ../../overlay.nix)
|
(import ../../overlay.nix)
|
||||||
|
|
|
@ -7,4 +7,9 @@
|
||||||
ref = "nixos-unstable";
|
ref = "nixos-unstable";
|
||||||
rev = "<% git ls-remote https://github.com/nixos/nixpkgs-channels nixos-unstable | awk '{ print $1 }' | tr -d '\n' -%>";
|
rev = "<% git ls-remote https://github.com/nixos/nixpkgs-channels nixos-unstable | awk '{ print $1 }' | tr -d '\n' -%>";
|
||||||
};
|
};
|
||||||
|
homeManagerModule = {
|
||||||
|
url = "https://github.com/rycee/home-manager";
|
||||||
|
ref = "master";
|
||||||
|
rev = "<% git ls-remote https://github.com/rycee/home-manager.git master | awk '{ print $1 }' | tr -d '\n' -%>";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
"${builtins.fetchGit { url = "https://github.com/rycee/home-manager.git"; ref = "445c0b1482c38172a9f8294ee16a7ca7462388e5"; }}/nixos"
|
"${<home-manager-module>}/nixos"
|
||||||
];
|
];
|
||||||
home-manager.users.root = import ../../../home-manager/configuration/text-minimal.nix;
|
home-manager.users.root = import ../../../home-manager/configuration/text-minimal.nix;
|
||||||
|
|
||||||
|
|
|
@ -7,4 +7,9 @@
|
||||||
ref = "nixos-unstable";
|
ref = "nixos-unstable";
|
||||||
rev = "44b02b52ea6a49674f124f50009299f192ed78bb";
|
rev = "44b02b52ea6a49674f124f50009299f192ed78bb";
|
||||||
};
|
};
|
||||||
|
homeManagerModule = {
|
||||||
|
url = "https://github.com/rycee/home-manager/";
|
||||||
|
ref = "release-18.09";
|
||||||
|
rev = "dd94a849df69fe62fe2cb23a74c2b9330f1189ed";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue