diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c26a82a..0915d63 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -3,7 +3,7 @@ on: pull_request: push: jobs: - tests: + build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2.3.4 diff --git a/flake.lock b/flake.lock index e9da546..0ea15f7 100644 --- a/flake.lock +++ b/flake.lock @@ -33,6 +33,21 @@ "type": "github" } }, + "flake-utils": { + "locked": { + "lastModified": 1614513358, + "narHash": "sha256-LakhOx3S1dRjnh0b5Dg3mbZyH0ToC9I8Y2wKSkBaTzU=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "5466c5bbece17adaab2d82fae80b46e807611bf3", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "gitignore": { "flake": false, "locked": { @@ -65,15 +80,50 @@ "type": "github" } }, + "nixpkgs_2": { + "locked": { + "lastModified": 1617325113, + "narHash": "sha256-GksR0nvGxfZ79T91UUtWjjccxazv6Yh/MvEJ82v1Xmw=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "54c1e44240d8a527a8f4892608c4bce5440c3ecb", + "type": "github" + }, + "original": { + "owner": "NixOS", + "repo": "nixpkgs", + "type": "github" + } + }, "root": { "inputs": { "crate2nix": "crate2nix", "flake-compat": "flake-compat", "gitignore": "gitignore", "nixpkgs": "nixpkgs", + "rust-overlay": "rust-overlay", "utils": "utils" } }, + "rust-overlay": { + "inputs": { + "flake-utils": "flake-utils", + "nixpkgs": "nixpkgs_2" + }, + "locked": { + "lastModified": 1617848844, + "narHash": "sha256-nhPuATSHRrzfZNjtl8zmMhZklYFCHiQd7+uf+jQbd+o=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "70330a767d25daa6063e89e38d68b94b2d971831", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, "utils": { "locked": { "lastModified": 1617631617, diff --git a/flake.nix b/flake.nix index f3b38db..98d577f 100644 --- a/flake.nix +++ b/flake.nix @@ -8,6 +8,7 @@ url = "github:hercules-ci/gitignore"; flake=false; }; + rust-overlay.url = "github:oxalica/rust-overlay"; crate2nix = { url = "github:balsoft/crate2nix/tools-nix-version-comparison"; flake = false; @@ -18,11 +19,23 @@ }; }; - outputs = { self, nixpkgs, utils, gitignore, crate2nix, ... }: + outputs = { self, nixpkgs, utils, gitignore, rust-overlay, crate2nix, ... }: utils.lib.eachDefaultSystem (system: let - pkgs = import nixpkgs { inherit system; }; + pkgs = import nixpkgs { + inherit system; + overlays = [ + rust-overlay.overlay + (self: super: { + # Because rust-overlay bundles multiple rust packages into one + # derivation, specify that mega-bundle here, so that naersk + # will use them automatically. + rustc = self.rust-bin.stable.latest.default; + cargo = self.rust-bin.stable.latest.default; + }) + ]; + }; inherit (import "${crate2nix}/tools.nix" { inherit pkgs; }) generatedCargoNix; inherit (import gitignore { inherit (pkgs) lib; }) gitignoreSource;