linux.yml (2242B)
1 name: Linux Build 2 3 on: 4 push: 5 branches: [ master ] 6 7 jobs: 8 build: 9 runs-on: ubuntu-24.04 10 steps: 11 - name: Install tools 12 run: | 13 sudo apt-get -qq update 14 sudo apt-get -qq install git 15 16 - name: Download framework 17 run: | 18 git clone https://git.gnunet.org/gnunet.git 19 20 - name: Install dependencies (framework) 21 run: | 22 sudo apt-get -qq update 23 sudo apt-get -qq install meson ninja-build gcc gettext recutils uncrustify yapf3 24 sudo apt-get -qq install python3-sphinx python3-sphinx-multiversion python3-sphinx-rtd-theme 25 sudo apt-get -qq install libgcrypt20-dev libjansson-dev libsodium-dev libcurl4-gnutls-dev libidn2-dev libunistring-dev libsqlite3-dev libmicrohttpd-dev libltdl-dev 26 27 - name: Build framework 28 run: | 29 cd gnunet 30 ./bootstrap 31 meson setup --prefix=/usr --libdir=lib build 32 meson compile -C build 33 sudo meson install -C build 34 cd .. 35 36 - name: Checkout library 37 run: | 38 git clone https://git.gnunet.org/libgnunetchat.git 39 40 - name: Install dependencies (application) 41 run: | 42 sudo apt-get -qq update 43 sudo apt-get -qq install ninja-build meson gcc 44 45 - name: Build library 46 run: | 47 cd libgnunetchat 48 meson setup --prefix=/usr --libdir=lib build 49 meson compile -C build 50 sudo meson install -C build 51 cd .. 52 53 - name: Checkout the current branch 54 uses: actions/checkout@v3 55 56 - name: Load submodules 57 run: | 58 git submodule init 59 git submodule update 60 61 - name: Install dependencies (application) 62 run: | 63 sudo apt-get -qq update 64 sudo apt-get -qq install ninja-build meson gcc desktop-file-utils 65 sudo apt-get -qq install libqrencode-dev libzbar-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libpipewire-0.3-dev libportal-dev libportal-gtk3-dev libhandy-1-dev libnotify-dev 66 67 - name: Build application 68 run: | 69 meson setup --prefix=/usr --libdir=lib build 70 meson compile -C build 71 sudo meson install -C build