Compare commits

..

1 commit
main ... 1.19

Author SHA1 Message Date
crystal
be5e3223f1
fix status badge for 1.19 branch 2023-07-25 02:17:19 -06:00
37 changed files with 3043 additions and 792 deletions

View file

@ -8,10 +8,6 @@ CI_VERIFY_RETRY_COUNT=30 # How many times to retry before giving up if the pipel
case "$1" in case "$1" in
"submodule-build") "submodule-build")
cd "$2" cd "$2"
LDFLAGS="$LDFLAGS -X \"code.gitea.io/gitea/modules/setting.StaticRootPath=/usr/share/forgejo\""
LDFLAGS="$LDFLAGS -X \"code.gitea.io/gitea/modules/setting.AppWorkPath=/var/lib/forgejo\""
LDFLAGS="$LDFLAGS -X \"code.gitea.io/gitea/modules/setting.CustomConf=/etc/forgejo/app.ini\""
export LDFLAGS
make build make build
EXIT_STATUS=$? EXIT_STATUS=$?
mv gitea ../"$3" mv gitea ../"$3"
@ -23,40 +19,6 @@ case "$1" in
make "$@" make "$@"
exit $? exit $?
;; ;;
"actions-prep")
case "$2" in
"build-forgejo-deb")
APREP_APT_EXTRAS="debhelper devscripts sudo"
;;
"installtest")
APREP_APT_EXTRAS="sudo"
;;
"")
APREP_APT_EXTRAS=
;;
*)
echo "Invalid argument: $2"
exit 98
;;
esac
EXIT_TOTAL=0
apt update
EXIT_TOTAL=$(($EXIT_TOTAL+$?))
apt upgrade -y
EXIT_TOTAL=$(($EXIT_TOTAL+$?))
if [ "$APREP_APT_EXTRAS" ] ; then
apt install $APREP_APT_EXTRAS -y
EXIT_TOTAL=$(($EXIT_TOTAL+$?))
fi
ACTIONS_FORGEJOSHA="$(git rev-parse --short=10 HEAD)"
if [ "$GITHUB_REF_TYPE" = "tag" ] ; then
echo "::set-output name=artifactlabel::$GITHUB_REF_NAME-$ACTIONS_FORGEJOSHA"
else
echo "::set-output name=artifactlabel::$ACTIONS_FORGEJOSHA"
fi
echo "::set-output name=forgejosha::$ACTIONS_FORGEJOSHA"
exit $EXIT_TOTAL
;;
"ci-verify") "ci-verify")
RETRY_LOOPS=0 RETRY_LOOPS=0
while [ $RETRY_LOOPS -le $CI_VERIFY_RETRY_COUNT ] ; do while [ $RETRY_LOOPS -le $CI_VERIFY_RETRY_COUNT ] ; do
@ -81,56 +43,11 @@ case "$1" in
exit 255 exit 255
;; ;;
"download-binary") "download-binary")
if [ "$GITHUB_BASE_REF" ] ; then
echo "forgejo actions pull request mode"
echo "making sure you didn't break binary builds..."
PR_MODE=true
fi
if [ "$GITHUB_REF_TYPE" = "tag" ] ; then
echo "INFO: Forgejo Actions mode!"
CI_COMMIT_TAG="$GITHUB_REF_NAME"
elif [ "$GITHUB_REF_TYPE" = "branch" ] || [ $PR_MODE ] ; then
echo "WARNING: Not building a tag! Simulating it..."
echo "(forgejo actions mode)"
echo "(this will test the binary packaging without cutting a tag in the package)"
echo "Resolving tag..."
cd forgejo
CI_COMMIT_TAG_RESOLVE=$(git tag --points-at HEAD)
if [ ! $CI_COMMIT_TAG_RESOLVE ] ; then
echo "Failed to resolve exact tag! Getting as close as we can..."
git describe --tags HEAD
FORGEJO_CLOSEST_TAG=$(git describe --tags HEAD --abbrev=0)
echo "Looking for experimental tag..."
EXPERIMENTAL_REPO="forgejo-experimental/forgejo"
git remote add experimental $CI_VERIFY_API/$EXPERIMENTAL_REPO
git fetch experimental --tags
CI_COMMIT_TAG_RESOLVE=$(git tag --points-at HEAD)
if [ $CI_COMMIT_TAG_RESOLVE ] ; then
CI_VERIFY_REPO=$EXPERIMENTAL_REPO
FORGEJO_CLOSEST_TAG=$CI_COMMIT_TAG_RESOLVE
echo "Found it! Using experimental tag and downloading binary from $CI_VERIFY_REPO"
fi
CI_COMMIT_TAG_RESOLVE=$FORGEJO_CLOSEST_TAG
echo "Closest existing tag: $CI_COMMIT_TAG_RESOLVE"
if [ "$CI_COMMIT_TAG_RESOLVE" != "${CI_COMMIT_TAG_RESOLVE%"-dev"}" ] || [ ! "$CI_COMMIT_TAG_RESOLVE" ] ; then
if [ $PR_MODE ] ; then
echo "I can't figure out which release version of Forgejo to build your PR against."
echo "Whatever you're trying to do is not yet implemented."
exit 97
fi
echo "err! unable to resolve tag or building dev version- skipping binary dl"
CI_COMMIT_TAG_RESOLVE=
fi
fi
cd ..
echo "Proceeding with resolved tag: $CI_COMMIT_TAG_RESOLVE"
CI_COMMIT_TAG="$CI_COMMIT_TAG_RESOLVE"
fi
if [ $CI_COMMIT_TAG ] ; then if [ $CI_COMMIT_TAG ] ; then
CI_RELEASE_ASSETS=$(curl $CI_VERIFY_API/api/v1/repos/$CI_VERIFY_REPO/releases/tags/$CI_COMMIT_TAG | jq -c '.assets[]' | grep linux-amd64) CI_RELEASE_ASSETS=$(curl $CI_VERIFY_API/api/v1/repos/$CI_VERIFY_REPO/releases/tags/$CI_COMMIT_TAG | jq -c '.assets[]' | grep linux-amd64)
CI_RELEASE_BINARY_URL=$(echo "$CI_RELEASE_ASSETS" | grep linux-amd64\" | jq -r --jsonargs .browser_download_url) CI_RELEASE_BINARY_URL=$(echo "$CI_RELEASE_ASSETS" | grep linux-amd64\" | jq -r --jsonargs .browser_download_url)
CI_RELEASE_SHA256=$(curl $(echo "$CI_RELEASE_ASSETS" | grep linux-amd64.sha256\" | jq -r --jsonargs .browser_download_url) | cut -d ' ' -f1) CI_RELEASE_SHA256=$(curl $(echo "$CI_RELEASE_ASSETS" | grep linux-amd64.sha256\" | jq -r --jsonargs .browser_download_url) | cut -d ' ' -f1)
wget -nv --content-disposition $CI_RELEASE_BINARY_URL wget --content-disposition $CI_RELEASE_BINARY_URL
DOWNLOAD_SHA256=$(sha256sum forgejo-*-linux-amd64 | cut -d ' ' -f1) DOWNLOAD_SHA256=$(sha256sum forgejo-*-linux-amd64 | cut -d ' ' -f1)
if [ $CI_RELEASE_SHA256 != $DOWNLOAD_SHA256 ] ; then if [ $CI_RELEASE_SHA256 != $DOWNLOAD_SHA256 ] ; then
echo "ERROR: Downloaded file didn't match expected SHA256 sum" echo "ERROR: Downloaded file didn't match expected SHA256 sum"
@ -149,31 +66,20 @@ case "$1" in
mkdir deb/forgejo-sqlite-bin mkdir deb/forgejo-sqlite-bin
mv forgejo-bin deb/forgejo-bin/forgejo mv forgejo-bin deb/forgejo-bin/forgejo
mv forgejo-sqlite-bin deb/forgejo-sqlite-bin/forgejo mv forgejo-sqlite-bin deb/forgejo-sqlite-bin/forgejo
cp -r forgejo/public deb/public
cp -r forgejo/templates deb/templates
cp -r forgejo/options deb/options
if [ -x forgejo-bin-dl ] ; then if [ -x forgejo-bin-dl ] ; then
mkdir deb/forgejo-bin-dl mkdir deb/forgejo-bin-dl
mv forgejo-bin-dl deb/forgejo-bin-dl/forgejo mv forgejo-bin-dl deb/forgejo-bin-dl/forgejo
mv deb/.forgejo-bin.install deb/debian/forgejo-bin.install mv deb/.forgejo-bin.install deb/debian/forgejo-bin.install
ln -s forgejo-common.preinst deb/debian/forgejo-bin.preinst ln -s forgejo.preinst deb/debian/forgejo-bin.preinst
ln -s forgejo.postinst deb/debian/forgejo-bin.postinst ln -s forgejo.postinst deb/debian/forgejo-bin.postinst
ln -s forgejo.prerm deb/debian/forgejo-bin.prerm ln -s forgejo.prerm deb/debian/forgejo-bin.prerm
echo >> deb/debian/control echo >> deb/debian/control
cat deb/.forgejo-bin.control >> deb/debian/control cat deb/.forgejo-bin.control >> deb/debian/control
fi fi
;; ;;
"package-build-deps")
cd deb
mk-build-deps --install --tool "apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends -y" --remove
exit $?
;;
"package-build") "package-build")
cd deb cd deb
if [ "$2" = "actions" ] ; then dpkg-buildpackage -b
PACKAGE_BUILD_EXTRA_ARGS="--no-sign"
fi
dpkg-buildpackage -b $PACKAGE_BUILD_EXTRA_ARGS
exit $? exit $?
;; ;;
"package-clean") "package-clean")
@ -197,82 +103,31 @@ case "$1" in
cp ./etc/systemd/system/forgejo.service.d/override.conf /etc/systemd/system/forgejo.service.d/override.conf cp ./etc/systemd/system/forgejo.service.d/override.conf /etc/systemd/system/forgejo.service.d/override.conf
;; ;;
"install-run-test") "install-run-test")
export DEBIAN_FRONTEND=noninteractive
apt update apt update
if [ "$2" = "${2#"./forgejo-bin_"}" ] ; then apt install -y ./"$2"
APT_FORGEJO_COMMON_RESOLVE="$(ls -1 ./forgejo-common_*_all.deb)" [ -f "/etc/default/forgejo" ] && . /etc/default/forgejo
if [ -f "$APT_FORGEJO_COMMON_RESOLVE" ] ; then [ -z "$FORGEJO_HOME" ] && FORGEJO_HOME=/var/lib/forgejo
APT_FORGEJO_COMMON="./$APT_FORGEJO_COMMON_RESOLVE" [ -z "$FORGEJO_USER" ] && FORGEJO_USER=forgejo
else sudo -u $FORGEJO_USER USER=$FORGEJO_USER \
echo "ERR! Unable to find the necessary forgejo-common package!" HOME=$FORGEJO_HOME GITEA_WORK_DIR=$FORGEJO_HOME \
exit 96 forgejo web --config /etc/forgejo/app.ini &
fi
fi
apt install -y $APT_FORGEJO_COMMON ./"$2"
if [ -f "/etc/default/forgejo" ] || [ "$2" != "${2#"./forgejo-bin_"}" ] ; then
[ -f "/etc/default/forgejo" ] && . /etc/default/forgejo
[ -z "$FORGEJO_HOME" ] && FORGEJO_HOME=/var/lib/forgejo
[ -z "$FORGEJO_USER" ] && FORGEJO_USER=forgejo
sudo -u $FORGEJO_USER USER=$FORGEJO_USER \
HOME=$FORGEJO_HOME FORGEJO_WORK_DIR=$FORGEJO_HOME \
forgejo web -q --config /etc/forgejo/app.ini &
else
echo "No env setup! Run testing defaults using hardcoded vars..."
sudo -u forgejo USER=forgejo forgejo web -q &
fi
sleep 10 sleep 10
curl http://localhost:3000/ | grep -A 4 "Powered by Forgejo" curl http://localhost:3000/
exit $? exit $?
;; ;;
"install-repo-test") "install-repo-test")
export DEBIAN_FRONTEND=noninteractive apt update
apt update -qq
apt install -y apt-utils apt-listchanges
apt install -y ./"$2" apt install -y ./"$2"
apt update -qq apt update
apt upgrade -y apt upgrade -y
apt update -qq apt update
apt install -y "$3" apt install "$3"
sudo -u forgejo USER=forgejo \ sudo -u forgejo USER=forgejo \
HOME=/var/lib/forgejo FORGEJO_WORK_DIR=/var/lib/forgejo \ HOME=/var/lib/forgejo GITEA_WORK_DIR=/var/lib/forgejo \
forgejo web -q --config /etc/fogejo/app.ini & forgejo web --config /etc/fogejo/app.ini &
sleep 10 sleep 10
curl http://localhost:3000/ | grep -A 4 "Powered by Forgejo" curl http://localhost:3000/
exit $? exit $?
;; ;;
"verify-data-dir-chmod")
DATA_DIR_CHMOD="$(stat -c %a /var/lib/forgejo)"
if [ "$DATA_DIR_CHMOD" = "750" ]; then
exit 0
else
exit 100
fi
;;
"force-clean-forgejo")
export DEBIAN_FRONTEND=noninteractive
apt install -y psmisc
killall forgejo
exit $?
;;
"forgejo-test-deps")
echo "deb http://deb.debian.org/debian/ bookworm-backports main contrib" > /etc/apt/sources.list.d/backports.list
export DEBIAN_FRONTEND=noninteractive
apt update -qq
apt install -qq --no-install-recommends -y git-lfs
apt install -qq -y -t bookworm-backports golang-$DEP_GOLANG_VER
ln -sf /usr/lib/go-$DEP_GOLANG_VER/bin/go /usr/local/bin/go
adduser --quiet --comment forgejo --disabled-password forgejo
chown -R forgejo:forgejo .
if [ "$DEP_GOLANG_NODEB_REV" ];then
su forgejo -c "./.ci-make.sh forgejo-test-deps_upgrade-go $DEP_GOLANG_VER $DEP_GOLANG_NODEB_REV"
fi
;;
"forgejo-test-deps_upgrade-go")
go install golang.org/dl/go$2.$3@latest
ln -s ~/go/bin/go$2.$3 ~/go/bin/go
export PATH="$HOME/go/bin:$PATH"
go download
go version
;;
esac esac

