docs: refactor and complete build-plugin.md #116
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CMake CI (Test customfetch) | |
| on: | |
| push: | |
| branches: [ "main" ] | |
| pull_request: | |
| branches: [ "main" ] | |
| jobs: | |
| build-ubuntu_22-04: | |
| runs-on: ubuntu-22.04 | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Packages | |
| run: | | |
| sudo apt-get purge firefox # Slows down the installation alot, fuck snap | |
| sudo apt-get update && sudo apt upgrade -y | |
| sudo apt-get install neofetch tree build-essential cmake g++-11 libwayland-dev gettext libdconf-dev libglib2.0-dev libarchive-tools -y | |
| - name: Clean | |
| run: make distclean | |
| - name: Compile and install | |
| run: | | |
| export CXX=x86_64-linux-gnu-g++-11 | |
| mkdir build && cd build | |
| cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/usr | |
| make | |
| sudo make install | |
| - name: Test neofetch | |
| run: neofetch | |
| - name: Check system values | |
| run: | | |
| ls -l /sys/devices/virtual/dmi/id/ /sys/class/dmi/id/ | |
| grep -Eri "virtual" /sys/class/dmi/id/ || true | |
| cat /sys/devices/virtual/dmi/id/board_name /sys/devices/virtual/dmi/id/board_vendor /sys/devices/virtual/dmi/id/board_version | |
| tree /sys/devices/system/cpu/cpu0/ | |
| printf "/etc/os-release\n" && cat /etc/os-release | |
| printf "getting 0x5353 hexcode\n" && grep -nri "5353" /sys/class/ || true | |
| - name: Test customfetch | |
| run: customfetch --wrap-lines | |
| - name: Upload to github artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| if-no-files-found: error | |
| name: customfetch | |
| path: ./build/customfetch | |
| build-ubuntu-22_04-GUI: | |
| runs-on: ubuntu-22.04 | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Packages | |
| run: | | |
| sudo apt-get purge firefox # Slows down the installation alot, fuck snap | |
| sudo apt-get update && sudo apt upgrade -y | |
| sudo apt-get install neofetch tree build-essential cmake g++-11 libwayland-dev gettext libgtk-3-dev pkg-config libdconf-dev libglib2.0-dev libgtkmm-3.0-dev -y | |
| - name: Clean | |
| run: make distclean | |
| - name: Compile and install | |
| run: | | |
| export CXX=x86_64-linux-gnu-g++-11 | |
| mkdir build && cd build | |
| cmake .. -DCMAKE_BUILD_TYPE=Debug -DGUI_APP=1 -DCMAKE_INSTALL_PREFIX=/usr | |
| make | |
| sudo make install | |
| - name: Test neofetch | |
| run: neofetch | |
| - name: Test customfetch | |
| run: customfetch-gui --version | |
| - name: Upload to github artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| if-no-files-found: error | |
| name: customfetch-gui | |
| path: ./build/customfetch-gui | |
| build_Arch: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| container: | |
| image: archlinux | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install the packages | |
| run: pacman -Syyu git sudo binutils cmake gdb base-devel fakeroot pkgconf tree fastfetch --noconfirm --needed | |
| - name: get /etc/sudoers | |
| run: | | |
| sed -i "s#root ALL=(ALL:ALL) ALL#root ALL=(ALL:ALL) NOPASSWD: ALL\nnobody ALL=(ALL:ALL) NOPASSWD: ALL#g" /etc/sudoers | |
| cat /etc/sudoers | |
| - name: get /etc/makepkg.conf | |
| run: | | |
| sed -i "s#purge debug lto#purge !debug lto#" /etc/makepkg.conf | |
| cat /etc/makepkg.conf | |
| - name: Clean | |
| run: make distclean | |
| - name: Compile and install | |
| run: | | |
| mkdir build && cd build | |
| cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/usr | |
| make | |
| make install | |
| - name: Test fastfetch | |
| run: fastfetch | |
| - name: Check system values | |
| run: | | |
| ls -l /sys/devices/virtual/dmi/id/ /sys/class/dmi/id/ | |
| grep -Eri "virtual" /sys/class/dmi/id/ || true | |
| cat /sys/devices/virtual/dmi/id/board_name /sys/devices/virtual/dmi/id/board_vendor /sys/devices/virtual/dmi/id/board_version | |
| tree /sys/devices/system/cpu/cpu0/ | |
| printf "/etc/os-release\n" && cat /etc/os-release | |
| - name: Test customfetch | |
| run: customfetch --wrap-lines | |
| build-macos: | |
| runs-on: macos-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install the packages | |
| run: HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 brew install --overwrite fastfetch neofetch pkg-config tree llvm@19 | |
| - name: uname -a && clang++ --version | |
| run: uname -a && echo "\n" && $(brew --prefix llvm@19)/bin/clang++ --version | |
| - name: Clean | |
| run: make distclean | |
| - name: Compile and install | |
| run: | | |
| export CXX=$(brew --prefix llvm@19)/bin/clang++ | |
| mkdir build && cd build | |
| cmake .. -DCMAKE_BUILD_TYPE=Debug | |
| make | |
| - name: Test neofetch | |
| run: neofetch | |
| - name: Test fastfetch | |
| run: fastfetch | |
| - name: Test customfetch | |
| run: ./build/customfetch -D assets | |
| - name: Upload to github artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| if-no-files-found: error | |
| name: customfetch-macos | |
| path: ./build/customfetch | |
| build-macos-GUI: | |
| runs-on: macos-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install the packages | |
| run: HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 brew install --overwrite fastfetch neofetch tree pkg-config gtkmm3 llvm@19 | |
| - name: uname -a && clang++ --version | |
| run: uname -a && echo "\n" && $(brew --prefix llvm@19)/bin/clang++ --version | |
| - name: Clean | |
| run: make distclean | |
| - name: Compile and install | |
| run: | | |
| export CXX=$(brew --prefix llvm@19)/bin/clang++ | |
| export PKG_CONFIG_PATH="$(brew --prefix)/lib/pkgconfig:$(brew --prefix)/opt/gtkmm3/lib/pkgconfig:$(brew --prefix)/opt/gtk+3/lib/pkgconfig" | |
| mkdir build && cd build | |
| cmake .. -DCMAKE_BUILD_TYPE=Debug -DGUI_APP=1 -DCMAKE_INSTALL_PREFIX=/usr | |
| make | |
| - name: Test neofetch | |
| run: neofetch | |
| - name: Test fastfetch | |
| run: fastfetch | |
| - name: Test customfetch | |
| run: ./build/customfetch-gui --version | |
| - name: Upload to github artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| if-no-files-found: error | |
| name: customfetch-macos-gui | |
| path: ./build/customfetch-gui |