Compare commits
4 Commits
feature/us
...
feature/ad
| Author | SHA1 | Date | |
|---|---|---|---|
| daf23b9bb7 | |||
| b87177d7a0 | |||
| 4fb2466a3a | |||
| 6e1975107a |
@@ -15,17 +15,17 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
steps:
|
steps:
|
||||||
|
- name: Checkout repo
|
||||||
|
uses: actions/checkout@v5
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
- name: Restore git cache
|
- name: Restore git cache
|
||||||
uses: actions/cache@v4
|
uses: actions/cache@v4
|
||||||
with:
|
with:
|
||||||
path: .git
|
path: .git
|
||||||
key: gitea-repo-${{ gitea.repository }}-${{ gitea.ref }}
|
key: gitea-repo-${{ gitea.repository }}-${{ gitea.ref }}
|
||||||
|
|
||||||
- name: Checkout repo
|
|
||||||
uses: actions/checkout@v6
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
|
|
||||||
- name: Detect Changes
|
- name: Detect Changes
|
||||||
uses: dorny/paths-filter@v3
|
uses: dorny/paths-filter@v3
|
||||||
id: image-changes
|
id: image-changes
|
||||||
@@ -91,25 +91,20 @@ jobs:
|
|||||||
container:
|
container:
|
||||||
image: ${{ vars.REGISTRY_URL }}/${{ gitea.repository }}:${{ needs.build-oci-image.outputs.image_tag }}
|
image: ${{ vars.REGISTRY_URL }}/${{ gitea.repository }}:${{ needs.build-oci-image.outputs.image_tag }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Restore git cache
|
||||||
uses: actions/checkout@v6
|
uses: actions/cache@v4
|
||||||
|
|
||||||
# TODO: This is currently unused by other jobs. I couldn't make meson not regenerate things regardless of
|
|
||||||
# the build dir already existing.
|
|
||||||
- name: Build Cache Setup
|
|
||||||
uses: actions/cache@v5
|
|
||||||
with:
|
with:
|
||||||
path: |
|
path: build
|
||||||
subprojects
|
key: gitea-repo-${{ gitea.repository }}-${{ gitea.ref }}
|
||||||
build
|
|
||||||
key: build-${{ gitea.repository }}-${{ gitea.sha }}
|
|
||||||
|
|
||||||
- name: Build
|
- name: Checkout repo
|
||||||
|
uses: actions/checkout@v5
|
||||||
|
|
||||||
|
- name: build and check
|
||||||
run: |
|
run: |
|
||||||
meson setup -Dfuzz=enabled -Dtests=enabled -Dbuildtype=debugoptimized -Ddocs=enabled build
|
meson setup -Dfuzz=enabled -Dtests=enabled -Dbuildtype=debugoptimized -Ddocs=enabled build
|
||||||
meson compile -C build
|
meson compile -C build
|
||||||
|
|
||||||
|
|
||||||
# FIXME: Currently this rebuilds everything. Instead we should bring over the build dir from the build job. This will come in handy
|
# FIXME: Currently this rebuilds everything. Instead we should bring over the build dir from the build job. This will come in handy
|
||||||
# when we have multiple build targets and configs. What we have currently is fine until we get lots of builds going
|
# when we have multiple build targets and configs. What we have currently is fine until we get lots of builds going
|
||||||
test:
|
test:
|
||||||
@@ -117,12 +112,17 @@ jobs:
|
|||||||
env:
|
env:
|
||||||
CC: "clang"
|
CC: "clang"
|
||||||
CXX: "clang++"
|
CXX: "clang++"
|
||||||
needs: [build-oci-image]
|
needs: [build-oci-image, build]
|
||||||
container:
|
container:
|
||||||
image: ${{ vars.REGISTRY_URL }}/${{ gitea.repository }}:${{ needs.build-oci-image.outputs.image_tag }}
|
image: ${{ vars.REGISTRY_URL }}/${{ gitea.repository }}:${{ needs.build-oci-image.outputs.image_tag }}
|
||||||
steps:
|
steps:
|
||||||
|
- name: Restore git cache
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: build
|
||||||
|
key: gitea-repo-${{ gitea.repository }}-${{ gitea.ref }}
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v5
|
||||||
|
|
||||||
- name: test
|
- name: test
|
||||||
run: |
|
run: |
|
||||||
@@ -136,12 +136,17 @@ jobs:
|
|||||||
CC: "clang"
|
CC: "clang"
|
||||||
CXX: "clang++"
|
CXX: "clang++"
|
||||||
FUZZER_TIMEOUT_S: 300
|
FUZZER_TIMEOUT_S: 300
|
||||||
needs: [build-oci-image]
|
needs: [build-oci-image, build]
|
||||||
container:
|
container:
|
||||||
image: ${{ vars.REGISTRY_URL }}/${{ gitea.repository }}:${{ needs.build-oci-image.outputs.image_tag }}
|
image: ${{ vars.REGISTRY_URL }}/${{ gitea.repository }}:${{ needs.build-oci-image.outputs.image_tag }}
|
||||||
steps:
|
steps:
|
||||||
|
- name: Restore git cache
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: build
|
||||||
|
key: gitea-repo-${{ gitea.repository }}-${{ gitea.ref }}
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v5
|
||||||
|
|
||||||
# FIXME: Get rid of this step when portage has fixes merged?
|
# FIXME: Get rid of this step when portage has fixes merged?
|
||||||
# needed because portage has fixes upstream we need that arent stable yet
|
# needed because portage has fixes upstream we need that arent stable yet
|
||||||
@@ -169,7 +174,7 @@ jobs:
|
|||||||
image: ${{ vars.REGISTRY_URL }}/${{ gitea.repository }}:${{ needs.build-oci-image.outputs.image_tag }}
|
image: ${{ vars.REGISTRY_URL }}/${{ gitea.repository }}:${{ needs.build-oci-image.outputs.image_tag }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v5
|
||||||
|
|
||||||
- name: Check Formatting
|
- name: Check Formatting
|
||||||
run: |
|
run: |
|
||||||
@@ -184,7 +189,7 @@ jobs:
|
|||||||
image: ${{ vars.REGISTRY_URL }}/${{ gitea.repository }}:${{ needs.build-oci-image.outputs.image_tag }}
|
image: ${{ vars.REGISTRY_URL }}/${{ gitea.repository }}:${{ needs.build-oci-image.outputs.image_tag }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v5
|
||||||
|
|
||||||
- name: Build Documentation
|
- name: Build Documentation
|
||||||
run: |
|
run: |
|
||||||
@@ -198,7 +203,7 @@ jobs:
|
|||||||
image: ${{ vars.REGISTRY_URL }}/${{ gitea.repository }}:${{ needs.build-oci-image.outputs.image_tag }}
|
image: ${{ vars.REGISTRY_URL }}/${{ gitea.repository }}:${{ needs.build-oci-image.outputs.image_tag }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v5
|
||||||
|
|
||||||
- name: grep for patterns
|
- name: grep for patterns
|
||||||
# negate git grep ret code because 1 means no findings
|
# negate git grep ret code because 1 means no findings
|
||||||
|
|||||||
50
README.org
Normal file
50
README.org
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
#+title: Gentoo Utils
|
||||||
|
|
||||||
|
* Getting Started
|
||||||
|
|
||||||
|
Gentoo Utils must be compiled from source currently. See the compiling from source section for more information.
|
||||||
|
|
||||||
|
* Development :development:contributing:
|
||||||
|
|
||||||
|
There are two main avenues for development:
|
||||||
|
- compiling normally using packages via portage
|
||||||
|
- using the podman container
|
||||||
|
|
||||||
|
** Development without using a podman container
|
||||||
|
*** Install Build Prerequisites
|
||||||
|
- dev-lang/rust-bin-9999
|
||||||
|
- llvm-core/clang
|
||||||
|
- llvm-core/lld
|
||||||
|
- sys-process/parallel (Needed for =check.sh=)
|
||||||
|
- dev-build/meson
|
||||||
|
|
||||||
|
Install build deps:
|
||||||
|
#+begin_src bash :noeval
|
||||||
|
emerge -a dev-lang/rust-bin-9999 \
|
||||||
|
llvm-core/clang \
|
||||||
|
llvm-core/lld \
|
||||||
|
sys-process/parallel
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
Compiling this project currently requires using a patched meson. Install patched meson:
|
||||||
|
#+begin_src bash :noeval
|
||||||
|
EGIT_OVERRIDE_REPO_MESONBUILD_MESON=https://jturnerusa.dev/cgit/meson emerge -a =dev-build/meson-9999::gentoo
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** Development using a podman container
|
||||||
|
The podman image comes with all the tools required to compile gentoo-utils.
|
||||||
|
|
||||||
|
Clone the repo
|
||||||
|
#+begin_src bash :noeval
|
||||||
|
git clone https://git.epenguin.net/gentoo-utils/gentoo-utils.git
|
||||||
|
cd gentoo-utils
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
Run the check script:
|
||||||
|
#+begin_src bash :noeval
|
||||||
|
podman run --rm --userns=keep-id -v $PWD:/workspace git.epenguin.net/gentoo-utils/gentoo-utils:latest ./check.sh
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
|
||||||
|
* Resources
|
||||||
|
pms-utils spec link
|
||||||
Reference in New Issue
Block a user