352
.crystalintegration.yml Normal file
View file

@ -0,0 +1,352 @@
platform: linux/amd64
when:
event: [ push, tag ]
variables:
- &ci_verify_image 'sc.cryxtal.org/ci-img/git-curl-jq:latest'
- &golang_image 'golang:1.20-bullseye'
- &forgejo_test_image 'codeberg.org/forgejo/test_env:1.19'
- &nodejs_image 'node:lts'
- &bin_dl_image 'sc.cryxtal.org/ci-img/bin-dl:latest'
- &deb_build_image 'sc.cryxtal.org/ci-img/dh:bullseye'
- &deb_test_image_bullseye 'sc.cryxtal.org/ci-img/deb-test:bullseye'
- &deb_test_image_bookworm 'sc.cryxtal.org/ci-img/deb-test:bookworm'
- &deb_test_image_buster 'sc.cryxtal.org/ci-img/deb-test:buster'
- &deb_test_image_sid 'sc.cryxtal.org/ci-img/deb-test:sid'
- &deb_test_image_jammy 'sc.cryxtal.org/ci-img/deb-test-ubuntu:jammy'
- &deb_test_image_focal 'sc.cryxtal.org/ci-img/deb-test-ubuntu:focal'
- &deb_test_image_kinetic 'sc.cryxtal.org/ci-img/deb-test-ubuntu:kinetic'
- &deb_test_image_lunar 'sc.cryxtal.org/ci-img/deb-test-ubuntu:lunar'
- &build_submodule 'forgejo'
- &goproxy_override ''
- &goproxy_setup |-
if [ -n "$${GOPROXY_OVERRIDE:-}" ]; then
export GOPROXY="$${GOPROXY_OVERRIDE}";
echo "Using goproxy from goproxy_override \"$${GOPROXY}\"";
elif [ -n "$${GOPROXY_DEFAULT:-}" ]; then
export GOPROXY="$${GOPROXY_DEFAULT}";
echo "Using goproxy from goproxy_default (secret) not displaying";
else
export GOPROXY="https://proxy.golang.org,direct";
echo "No goproxy overrides or defaults given, using \"$${GOPROXY}\"";
fi
workspace:
base: /go
path: src/cryxtal/forgejo-deb
clone:
clone-recursive:
image: woodpeckerci/plugin-git
settings:
recursive: true
pipeline:
fetch-tags:
image: *ci_verify_image
pull: true
commands:
- git config --add safe.directory '*'
- git fetch --tags --force
- git submodule foreach 'git fetch --tags --force'
ci-verify:
image: *ci_verify_image
group: deps
environment:
BUILD_SUBMODULE: *build_submodule
commands:
- ./.ci-make.sh ci-verify "$BUILD_SUBMODULE"
deps-frontend:
image: *nodejs_image
group: deps
environment:
BUILD_SUBMODULE: *build_submodule
commands:
- ./.ci-make.sh submodule-make "$BUILD_SUBMODULE" deps-frontend
deps-backend:
image: *golang_image
group: deps
environment:
BUILD_SUBMODULE: *build_submodule
GOPROXY_OVERRIDE: *goproxy_override
secrets:
- goproxy_default
commands:
- *goproxy_setup
- ./.ci-make.sh submodule-make "$BUILD_SUBMODULE" deps-backend
tag-pre-condition:
image: *ci_verify_image
environment:
BUILD_SUBMODULE: *build_submodule
commands:
- cd "$BUILD_SUBMODULE"
- git update-ref refs/heads/tag_test $(git rev-parse --verify HEAD)
security-check:
image: *golang_image
group: checks
environment:
BUILD_SUBMODULE: *build_submodule
GOPROXY_OVERRIDE: *goproxy_override
secrets:
- goproxy_default
commands:
- *goproxy_setup
- ./.ci-make.sh submodule-make "$BUILD_SUBMODULE" security-check
build-frontend:
image: *nodejs_image
group: checks
environment:
BUILD_SUBMODULE: *build_submodule
commands:
- ./.ci-make.sh submodule-make "$BUILD_SUBMODULE" frontend
checks-backend:
image: *forgejo_test_image
group: checks
environment:
BUILD_SUBMODULE: *build_submodule
GOPROXY_OVERRIDE: *goproxy_override
secrets:
- goproxy_default
commands:
- *goproxy_setup
- ./.ci-make.sh submodule-make "$BUILD_SUBMODULE" checks-backend
download-bin-amd64:
image: *bin_dl_image
group: build-main
commands:
- ./.ci-make.sh download-binary forgejo-bin-dl
when:
event: [ tag ]
build-forgejo-amd64:
image: *golang_image
group: build-main
environment:
BUILD_SUBMODULE: *build_submodule
GOSUMDB: sum.golang.org
TAGS: bindata
GOPROXY_OVERRIDE: *goproxy_override
secrets:
- goproxy_default
commands:
- *goproxy_setup
- ./.ci-make.sh submodule-build "$BUILD_SUBMODULE" forgejo-bin
build-forgejo-sqlite-amd64:
image: *golang_image
environment:
BUILD_SUBMODULE: *build_submodule
GOSUMDB: sum.golang.org
TAGS: bindata sqlite sqlite_unlock_notify
GOPROXY_OVERRIDE: *goproxy_override
secrets:
- goproxy_default
commands:
- *goproxy_setup
- ./.ci-make.sh submodule-build "$BUILD_SUBMODULE" forgejo-sqlite-bin
package-bullseye:
image: *deb_build_image
group: package
commands:
- ./.ci-make.sh package-prep
- ./.ci-make.sh package-build
- ./.ci-make.sh package-clean
package-repo:
image: *deb_build_image
group: package
commands:
- cd repo-deb
- ./build.sh
gen-sha256:
image: *ci_verify_image
commands:
- ./.ci-make.sh pkg-gen-sha256
- ./.ci-make.sh preview-sha256
test-inst-bookworm:
image: *deb_test_image_bookworm
group: pkg-test-1
commands:
- ./.ci-make.sh install-run-test ./forgejo_*_amd64.deb
test-inst-bookworm-user:
image: *deb_test_image_bookworm
group: pkg-test-1
commands:
- ./.ci-make.sh test-userinst-prep
- ./.ci-make.sh install-run-test ./forgejo_*_amd64.deb
test-inst-bullseye-sqlite:
image: *deb_test_image_bullseye
group: pkg-test-1
commands:
- ./.ci-make.sh install-run-test ./forgejo-sqlite_*_amd64.deb
test-inst-bookworm-sqlite:
image: *deb_test_image_bookworm
group: pkg-test-1
commands:
- ./.ci-make.sh install-run-test ./forgejo-sqlite_*_amd64.deb
test-inst-buster-sqlite:
image: *deb_test_image_buster
group: pkg-test-2
commands:
- ./.ci-make.sh install-run-test ./forgejo-sqlite_*_amd64.deb
test-inst-sid-sqlite:
image: *deb_test_image_sid
group: pkg-test-2
commands:
- ./.ci-make.sh install-run-test ./forgejo-sqlite_*_amd64.deb
test-inst-jammy-sqlite:
image: *deb_test_image_jammy
group: pkg-test-2
commands:
- ./.ci-make.sh install-run-test ./forgejo-sqlite_*_amd64.deb
test-inst-focal-sqlite:
image: *deb_test_image_focal
group: pkg-test-2
commands:
- ./.ci-make.sh install-run-test ./forgejo-sqlite_*_amd64.deb
test-inst-kinetic-sqlite:
image: *deb_test_image_kinetic
group: pkg-test-3
commands:
- ./.ci-make.sh install-run-test ./forgejo-sqlite_*_amd64.deb
test-inst-lunar-sqlite:
image: *deb_test_image_lunar
group: pkg-test-3
commands:
- ./.ci-make.sh install-run-test ./forgejo-sqlite_*_amd64.deb
test-inst-bullseye-bin:
image: *deb_test_image_bullseye
group: pkg-test-3
commands:
- ./.ci-make.sh install-run-test ./forgejo-bin_*_amd64.deb
when:
event: [ tag ]
test-inst-bookworm-bin:
image: *deb_test_image_bookworm
group: pkg-test-3
commands:
- ./.ci-make.sh install-run-test ./forgejo-bin_*_amd64.deb
when:
event: [ tag ]
test-inst-buster-bin:
image: *deb_test_image_buster
group: pkg-test-4
commands:
- ./.ci-make.sh install-run-test ./forgejo-bin_*_amd64.deb
when:
event: [ tag ]
test-inst-sid-bin:
image: *deb_test_image_sid
group: pkg-test-4
commands:
- ./.ci-make.sh install-run-test ./forgejo-bin_*_amd64.deb
when:
event: [ tag ]
test-inst-jammy-bin:
image: *deb_test_image_jammy
group: pkg-test-4
commands:
- ./.ci-make.sh install-run-test ./forgejo-bin_*_amd64.deb
when:
event: [ tag ]
test-inst-focal-bin:
image: *deb_test_image_focal
group: pkg-test-4
commands:
- ./.ci-make.sh install-run-test ./forgejo-bin_*_amd64.deb
when:
event: [ tag ]
test-inst-kinetic-bin:
image: *deb_test_image_kinetic
group: pkg-test-5
commands:
- ./.ci-make.sh install-run-test ./forgejo-bin_*_amd64.deb
when:
event: [ tag ]
test-inst-lunar-bin:
image: *deb_test_image_lunar
group: pkg-test-5
commands:
- ./.ci-make.sh install-run-test ./forgejo-bin_*_amd64.deb
when:
event: [ tag ]
test-repo-bookworm-sqlite:
image: *deb_test_image_bookworm
group: pkg-test-5
commands:
- ./.ci-make.sh install-repo-test ./repo-deb/forgejo-deb-repo_0-0_all.deb forgejo-sqlite
upload-crystalcommit:
image: woodpeckerci/plugin-gitea-release
group: upload
settings:
base_url: https://sc.cryxtal.org
files:
- "*.deb"
- "*.deb.sha256"
api_key:
from_secret: sc_api_key
prerelease: false
skip_verify: true
when:
event: [ tag ]
upload-codeberg:
image: woodpeckerci/plugin-gitea-release
group: upload
settings:
base_url: https://codeberg.org
files:
- "*.deb"
- "*.deb.sha256"
api_key:
from_secret: cb_api_key
prerelease: false
skip_verify: true
when:
event: [ tag ]
publish-apt-repo:
image: *ci_verify_image
group: upload
environment:
FORGEJO_SITE: https://code.forgejo.org
FORGEJO_OWNER: crystal
DEBIAN_DIST: bullseye
DEBIAN_COMPONENT: forgejo
secrets: [ cfo_api_key ]
commands:
- export FORGEJO_KEY=$CFO_API_KEY
- ./.ci-forgejo-apt.sh *.deb
when:
event: [ tag ]

