From c8bd0f472d8e7d0e508c5dc03787b29b90ddcd80 Mon Sep 17 00:00:00 2001 From: Jordan Doyle Date: Sat, 9 Sep 2023 14:57:47 +0100 Subject: [PATCH] Use nixbuild --- .github/workflows/build.yml | 17 +++++------------ Setup.hs | 6 ++++++ certificate-updater.cabal | 8 +++++++- default.nix | 2 -- flake.lock | 2 +- flake.nix | 14 +++++++++++--- shell.nix | 4 ---- 7 files changed, 30 insertions(+), 23 deletions(-) create mode 100644 Setup.hs delete mode 100644 default.nix delete mode 100644 shell.nix diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6182ace..6e25b8f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -4,15 +4,8 @@ on: push: jobs: build: - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-latest, macos-latest] - steps: - - uses: actions/checkout@v3 - - uses: cachix/install-nix-action@v22 - - uses: cachix/cachix-action@v12 - with: - name: w4 - authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}' - - run: cachix watch-exec w4 -- nix build .# + uses: nixbuild/nixbuild-action/.github/workflows/ci-workflow.yml@v17 + secrets: + nixbuild_ssh_key: ${{ secrets.NIXBUILD_SSH_KEY }} + with: + filter_builds: .top_attr diff --git a/Setup.hs b/Setup.hs new file mode 100644 index 0000000..6fa548c --- /dev/null +++ b/Setup.hs @@ -0,0 +1,6 @@ +module Main (main) where + +import Distribution.Simple + +main :: IO () +main = defaultMain diff --git a/certificate-updater.cabal b/certificate-updater.cabal index 1bbc9ba..c7244eb 100644 --- a/certificate-updater.cabal +++ b/certificate-updater.cabal @@ -9,10 +9,13 @@ license-file: LICENSE common warnings ghc-options: -Wall +flag threaded + default: False + executable certificate-updater import: warnings main-is: Main.hs - build-depends: base ^>=4.17.0.0, + build-depends: base, optparse-generic ^>=1.4.0, rio ^>=0.1.22.0, aeson ^>=2.1.2.1, @@ -24,3 +27,6 @@ executable certificate-updater unix ^>=2.7.2.2 hs-source-dirs: src default-language: Haskell2010 + + if flag(threaded) + ghc-options: -threaded diff --git a/default.nix b/default.nix deleted file mode 100644 index 7434aae..0000000 --- a/default.nix +++ /dev/null @@ -1,2 +0,0 @@ -{ pkgs ? import { } }: -pkgs.haskellPackages.callCabal2nix "certificate-updater" ./. { } diff --git a/flake.lock b/flake.lock index 6f93f9c..ba4331a 100644 --- a/flake.lock +++ b/flake.lock @@ -58,4 +58,4 @@ }, "root": "root", "version": 7 -} +} \ No newline at end of file diff --git a/flake.nix b/flake.nix index 6e3149e..ed08905 100644 --- a/flake.nix +++ b/flake.nix @@ -5,13 +5,21 @@ }; outputs = { self, nixpkgs, utils }: - utils.lib.eachDefaultSystem (system: + utils.lib.eachSystem [ "x86_64-linux" "aarch64-linux" ] (system: let pkgs = import nixpkgs { inherit system; }; in { - packages.default = (import ./.) { - inherit pkgs; + packages.default = pkgs.haskellPackages.mkDerivation { + pname = "certificate-updater"; + version = "0.1.0.0"; + src = ./.; + isLibrary = false; + isExecutable = true; + executableHaskellDepends = with pkgs.haskellPackages; [ + base optparse-generic rio aeson time http-conduit http-types bytestring unordered-containers unix + ]; + license = "WTFPL"; }; nixosModules.default = { config, lib, pkgs, ... }: diff --git a/shell.nix b/shell.nix deleted file mode 100644 index 4d0eb8b..0000000 --- a/shell.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ pkgs ? import { }, ... }: -pkgs.mkShell { - inputsFrom = [ (pkgs.haskellPackages.callCabal2nix "certificate-updater" ./. { }).env ]; -} -- libgit2 1.7.2