mirror of
https://github.com/gburd/nix-config.git
synced 2024-11-14 16:36:24 +00:00
35 lines
1,007 B
Nix
35 lines
1,007 B
Nix
{ pkgs, ... }:
|
|
let
|
|
update-script = pkgs.writeShellApplication {
|
|
name = "fetch-nix-index-database";
|
|
runtimeInputs = with pkgs; [ wget coreutils ];
|
|
text = ''
|
|
filename="index-x86_64-linux"
|
|
mkdir -p ~/.cache/nix-index
|
|
cd ~/.cache/nix-index
|
|
wget -N "https://github.com/Mic92/nix-index-database/releases/latest/download/$filename"
|
|
ln -f "$filename" files
|
|
'';
|
|
};
|
|
in
|
|
{
|
|
programs.nix-index.enable = true;
|
|
|
|
systemd.user.services.nix-index-database-sync = {
|
|
Unit = { Description = "fetch mic92/nix-index-database"; };
|
|
Service = {
|
|
Type = "oneshot";
|
|
ExecStart = "${update-script}/bin/fetch-nix-index-database";
|
|
Restart = "on-failure";
|
|
RestartSec = "5m";
|
|
};
|
|
};
|
|
systemd.user.timers.nix-index-database-sync = {
|
|
Unit = { Description = "Automatic github:mic92/nix-index-database fetching"; };
|
|
Timer = {
|
|
OnBootSec = "10m";
|
|
OnUnitActiveSec = "24h";
|
|
};
|
|
Install = { WantedBy = [ "timers.target" ]; };
|
|
};
|
|
}
|