summaryrefslogtreecommitdiff
path: root/justfile
blob: 2f74c048578dd742fe704ad32ef5e36906a460b8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
alias b := build
alias c := check
alias dr := dry-run
alias p := pre-commit
alias sw := switch
alias t := test
alias u := update
alias ui := update-input

rebuildArgs := "--verbose"
rebuild := if os() == "macos" { "darwin-rebuild" } else { "nixos-rebuild" }
asRoot := if os() == "linux" { "true" } else { "false" }

default:
    @just --choose

[private]
rebuild subcmd root="false":
    {{ if root == "true" { "sudo " } else { "" } }}{{ rebuild }} {{ subcmd }} {{ rebuildArgs }} --flake .

boot:
    @just rebuild boot {{ asRoot }}

build:
    @just rebuild build

dry-run:
    @just rebuild dry-run

switch:
    @just rebuild switch {{ asRoot }}

test:
    @just rebuild test {{ asRoot }}

ci:
    nix run \
      --inputs-from . \
      --override-input nixpkgs nixpkgs \
      github:Mic92/nix-fast-build -- \
      --no-nom \
      --skip-cached \
      --option accept-flake-config true \
      --option allow-import-from-derivation false \
      --flake '.#hydraJobs'

check:
    nix flake check \
      --print-build-logs \
      --show-trace \
      --accept-flake-config

update:
    nix flake update

update-input input:
    nix flake lock \
      --update-input {{ input }} \
      --commit-lock-file \
      --commit-lockfile-summary "flake: update {{ input }}"

deploy system:
    nix run \
      --inputs-from . \
      'nixpkgs#deploy-rs' -- \
      -s '.#{{ system }}'

deploy-all:
    nix run \
      --inputs-from . \
      'nixpkgs#deploy-rs' -- -s

pre-commit:
    pre-commit run

clean:
    rm -rf \
      result* \
      repl-result-out* \
      config.tf.json \
      .terraform*