49 lines
1.3 KiB
Nix
49 lines
1.3 KiB
Nix
{
|
|
description = "my website";
|
|
|
|
inputs.nixpkgs.url = "github:nixos/nixpkgs";
|
|
inputs.flake-utils.url = "github:numtide/flake-utils";
|
|
|
|
outputs = { self, nixpkgs, flake-utils }:
|
|
(flake-utils.lib.eachDefaultSystem (system:
|
|
let pkgs = nixpkgs.legacyPackages.${system};
|
|
in {
|
|
|
|
# nix develop
|
|
devShell = pkgs.mkShell {
|
|
buildInputs = with pkgs; [ hugo lessc rake go-task feh ion inotify-tools ];
|
|
};
|
|
|
|
# nix run
|
|
apps.default = self.apps.${system}.server;
|
|
|
|
# nix run ".#server"
|
|
apps.server = {
|
|
type = "app";
|
|
program = toString (pkgs.writers.writeBash "server" ''
|
|
set -e
|
|
set -o pipefail
|
|
PATH=${
|
|
pkgs.lib.makeBinPath [ pkgs.lessc pkgs.go-task pkgs.ion pkgs.hugo ]
|
|
}
|
|
task server
|
|
'');
|
|
};
|
|
|
|
# nix run ".#publish"
|
|
apps.publish = {
|
|
type = "app";
|
|
program = toString (pkgs.writers.writeBash "publish" ''
|
|
set -e
|
|
set -o pipefail
|
|
PATH=${
|
|
pkgs.lib.makeBinPath [ pkgs.lessc pkgs.go-task pkgs.ion pkgs.hugo pkgs.rsync pkgs.openssh ]
|
|
}
|
|
task publish
|
|
''
|
|
);
|
|
};
|
|
|
|
}));
|
|
}
|