From 8ff0f13109f551c9d73f9e482e3037d6bb912f99 Mon Sep 17 00:00:00 2001 From: Green Sky Date: Sun, 3 Dec 2023 17:32:52 +0100 Subject: [PATCH] static nix and cd --- .github/workflows/cd.yml | 49 ++++++++++++++++++++++++++++++++++++++++ flake.nix | 8 ++++--- 2 files changed, 54 insertions(+), 3 deletions(-) diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index 71e2351..a0da978 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -10,6 +10,55 @@ env: BUILD_TYPE: Release jobs: + linux-ubuntu: + timeout-minutes: 10 + + runs-on: ubuntu-20.04 + + steps: + - uses: actions/checkout@v3 + with: + submodules: recursive + + - name: Install Dependencies + run: sudo apt update && sudo apt -y install libsodium-dev + + - name: Configure CMake + run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} + + - name: Build + run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} -j 4 + + - uses: actions/upload-artifact@v3 + with: + name: ${{ github.event.repository.name }}-ubuntu20.04-x86_64 + # TODO: do propper packing + path: | + ${{github.workspace}}/build/bin/ + + linux-nix-static: + timeout-minutes: 10 + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + with: + submodules: recursive + + - name: Install Dependencies + run: sudo apt update && sudo apt -y install nix + + - name: Nix build + run: nix build '.#static' + + - uses: actions/upload-artifact@v3 + with: + name: ${{ github.event.repository.name }}-linux-static-muslc-x86_64 + # TODO: do propper packing + path: | + ${{github.workspace}}/result/bin/ + windows: timeout-minutes: 15 diff --git a/flake.nix b/flake.nix index a4e3c9c..325960d 100644 --- a/flake.nix +++ b/flake.nix @@ -89,15 +89,17 @@ in { packages.default = pkgs.stdenv.mkDerivation { inherit pname version src nativeBuildInputs cmakeFlags installPhase; - buildInputs = with pkgs; [ - #(libsodium.override { stdenv = pkgs.pkgsStatic.stdenv; }) - #pkgsStatic.libsodium + + # static libsodium, because I can + buildInputs = with pkgs.pkgsStatic; [ libsodium ]; }; + # all static, kinda useless, since dlopen() wont work to load plugins packages.static = pkgs.pkgsStatic.stdenv.mkDerivation { inherit pname version src nativeBuildInputs cmakeFlags installPhase; + buildInputs = with pkgs.pkgsStatic; [ libsodium ];