View file

@ -1,223 +0,0 @@
on: [push, pull_request]
jobs:
build-forgejo-deb:
runs-on: bullseye
steps:
- uses: actions/checkout@v4
with:
submodules: true
fetch-depth: 0
fetch-tags: true
filter: tree:0
- uses: actions/setup-node@v3
with:
node-version: 20
- uses: actions/setup-go@v4
with:
go-version: "1.23"
check-latest: true
- name: "actions prep: build-forgejo-deb"
id: ciprep
run: ./.ci-make.sh actions-prep build-forgejo-deb
- uses: crystal/install-jq-action@v2.1.0
- run: ./.ci-make.sh ci-verify forgejo
- run: ./.ci-make.sh submodule-make forgejo deps-frontend
- run: ./.ci-make.sh submodule-make forgejo deps-backend
- name: tag pre-condition
run: |
cd forgejo
git update-ref refs/heads/tag_test $(git rev-parse --verify HEAD)
- run: ./.ci-make.sh submodule-make forgejo security-check
- run: ./.ci-make.sh submodule-make forgejo frontend
- run: ./.ci-make.sh submodule-make forgejo checks-backend
- name: Download Forgejo binary
run: ./.ci-make.sh download-binary forgejo-bin-dl
- name: Build Forgejo for amd64
run: ./.ci-make.sh submodule-build forgejo forgejo-bin
- name: Build Forgejo (with SQLite) for amd64
run: ./.ci-make.sh submodule-build forgejo forgejo-sqlite-bin
env:
TAGS: sqlite sqlite_unlock_notify
- run: ./.ci-make.sh package-prep
- run: ./.ci-make.sh package-build-deps
- run: ./.ci-make.sh package-build actions
- run: ./.ci-make.sh package-clean
- name: build repo package
run: |
cd repo-deb
./build.sh actions
- name: generate sha256
run: |
./.ci-make.sh pkg-gen-sha256
./.ci-make.sh preview-sha256
- run: ./.ci-make.sh install-run-test ./forgejo-sqlite_*_amd64.deb
- uses: actions/upload-artifact@v3
with:
name: forgejo-deb-${{ steps.ciprep.outputs.artifactlabel }}
path: |
*.deb
*.deb.sha256
repo-deb/*.deb
installtest-bookworm-sqlite:
runs-on: bookworm
needs:
- build-forgejo-deb
steps:
- uses: actions/checkout@v4
- name: "actions prep: installtest"
id: ciprep
run: ./.ci-make.sh actions-prep installtest
- uses: actions/download-artifact@v3
with:
name: forgejo-deb-${{ steps.ciprep.outputs.artifactlabel }}
- run: ./.ci-make.sh install-run-test ./forgejo-sqlite_*_amd64.deb
installtest-bullseye-sqlite:
runs-on: bullseye
needs:
- build-forgejo-deb
steps:
- uses: actions/checkout@v4
- name: "actions prep: installtest"
id: ciprep
run: ./.ci-make.sh actions-prep installtest
- uses: actions/download-artifact@v3
with:
name: forgejo-deb-${{ steps.ciprep.outputs.artifactlabel }}
- run: ./.ci-make.sh install-run-test ./forgejo-sqlite_*_amd64.deb
installtest-buster-sqlite:
runs-on: buster
needs:
- build-forgejo-deb
steps:
- uses: actions/checkout@v4
- name: "actions prep: installtest"
id: ciprep
run: ./.ci-make.sh actions-prep installtest
- uses: actions/download-artifact@v3
with:
name: forgejo-deb-${{ steps.ciprep.outputs.artifactlabel }}
- run: ./.ci-make.sh install-run-test ./forgejo-sqlite_*_amd64.deb
installtest-bookworm-user:
runs-on: bookworm
needs:
- build-forgejo-deb
steps:
- uses: actions/checkout@v4
- name: "actions prep: installtest"
id: ciprep
run: ./.ci-make.sh actions-prep installtest
- uses: actions/download-artifact@v3
with:
name: forgejo-deb-${{ steps.ciprep.outputs.artifactlabel }}
- run: ./.ci-make.sh test-userinst-prep
- run: ./.ci-make.sh install-run-test ./forgejo_*_amd64.deb
testsuite-repo-upgrade-sqlite:
runs-on: bookworm
needs:
- build-forgejo-deb
steps:
- uses: actions/checkout@v4
- name: "actions prep: installtest"
id: ciprep
run: ./.ci-make.sh actions-prep installtest
- uses: actions/download-artifact@v3
with:
name: forgejo-deb-${{ steps.ciprep.outputs.artifactlabel }}
- run: ./.ci-make.sh install-repo-test ./repo-deb/forgejo-deb-repo_0-0_all.deb forgejo-sqlite
- run: ./.ci-make.sh force-clean-forgejo
- run: ./.ci-make.sh install-run-test ./forgejo-sqlite_*_amd64.deb
- run: ./.ci-make.sh verify-data-dir-chmod
installtest-buster-bin:
runs-on: buster
needs:
- build-forgejo-deb
steps:
- uses: actions/checkout@v4
- name: "actions prep: installtest"
id: ciprep
run: ./.ci-make.sh actions-prep installtest
- uses: actions/download-artifact@v3
with:
name: forgejo-deb-${{ steps.ciprep.outputs.artifactlabel }}
- run: ./.ci-make.sh install-run-test ./forgejo-bin_*_amd64.deb
publish-release-repo:
runs-on: bookworm
needs:
- build-forgejo-deb
steps:
- uses: actions/checkout@v4
- name: actions prep
id: ciprep
run: ./.ci-make.sh actions-prep
- uses: actions/download-artifact@v3
with:
name: forgejo-deb-${{ steps.ciprep.outputs.artifactlabel }}
- uses: crystal/install-jq-action@v2.1.0
- run: mkdir forgejo-release
- run: mv *.deb *.deb.sha256 forgejo-release/
# - uses: actions/forgejo-release@v1
# with:
# direction: upload
# url: https://forgejo.glicid.fr
# token: ${{ secrets.CFO_API_KEY }}
# release-dir: forgejo-release
- name: Debian package registry publish
env:
FORGEJO_SITE: https://forgejo.glicid.fr
FORGEJO_OWNER: GLiCID
DEBIAN_DIST: bookworm
DEBIAN_COMPONENT: forgejo
FORGEJO_KEY: ${{ secrets.CFO_API_KEY }}
run: |
cd forgejo-release
../.ci-forgejo-apt.sh *.deb
cd ..

2
.gitmodules vendored
View file

@ -1,3 +1,3 @@
[submodule "forgejo"] [submodule "forgejo"]
path = forgejo path = forgejo
url = https://codeberg.org/forgejo/forgejo url = https://sc.cryxtal.org/mirror/forgejo

21
LICENSE
View file

@ -1,21 +0,0 @@
MIT License
Copyright (c) 2023 The Forgejo Community
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View file

@ -1,8 +1,10 @@
# Debian Packages for Forgejo # Debian Packages for Forgejo
Hello! If you want to run Forgejo on Debian/Ubuntu and you're looking for packages to install it to your system, you've come to the right place! Hello! If you want to run Forgejo on Debian/Ubuntu and you're looking for packages to install it to your system, you've come to the right place!
### Build test: [![ci-status](https://ci.cryxtal.org/api/badges/forgejo-contrib/forgejo-deb/status.svg?branch=1.19)](https://ci.cryxtal.org/forgejo-contrib/forgejo-deb)
## Download info ## Download info
You can find the latest release downloads in [the releases tab](https://codeberg.org/forgejo-contrib/forgejo-deb/releases). There are currently 3 packages built by this script. You can find the latest release downloads in [the releases tab](https://codeberg.org/crystal/forgejo-deb/releases). There are currently 3 packages built by this script.
- `forgejo`: A basic production-ready Forgejo build without SQLite support - `forgejo`: A basic production-ready Forgejo build without SQLite support
- `forgejo-sqlite`: A Forgejo build with SQLite support, best way to get started fast - `forgejo-sqlite`: A Forgejo build with SQLite support, best way to get started fast
- `forgejo-bin`: A Debian package with the official Forgejo binary, in case you don't trust my builds - `forgejo-bin`: A Debian package with the official Forgejo binary, in case you don't trust my builds
@ -12,17 +14,6 @@ These packages are easy to use! Just download your preferred package, install it
The default username for Forgejo's user is `forgejo`, but it can easily be changed prior to installation, for example if you would rather run Forgejo as user `git`. All you need to do is download the files from the `etc` folder in this repository, put them in the respective places on your system, and customize them to your liking. When you use apt to install the Forgejo package, it will create a new user with the specified settings. The default username for Forgejo's user is `forgejo`, but it can easily be changed prior to installation, for example if you would rather run Forgejo as user `git`. All you need to do is download the files from the `etc` folder in this repository, put them in the respective places on your system, and customize them to your liking. When you use apt to install the Forgejo package, it will create a new user with the specified settings.
## Updates through apt
You can install updates for this package along with all the other software on your system with `apt` thanks to the Debian package registry added in Forgejo v1.20. Run the following commands to set up the repository on your system:
```sh
sudo apt install wget apt-transport-https
wget --content-disposition https://code.forgejo.org/forgejo-contrib/-/packages/debian/forgejo-deb-repo/0-0/files/2890
sudo apt install ./forgejo-deb-repo_0-0_all.deb
sudo apt update
sudo apt upgrade
```
If you already installed Forgejo using a package from the releases tab, it will now be automatically updated along with the rest of your system packages. If you have not yet installed Forgejo, you can now install it with `apt install forgejo(-sqlite|-bin)`
## Removal ## Removal
Removing Forgejo itself from your system is simple, just `sudo apt remove forgejo(-sqlite|-bin)`. If you use `sudo apt purge`, the related configuration files will also be removed from `/etc/forgejo`. To avoid accidentally destroying user data, other things including the Forgejo user will be left behind. The following commands will remove everything from your system. Removing Forgejo itself from your system is simple, just `sudo apt remove forgejo(-sqlite|-bin)`. If you use `sudo apt purge`, the related configuration files will also be removed from `/etc/forgejo`. To avoid accidentally destroying user data, other things including the Forgejo user will be left behind. The following commands will remove everything from your system.
```sh ```sh
@ -32,5 +23,3 @@ sudo rm -rf /etc/forgejo /etc/default/forgejo /etc/systemd/system/forgejo.servic
sudo deluser forgejo sudo deluser forgejo
``` ```
If you customized the user or home directory before installing Forgejo, make sure to adjust the commands accordingly. If you get an error saying the files you are trying to delete do not exist, don't worry about it. If you customized the user or home directory before installing Forgejo, make sure to adjust the commands accordingly. If you get an error saying the files you are trying to delete do not exist, don't worry about it.
If you installed the `apt` repository and you would like to remove it, use `sudo apt purge forgejo-deb-repo forgejo-deb-repokey`

View file

@ -1,8 +1,8 @@
Package: forgejo-bin Package: forgejo-bin
Architecture: amd64 Architecture: amd64
Priority: optional Priority: optional
Provides: forgejo, gitea Provides: forgejo,gitea
Depends: adduser (>= 3.11), git Depends: adduser (>= 3.11)
Conflicts: forgejo, forgejo-sqlite, forgejo-common Conflicts: forgejo,forgejo-bin
Description: Forgejo: Beyond Coding. We Forge. (binary) Description: Forgejo: Beyond Coding. We Forge. (binary)
The official Forgejo release binary in a Debian package The official Forgejo release binary in a Debian package

File diff suppressed because it is too large Load diff

View file

@ -1,29 +0,0 @@
forgejo (7.0.1-2) unstable; urgency=medium
WARNING: Forgejo will be upgraded to v7.0.1 LTS
Please read the Forgejo v7.0 release announcement and the release notes
for all v7.0.x versions and make any necessary adjustments to your
configuration before proceeding with the upgrade.
You may need to manually restart Forgejo after the upgrade is complete.
https://forgejo.org/2024-04-release-v7-0/
https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#7-0-1
-- crystal <crystal@noreply.codeberg.org> Sat, 27 Apr 2024 15:42:00 +0000
forgejo (1.21.4.0-2) unstable; urgency=medium
WARNING: Forgejo will be upgraded to v1.21.4-0
Please read the Forgejo v1.21 release announcement and the release notes
for all v1.21.x-x versions and make any necessary adjustments to your
configuration before proceeding with the upgrade.
You may need to manually restart Forgejo after the upgrade is complete.
https://forgejo.org/2023-11-release-v1211-0/
https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-21-4-0
-- crystal <crystal@noreply.codeberg.org> Wed, 17 Jan 2024 00:00:00 +0000

View file

@ -1,229 +1,3 @@
forgejo (10.0.3-1) unstable; urgency=medium
* Forgejo version 10.0.3
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#10.0.3
* Split `forgejo-common` package for extra data
-- crystal <crystal@noreply.codeberg.org> Sat, 29 Mar 2025 00:55:00 +0000
forgejo (10.0.2-1) unstable; urgency=medium
* Forgejo version 10.0.2
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#10.0.2
* Split `forgejo-common` package for extra data
-- crystal <crystal@noreply.codeberg.org> Sat, 29 Mar 2025 00:55:00 +0000
forgejo (10.0.1-1) unstable; urgency=medium
* Forgejo version 10.0.1
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#10.0.1
* Split `forgejo-common` package for extra data
-- crystal <crystal@noreply.codeberg.org> Mon, 17 Feb 2025 00:55:00 +0000
forgejo (10.0.0-1) unstable; urgency=medium
* Forgejo version 10.0.0
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#10.0.0
* Split `forgejo-common` package for extra data
-- crystal <crystal@noreply.codeberg.org> Sun, 19 Dec 2025 00:55:00 +0000
forgejo (9.0.3-1) unstable; urgency=medium
* Forgejo version 9.0.3
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#9.0.3
* Split `forgejo-common` package for extra data
-- crystal <crystal@noreply.codeberg.org> Sat, 14 Dec 2024 00:55:00 +0000
forgejo (9.0.2-1) unstable; urgency=medium
* Forgejo version 9.0.2
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#9.0.2
* Split `forgejo-common` package for extra data
-- crystal <crystal@noreply.codeberg.org> Sat, 14 Dec 2024 00:55:00 +0000
forgejo (9.0.1-1) unstable; urgency=medium
* Forgejo version 9.0.1
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#9.0.1
* Split `forgejo-common` package for extra data
-- crystal <crystal@noreply.codeberg.org> Mon, 28 Oct 2024 00:55:00 +0000
forgejo (8.0.3-1) unstable; urgency=medium
* Forgejo version 8.0.3
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#8.0.3
* Split `forgejo-common` package for extra data
-- crystal <crystal@noreply.codeberg.org> Sun, 15 Sep 2024 00:55:00 +0000
forgejo (8.0.2-1) unstable; urgency=medium
* Forgejo version 8.0.2
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#8.0.2
* Split `forgejo-common` package for extra data
-- crystal <crystal@noreply.codeberg.org> Sun, 01 Sep 2024 00:55:00 +0000
forgejo (8.0.1-1) unstable; urgency=medium
* Forgejo version 8.0.1
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#8.0.1
* Split `forgejo-common` package for extra data
-- crystal <crystal@noreply.codeberg.org> Tue, 27 Aug 2024 00:55:00 +0000
forgejo (7.0.7-1) unstable; urgency=medium
* Forgejo version 7.0.7
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#7-0-7
* Split `forgejo-common` package for extra data
-- crystal <crystal@noreply.codeberg.org> Mon, 26 Aug 2024 00:55:00 +0000
forgejo (7.0.5-1) unstable; urgency=medium
* Forgejo version 7.0.5
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#7-0-5
* Split `forgejo-common` package for extra data
-- crystal <crystal@noreply.codeberg.org> Sun, 07 July 2024 17:22:00 +0000
forgejo (7.0.1-1) unstable; urgency=medium
* Forgejo version 7.0.1
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#7-0-1
* Forgejo Actions based build process
-- crystal <crystal@noreply.codeberg.org> Sat, 27 Apr 2024 15:35:00 +0000
forgejo (1.21.11.1-1) unstable; urgency=medium
* Forgejo version 1.21.11-1
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-21-11-1
-- crystal <crystal@noreply.codeberg.org> Fri, 19 Apr 2024 15:46:00 +0000
forgejo (1.21.11.0-1) unstable; urgency=medium
* Forgejo version 1.21.11-0
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-21-11-0
-- crystal <crystal@noreply.codeberg.org> Thu, 18 Apr 2024 23:36:00 +0000
forgejo (1.21.10.0-1) unstable; urgency=medium
* Forgejo version 1.21.10-0
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-21-10-0
-- crystal <crystal@noreply.codeberg.org> Tue, 9 Apr 2024 11:27:00 +0000
forgejo (1.21.8.0-1) unstable; urgency=medium
* Forgejo version 1.21.8-0
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-21-8-0
-- crystal <crystal@noreply.codeberg.org> Sat, 23 Mar 2024 18:15:00 +0000
forgejo (1.21.7.0-2) unstable; urgency=medium
* Forgejo version 1.21.7-0
* Add git dependency
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-21-7-0
-- crystal <crystal@noreply.codeberg.org> Fri, 22 Mar 2024 21:35:00 +0000
forgejo (1.21.6.0-1) unstable; urgency=medium
* Forgejo version 1.21.6-0
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-21-6-0
-- crystal <crystal@noreply.codeberg.org> Sun, 25 Feb 2024 12:10:00 +0000
forgejo (1.21.5.0-1) unstable; urgency=medium
* Forgejo version 1.21.5-0
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-21-5-0
-- crystal <crystal@noreply.codeberg.org> Wed, 31 Jan 2024 22:22:00 +0000
forgejo (1.21.4.0-2) unstable; urgency=medium
* Fix NEWS.Debian changelog
-- crystal <crystal@noreply.codeberg.org> Wed, 17 Jan 2024 00:00:00 +0000
forgejo (1.21.4.0-1) unstable; urgency=medium
* Forgejo version 1.21.4-0
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-21-4-0
-- crystal <crystal@noreply.codeberg.org> Tue, 16 Jan 2024 23:03:00 +0000
forgejo (1.20.6.1-0) unstable; urgency=medium
* Forgejo version 1.20.6-1~deb0
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-20-6-1
* Additional commits: https://codeberg.org/forgejo/forgejo/compare/v1.20.6-1...496b0acd22
-- crystal <crystal@noreply.codeberg.org> Wed, 10 Jan 2024 00:02:00 +0000
forgejo (1.20.5.1-1) unstable; urgency=medium
* Forgejo version 1.20.5-1
* app.ini: Replaced example with blank default
* Change data directory mode to 750
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-20-5-1
-- crystal <crystal@noreply.codeberg.org> Sun, 26 Nov 2023 01:57:00 +0000
forgejo (1.20.5.0-1) unstable; urgency=medium
* Forgejo version 1.20.5-0
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-20-5-0
-- crystal <crystal@noreply.codeberg.org> Sat, 7 Oct 2023 23:03:00 +0000
forgejo (1.20.4.1-1) unstable; urgency=medium
* Forgejo version 1.20.4-1
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-20-4-1
-- crystal <crystal@noreply.codeberg.org> Wed, 20 Sep 2023 20:03:00 +0000
forgejo (1.20.4.0-1) unstable; urgency=medium
* Forgejo version 1.20.4-0
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-20-4-0
-- crystal <crystal@noreply.codeberg.org> Sat, 9 Sep 2023 11:00:00 +0000
forgejo (1.20.3.0-1) unstable; urgency=medium
* Forgejo version 1.20.3-0
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-20-3-0
-- crystal <crystal@noreply.codeberg.org> Tue, 21 Aug 2023 15:27:00 +0000
forgejo (1.20.2.0-2) unstable; urgency=medium
* Forgejo version 1.20.2-0
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-20-2-0
-- crystal <crystal@noreply.codeberg.org> Sun, 30 Jul 2023 15:30:00 +0000
forgejo (1.20.1.0-2) unstable; urgency=medium
* Forgejo version 1.20.1-0
* See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#1-20-1-0
-- crystal <crystal@noreply.codeberg.org> Tue, 25 Jul 2023 08:00:00 +0000
forgejo (1.19.4.0-1) unstable; urgency=medium forgejo (1.19.4.0-1) unstable; urgency=medium
* Forgejo version 1.19.4-0 * Forgejo version 1.19.4-0

View file

@ -8,24 +8,16 @@ Package: forgejo
Architecture: amd64 Architecture: amd64
Priority: optional Priority: optional
Provides: gitea Provides: gitea
Depends: forgejo-common (= ${source:Version}), adduser (>= 3.11), git Depends: adduser (>= 3.11)
Conflicts: forgejo-sqlite, forgejo-bin Conflicts: forgejo-sqlite,forgejo-bin
Description: Forgejo: Beyond Coding. We Forge. Description: Forgejo: Beyond Coding. We Forge.
Forgejo with bindata ONLY - Use this package for MySQL or PostgreSQL setup Forgejo with bindata ONLY - Use this package for MySQL or PostgreSQL setup
Package: forgejo-sqlite Package: forgejo-sqlite
Architecture: amd64 Architecture: amd64
Priority: optional Priority: optional
Provides: forgejo, gitea Provides: forgejo,gitea
Depends: forgejo-common (= ${source:Version}), adduser (>= 3.11), git Depends: adduser (>= 3.11)
Conflicts: forgejo, forgejo-bin Conflicts: forgejo,forgejo-bin
Description: Forgejo: Beyond Coding. We Forge. (SQLite) Description: Forgejo: Beyond Coding. We Forge. (SQLite)
Forgejo with bindata and SQLite support - Use this package to get started immediately Forgejo with bindata and SQLite support - Use this package to get started immediately
Package: forgejo-common
Architecture: all
Priority: optional
Depends: forgejo | forgejo-sqlite (= ${source:Version})
Conflicts: forgejo-bin
Description: Common files for Forgejo
Common data used for all Forgejo packages and architectures.

View file

@ -1,5 +0,0 @@
public/ /usr/share/forgejo
templates/ /usr/share/forgejo
options/ /usr/share/forgejo
forgejo.service /usr/lib/systemd/system
app.ini /etc/forgejo

View file

@ -1 +1,3 @@
forgejo-sqlite-bin/forgejo /usr/bin forgejo-sqlite-bin/forgejo /usr/bin
forgejo.service /usr/lib/systemd/system
app.ini /etc/forgejo

View file

@ -0,0 +1 @@
forgejo.preinst

View file

@ -1 +1,3 @@
forgejo-bin/forgejo /usr/bin forgejo-bin/forgejo /usr/bin
forgejo.service /usr/lib/systemd/system
app.ini /etc/forgejo

View file

@ -29,6 +29,6 @@ case "$1" in
$FORGEJO_USER $FORGEJO_USER
if ! dpkg-statoverride --list $FORGEJO_HOME >/dev/null ; then if ! dpkg-statoverride --list $FORGEJO_HOME >/dev/null ; then
chown -R $FORGEJO_USER:$FORGEJO_GROUP $FORGEJO_HOME chown -R $FORGEJO_USER:$FORGEJO_GROUP $FORGEJO_HOME
chmod u=rwx,g=rx,o= $FORGEJO_HOME chmod u=rwx,g=rwx,o= $FORGEJO_HOME
fi fi
esac esac

View file

@ -61,7 +61,7 @@ WorkingDirectory=~
#RuntimeDirectory=forgejo #RuntimeDirectory=forgejo
ExecStart=/usr/bin/forgejo web --config /etc/forgejo/app.ini ExecStart=/usr/bin/forgejo web --config /etc/forgejo/app.ini
Restart=always Restart=always
Environment=USER=forgejo HOME=/var/lib/forgejo FORGEJO_WORK_DIR=/var/lib/forgejo Environment=USER=forgejo HOME=/var/lib/forgejo GITEA_WORK_DIR=/var/lib/forgejo
# If you install Git to directory prefix other than default PATH (which happens # If you install Git to directory prefix other than default PATH (which happens
# for example if you install other versions of Git side-to-side with # for example if you install other versions of Git side-to-side with
# distribution version), uncomment below line and add that prefix to PATH # distribution version), uncomment below line and add that prefix to PATH

View file

@ -3,4 +3,4 @@
# LimitNOFILE=524288:524288 # LimitNOFILE=524288:524288
User=git User=git
Group=git Group=git
Environment=USER=git HOME=/var/lib/forgejo FORGEJO_WORK_DIR=/var/lib/forgejo Environment=USER=git HOME=/var/lib/forgejo GITEA_WORK_DIR=/var/lib/forgejo

@ -1 +1 @@
Subproject commit dde3f51c72feffac4805fc3133b6a681d8c97c6f Subproject commit daf0fa06af10cdc91dc4ba93c0766a280c008c3c

View file

@ -1,16 +1,16 @@
#!/bin/bash #!/bin/bash
cp code-forgejo-org-forgejo-contrib.asc stub/ cp code-forgejo-org-crystal.asc stub/
cp code-forgejo-org-forgejo-contrib.asc main/ cp code-forgejo-org-crystal.asc main/
cp forgejo-deb.list stub/ cp forgejo-deb.list stub/
cp forgejo-deb.list main/ cp forgejo-deb.list main/
if [ "$1" = "actions" ] ; then
PACKAGE_BUILD_EXTRA_ARGS="--no-sign"
fi
cd stub cd stub
dpkg-buildpackage -b $PACKAGE_BUILD_EXTRA_ARGS dpkg-buildpackage -b
cd .. cd ..
cd main cd main
dpkg-buildpackage -b $PACKAGE_BUILD_EXTRA_ARGS dpkg-buildpackage -b
cd ..
cd experimental
dpkg-buildpackage -b
cd .. cd ..
exit 0 exit 0

View file

@ -0,0 +1,29 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
xsBNBGSVbecBCADSrwa9TMkPb5LMC7Ts/6wDRUDkmO63uJLJ8eSTz2iurmN/gUuE
GG65Pgkv+zqNENFga+nAJz4sTeAEMbUxxgPFKKdM5pdkYoSZ2iqsnH8/3nGeeNne
7sE5i2ZbUKJwRFwBW8Oi8aecBcR7bxYPi2sdMcz93zYebrc23xhUEUA1tNdXU0SR
+H7Wepq6MafWKYWpAWeAbRSGzB/jkc7rEur9CwvgEfuvKIpn6dvjbPVZdC8gUzJb
+nBAqCWvzU28+ByWioRpmMmPwCVjxDlwhZNZfNkme3i9PuIHDqWCID+kfPMqDxLe
BX4lJhrIBkzNXEyrCBxI6f00fstMblx05QqhABEBAAHNM0Zvcmdlam86IEJleW9u
ZCBjb2RpbmcuIFdlIGZvcmdlLiAoRGViaWFuIFJlZ2lzdHJ5KcLAYgQTAQgAFgUC
ZJVt5wkQFppua1ziWCACGwMCGQEAAC3YCAAIfjy3U2+OX1QWB2hYnuF1eRtrJhwu
oioH0gVoyOfwqMG3bJhN0iKZ2kDAUwMWe9QdneRIvZPYtVQqn52QB0tIljeZDwHA
c+62pNu4227pR51gF34CDguMMZuzLFMFmaASfP/7Ygb+Q1upSCKq++K9ZKgitlcz
zGp4Sp6RBG8ELh3wNrSNYs1ZYWw6NdA+ayy+P7P5Hy9JSVjL1qlttE8Zn1WQFm5L
LuGnhu0fTrtSKZa7+yIv6q4eNyKauJlcllANr51lgujcLjob8T7TLPrIpjLODGB3
dRqF6Mdn3UXNXv2twVqLVKuzaRSwT9H/J4oaFpuvOv2EJpECawNOe8PIzsBNBGSV
becBCACpoCecK1oT++JiFuRloEgpGQW2QiD6IWk0kpqCSt5qzPAGu1CCyRoQUTfX
jS/ClwIM0YRdowgeuLcNRk+0jFjFGKPa5zRXXxuq1ZBMUKLQ7I0VUGKN4UqLQ6OU
kIrSknL75IiwnOsMoKXU9QPr/fzQlh0lLNfjL3FOmh16/QoWcTnSWZjhGvwkFFx4
4T3mpeD2Y+Lsx8Psi4ZORv+ODxsb0piRUEIe2nq2Uav9Qj9YLd+rzenG0qcTN46A
oqwumuUBRxGn2WWkTf1ZnTWS36WDw1bWEzgwvvlz7NRwEXg16SBwbR/9bnWx359h
AaWBy3A1c3hBaQLPXzCpQnasbMAdABEBAAHCwF8EGAEIABMFAmSVbecJEBaabmtc
4lggAhsMAACWcwgALSpBKXv4SX2VAVCo1GKUO8FT/dpgAP6u788fdorQBlS7TUTz
wqEB/wVuSjOER04DdOOXH5up9ikZhaTa03uL4UXeHsPL9qaUQ+Y1Avn8FHpR3647
O+f0+iEiROtNfLuNWNYISHwJB644m2xsMG9bohLU2h78yS0ToZlt5hvoTpTNKO1g
9lUM7u2i5DBDBQnUBfp6nKou9gMH2CHgB4W4Gc36b7sgU7AQt095yfbfdIjaHl7a
wikaAx/cMShI0lJudDs60qUfxfKfEQBcexJMiEiZbF6dPzQ6OQm9lcmkuhNAX6MP
zuNnZsilht/BDYeKWqmwdfXFxcdZ/BX/oitwkA==
=hNbH
-----END PGP PUBLIC KEY BLOCK-----

View file

@ -1,29 +0,0 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
xsBNBGS/s68BCACv7kWy8EHmOHzQ0hjZ9far6U16/9egyJ1amCXHJj755glbuFD0
aXeCjnp8p6Dghjz2a4fNkmeJhpgQGW7aN7SUFXa7TDW6/aoeNuvHl9ll7ZjUrovV
jihPkPFrSAfbDIsXnM75psaxWnRgVhNtQ/qdFoTtYgsKmExKmBN0wgs6MV3355i5
/WwgADDJHFFaCcx+0+kG8ilXr3DiVeKmdXG8bp89MZ1s2CR1uiHbR7AQkJ+DFiRV
xW4IOAsSy06xTHAYHf0G3N+BkBJEJfo76cS3auaz5PiggRKcXdPo77MietCJjtLW
Y9Tln5ZJrHydXRAePjD89vpukhG/LHCc2cl7ABEBAAHNM0Zvcmdlam86IEJleW9u
ZCBjb2RpbmcuIFdlIGZvcmdlLiAoRGViaWFuIFJlZ2lzdHJ5KcLAYgQTAQgAFgUC
ZL+zrwkQfJzSyuVhN4wCGwMCGQEAAEcLCAABj/QKDy/RbyUpkjbIxFXOfmIVf/vF
RalgSONoT7e6MH48WwvJP7ggThMZwUjYYKSwFHJ86bcrxOX9fX81ZzZDzKzoplFy
HvnNgqBuZt30P4C60Q+VzeiRagMMJSqzZR3ZBPa7KxMr0QJBM9aA6fUKxYiPxwfr
D/R4alUb1J4Wyt3i/ioXurLP4L3cM5yb5PIXkQOd6NA9rH2WdkC971pen8c3tQF9
da1W/XVOQ7OvBs556cm/1o0xurMcKiDnfUBiVWQLEZWTSsBclaFBEACaHEnj/vVs
uhRKoxqmKTuq6yXvpNeOrUkpPb3rVCqNZ4UutT5nHdi1zc9gTJ3F7dSTzsBNBGS/
s68BCADmfx9KS69mCFtX7wPD4NLYebjwz/fWfc+X1l7k/VsfMGNGQGM2qkQ44pKa
EG0oG8mXtjUhFYEdQfXeSFZFg1ROIruBGNYAcAj3LUqXpQy3Ojjiq2L+OYH92uCF
hiGI1TNA5LY9zITfmmNWVDsi8u/Ip4+OBn8MBZ+iYE373PEr0jkddH6ShORWehyO
77/4ogpkei6b6kU3AEV+PTZgz1xrbiqDz5FSgY+niJMb+7MoYIC8doew1Ak5UdMv
1b7vVmfre/frSCb8EO68eli0tosuaXV/7jwsLyXItxuqxjm8l3F3exOa8GiueruR
l/12DYXs7vN2KYw6L0N/dexorYWRABEBAAHCwF8EGAEIABMFAmS/s68JEHyc0srl
YTeMAhsMAABkNwgABNfuGkB/mqcMgLL/FLe+7PlBdngRUdCYD+ZbkgCk7npWP7sI
t7bxQhYJtQwpbRW6pdhqM6M19sUT53SaZH1VbY4dOxV4ju5PGPdmJxxWNP6ZyvQF
locHN8m9ROHdYixBTbhuNAUseUfz3EoQrvXpi6WUAqUfDgpRbV5AGqi0AfQaRkX3
wyQowc3SYk8U1NtnEKLOFu7o+eR4Qh317BrBc9Ve0+GWTMbm9XaqCiVcz9iGtXQe
cQsoKZHldRieBdNo0yg0hBu/PUl9rRNdG9LDFQ/uRksJ0rzJDG65U6LF1QfueuQo
p2Ly49Vic8/G6sacJE02M1oEB1YvrqRKbe3Y5Q==
=rsSQ
-----END PGP PUBLIC KEY BLOCK-----

View file

@ -0,0 +1,29 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
xsBNBGSibUwBCADQRY7uvgMrUHYCHhtj9bPfe8aHFtfJlSH7dKyndJ1vBEVMwLmr
MFicY+42waSR8wQezfrX6f4u7YIDtmNf87VXXL2SW2B5vlDsBgjBBNaYBZ5I21gL
HOR53XPc9rjUMTbGuec7FOZ25FOYEuaG9BmaUtkCPHyrijLyy6eXweH3OWardwQs
lkT4gfPD/uGzg8BhQWlKdgrhkGETtq9sRqYiJ+r61UwL/ei+R7kTrOo3Ru2JOr0y
HD9zzJlNk9cGUOfHWy+5DoaByoBN4biLRtPJk/NnNxJ0NDQprKMHJh0NYmfn6Gwr
naaAoxNYp+WYsrT0QXVNtrgXdfiYe4LH2tE7ABEBAAHNM0Zvcmdlam86IEJleW9u
ZCBjb2RpbmcuIFdlIGZvcmdlLiAoRGViaWFuIFJlZ2lzdHJ5KcLAYgQTAQgAFgUC
ZKJtTAkQcY4SiaXuU7ACGwMCGQEAANj1CAAhKjY+RMYXzqoaBZ5OOehGXHcar2Lf
8PWIzX7TEXPPeCH2C6QOIeeHDQQ6BDhqIukUqzadgz0CdeaO2newf2HvEBF3beLD
B20hpqX9rPc+rSR/XqRJ/uFMZwK0fBRVqnzM9Oj5FhQfAbVEFYjHhwiPYrS21X2l
aDVw+PwSC6GTqgDKotQzwo66Iy5zxbu4dzibur8VOrVOQzKO0G5X4ihDjHi54ajJ
G7mXKuwjP/VaWYY3UalxRDqTZiZNPaVw4uPjOvcJbHA/Ox+pXIjYHlREzOBqnN71
91hPt4MXGxWUMy4QBVLx3XWxWAJzMPJBP+mTM5FZI4woOn+IH/0gk7LqzsBNBGSi
bUwBCADdSRfcBpSPqtzHIUkpbPoldvMWvaXJPWDRw6cgzMUuUq9a/bs5ZCkxs1WA
YjWj51klUCzKyttdg9EKOnHGM0tJ/96OTOMQ1LByftq57QWlKnShWRHXqnx4WMJd
Ad383e4kcY8WzmCT7ggZ5AeXYR0MtE0nxMlMGVELR6CLEKrkq749Gwcu29hfO9JG
sAelD0QV3Bto7dQuGo+ywNqH+0CZYBL6qh3gETm1p3BAGVfABTuScw30VvjreHGK
2dIHjWKUUXTtmzkC2pdjMhNOphAYSmF/PxzMVgpM0EpKOR48qtc3LKvHMWjJbd3k
OkRMtptX7CJasT7g6r8y4wg40ijZABEBAAHCwF8EGAEIABMFAmSibUwJEHGOEoml
7lOwAhsMAAB3hAgArpnm2fgZOaA15yp1Mh5GiAjrzXGScmgJuAKRXq9N4pDVRRJx
ABlytuxlCLmeOKb+q9Lpj4G4y+rpK/EozGdTi04Vfg2ij8kMEJsqGKE0YrYYfsX7
sAfpr9Cz3Hn7Q/7Z7QnhkVBhJvw+2XCWCXA63THC1oSEzBYuveWUX/BOlykXYXQT
A0pTJDe/iSaBrY15klehr7TFTtU3GNuP71a8gsvEXH0I9lbvuteQszI5S2eUlKIz
y+qMwiEeNdX6MTKQa6QFPxs20iz32vYzxvnahOhFKYdpgGsEhGH0df/ZdKNYNuv9
ZdoaZeBwshMaOQlGR/POYyEr99Q9eJZY5QH8kg==
=ixNu
-----END PGP PUBLIC KEY BLOCK-----

View file

@ -0,0 +1,5 @@
forgejo-deb-experimental (0-0) unstable; urgency=medium
* Initial version
-- crystal <crystal@noreply.codeberg.org> Mon, 3 Jul 2023 06:30:00 +0000

View file

@ -0,0 +1 @@
10

View file

@ -0,0 +1,18 @@
Source: forgejo-deb-experimental
Section: admin
Priority: optional
Maintainer: crystal <crystal@noreply.codeberg.org>
Build-Depends: debhelper (>= 10)
Package: forgejo-deb-experimental
Architecture: all
Priority: optional
Depends: crystal-experimental-repokey, apt-transport-https
Description: APT Repository for experimental forgejo-deb builds
Add the "crystal-experimental" repository to your system for release candidates and test builds
Package: crystal-experimental-repokey
Architecture: all
Priority: optional
Description: APT Repository signing key for crystal-experimental
Debian Package Registry key for https://code.forgejo.org/crystal-experimental

View file

@ -0,0 +1 @@
code-forgejo-org-crystal-experimental.asc /etc/apt/trusted.gpg.d

View file

@ -0,0 +1 @@
forgejo-deb-experimental.list /etc/apt/sources.list.d

View file

@ -0,0 +1,4 @@
#!/usr/bin/make -f
%:
dh $@ --with=systemd

View file

@ -0,0 +1 @@
deb https://code.forgejo.org/api/packages/crystal-experimental/debian bullseye forgejo

View file

@ -1 +1 @@
deb https://code.forgejo.org/api/packages/forgejo-contrib/debian bullseye forgejo-lts deb https://code.forgejo.org/api/packages/crystal/debian bullseye forgejo

View file

@ -1,26 +0,0 @@
forgejo-deb-repo (2-4) unstable; urgency=medium
WARNING: You are switching to the Forgejo LTS release channel!
After this upgrade is complete, you must run `apt upgrade` again to upgrade
to Forgejo 7.0.x LTS. You will no longer recieve new major Forgejo versions
until the next LTS version is available.
If you wish to switch to the standard release channel, use the following
commands to install the setup package. This package will be removed when the
release channel is successfully switched during the upgrade.
sudo apt install forgejo-deb-repo-stable
sudo apt update
sudo apt full-upgrade
More info: https://codeberg.org/forgejo-contrib/forgejo-deb/issues/35
Please read the Forgejo v7.0 release announcement and the release notes
for all v7.0.x versions and make any necessary adjustments to your
configuration before proceeding with the following upgrade.
https://forgejo.org/2024-04-release-v7-0/
https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#7-0-1
-- crystal <crystal@noreply.codeberg.org> Sun, 28 Apr 2024 17:48:00 +0000

View file

@ -1,21 +1,3 @@
forgejo-deb-repo (2-4) unstable; urgency=medium
* Switch to forgejo-lts component (LTS release channel)
-- crystal <crystal@noreply.codeberg.org> Sun, 28 Apr 2024 17:48:00 +0000
forgejo-deb-repo (2-2) unstable; urgency=medium
* Add apt-listchanges dep for important upgrade notices
-- crystal <crystal@noreply.codeberg.org> Sun, 28 Apr 2024 13:13:00 +0000
forgejo-deb-repo (2-1) unstable; urgency=medium
* Move to https://code.forgejo.org/forgejo-contrib/-/packages
-- crystal <crystal@noreply.codeberg.org> Tue, 25 Jul 2023 12:00:00 +0000
forgejo-deb-repo (1-1) unstable; urgency=medium forgejo-deb-repo (1-1) unstable; urgency=medium
* Split key and repo package * Split key and repo package

View file

@ -7,8 +7,7 @@ Build-Depends: debhelper (>= 10)
Package: forgejo-deb-repo Package: forgejo-deb-repo
Architecture: all Architecture: all
Priority: optional Priority: optional
Depends: forgejo-deb-repokey, apt-transport-https, apt-listchanges Depends: forgejo-deb-repokey, apt-transport-https
Conflicts: forgejo-deb-repo-lts
Description: APT Repository for forgejo-deb builds Description: APT Repository for forgejo-deb builds
Forgejo will be updated via apt along with other software on your system Forgejo will be updated via apt along with other software on your system
@ -17,4 +16,4 @@ Architecture: all
Priority: optional Priority: optional
Replaces: forgejo-deb-repo Replaces: forgejo-deb-repo
Description: APT Repository signing key for forgejo-deb Description: APT Repository signing key for forgejo-deb
Debian Package Registry key for https://code.forgejo.org/forgejo-contrib Debian Package Registry key for https://code.forgejo.org/crystal

View file

@ -1 +1 @@
code-forgejo-org-forgejo-contrib.asc /etc/apt/trusted.gpg.d code-forgejo-org-crystal.asc /etc/apt/trusted.gpg.d

View file

@ -2,4 +2,4 @@ forgejo-deb-repo (0-0) unstable; urgency=medium
* forgejo-deb APT repository stub * forgejo-deb APT repository stub
-- crystal <crystal@noreply.codeberg.org> Sun, 28 Jul 2024 18:25:00 +0000 -- crystal <crystal@noreply.codeberg.org> Sun, 2 Jul 2023 20:30:00 +0000

View file

@ -1,2 +1,2 @@
code-forgejo-org-forgejo-contrib.asc /etc/apt/trusted.gpg.d code-forgejo-org-crystal.asc /etc/apt/trusted.gpg.d
forgejo-deb.list /etc/apt/sources.list.d forgejo-deb.list /etc/apt/sources.list.d