1
Fork 0
jakstys.lt/flake.nix

52 lines
1.5 KiB
Nix
Raw Normal View History

2023-03-25 12:43:23 +02:00
{
2023-04-03 21:41:49 +03:00
nixConfig = {
trusted-substituters = "https://cache.nixos.org/";
trusted-public-keys = "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=";
extra-experimental-features = "nix-command flakes";
};
2023-03-25 12:43:23 +02:00
inputs = {
2024-10-10 04:37:58 +03:00
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; # TODO 24.11
2023-03-25 12:43:23 +02:00
flake-utils.url = "github:numtide/flake-utils";
};
2023-04-03 21:41:49 +03:00
outputs = {
2023-04-03 22:03:11 +03:00
self,
2023-04-03 21:41:49 +03:00
nixpkgs,
flake-utils,
...
}:
flake-utils.lib.eachDefaultSystem (system: let
pkgs = import nixpkgs {inherit system;};
devDeps = with pkgs; [hugo brotli zopfli parallel dart-sass];
2024-10-10 04:51:36 +03:00
in rec {
2023-04-03 21:41:49 +03:00
devShells.default = pkgs.mkShell {
2023-07-25 09:38:54 +03:00
LOCALE_ARCHIVE = "${pkgs.glibcLocales}/lib/locale/locale-archive";
2023-04-03 21:41:49 +03:00
packages = devDeps;
};
2024-10-10 04:51:36 +03:00
packages.default = pkgs.compressDrvWeb (pkgs.stdenv.mkDerivation {
2023-04-03 22:03:11 +03:00
pname = "jakstys.lt";
version = "1.0.0";
src = pkgs.lib.cleanSource self;
2024-10-10 04:54:13 +03:00
buildInputs = with pkgs; [hugo dart-sass];
2024-10-10 04:37:58 +03:00
buildPhase = "hugo --cleanDestinationDir --printPathWarnings --panicOnWarning";
installPhase = "mv public $out";
}) {};
2023-04-03 22:03:11 +03:00
2024-10-10 04:51:36 +03:00
apps.default = {
type = "app";
program = builtins.toString (pkgs.writeShellScript "upload" ''
${pkgs.rsync}/bin/rsync \
--info=progress2 \
--copy-links \
--archive \
--partial \
--delete \
${packages.default}/ \
jakstys.lt:/var/www/jakstys.lt/
'');
};
2023-04-03 21:41:49 +03:00
formatter = pkgs.alejandra;
});
2023-03-25 12:43:23 +02:00
}