set dotenv-required set quiet := true UPLOAD_URL := ``` curl -s -X POST \ --url https://api.linode.com/v4/images/upload \ --header 'accept: application/json' \ --header "authorization: Bearer $API_TOKEN" \ --header 'content-type: application/json' \ --data ' { "description": "nixos", "label": "nixos", "region": "us-iad" } ' | jq .upload_to ``` [private] _default: just --list [private] _clean: rm -f result [private] _image_exists: [ -f result/linode-image.img.gz ] \ || echo "Linode image not found." [doc('Builds Linode compatible NixOS disk image.')] build-image: _clean nix build ".#nixosConfigurations.linode-image.config.system.build.raw" [doc('Uploads NixOS compatible disk image to Linode.')] upload-image: _image_exists curl -X PUT \ --url {{UPLOAD_URL}} \ -T result/linode-image.img.gz