Lindenii Project Forge
Login

server

Lindenii Forge’s main backend daemon
Commit info
ID
2fba639cedd210454fbea971c2a9fe302274a255
Author
Runxi Yu <me@runxiyu.org>
Author date
Thu, 03 Apr 2025 10:47:57 +0800
Committer
Runxi Yu <me@runxiyu.org>
Committer date
Thu, 03 Apr 2025 10:47:57 +0800
Actions
Disable CI for now

I'm currently not working on places where the CI would be helpful
anyway, and having to -o skip-ci then push to other remotes separately
is getting a bit annoying, otherwise I would be wasting builds.sr.ht's
resources unnecessarily.
image: alpine/edge
secrets:
  - cf31947b-6d5d-4229-8ed3-56183102ea81
packages:
  - go
  - mandoc
  - hut
  - golangci-lint
  - linux-headers
  - make
  - gcc
  - musl-dev
tasks:
  - prepare: |
      cd forge
  - build: |
      cd forge
      make
  - lint: |
      cd forge
      golangci-lint run .
  - upload: |
      cd forge
      x="$(git describe --exact || true)"
      if [ -z "$x" ]; then
      	printf 'Not a tag, not uploading artifacts\n' >&2
      else
      	mv forge forge-"$x"-linux-amd64
      	hut git artifact -r forge upload forge-"$x"-linux-amd64
      fi
# Lindenii Forge

[![builds.sr.ht status](https://builds.sr.ht/~runxiyu/forge.svg)](https://builds.sr.ht/~runxiyu/forge)

**Work in progress.**

Lindenii Forge aims to be an uncomplicated yet featured software forge,
primarily designed for self-hosting by small organizations and individuals.

* [Upstream source repository](https://forge.lindenii.runxiyu.org/forge/-/repos/server/)
  ([backup](https://git.lindenii.runxiyu.org/forge.git/))
* [Website and documentation](https://lindenii.runxiyu.org/forge/)
* [Manual pages](https://forge.lindenii.runxiyu.org/-/man/)
* [Temporary issue tracker](https://todo.sr.ht/~runxiyu/forge)
* IRC [`#lindenii`](https://webirc.runxiyu.org/kiwiirc/#lindenii)
  on [irc.runxiyu.org](https://irc.runxiyu.org)\
  and [`#lindenii`](https://web.libera.chat/#lindenii)
  on [Libera.Chat](https://libera.chat)

## Implemented features

* Umambiguously parsable URL
* Groups and subgroups
* Repo hosting
* Push to `contrib/` branches to automatically create merge requests
* Basic federated authentication

## Planned features

* Integration with mailing list workflows
* Ticket trackers and discussions
  * Web interface
  * Email integration with IMAP archives
* SSH API
* Email access

## License

We are currently using the
[GNU Affero General Public License version 3](https://www.gnu.org/licenses/agpl-3.0.html).

The forge software serves its own source at `/-/source/`.

## Contribute

Please submit patches by pushing to `contrib/...` in the official repo.

Alternatively, send email to
[`forge/-/repos/server@forge.lindenii.runxiyu.org`](mailto:forge%2F-%2Frepos%2Fserver@forge.lindenii.runxiyu.org).
Note that emailing patches is still experimental.

## Mirrors

We have several repo mirrors:

* [Official repo on our own instance of Lindenii Forge](https://forge.lindenii.runxiyu.org/forge/-/repos/server/)
* [The Lindenii Project's backup cgit](https://git.lindenii.runxiyu.org/forge.git/)
* [SourceHut](https://git.sr.ht/~runxiyu/forge/)
* [Codeberg](https://codeberg.org/lindenii/forge/)
* [GitHub](https://github.com/runxiyu/forge/)