Compare commits

..

No commits in common. "3509c5a65a3910dd5f2357302fe7da377aa9c6b8" and "980b39c94699172ce504ab3de1c11949c306271c" have entirely different histories.

2 changed files with 11 additions and 28 deletions

View file

@ -24,7 +24,7 @@ jobs:
steps: steps:
- name: Get Debian version - name: Get Debian version
id: debian-version id: debian_version
run: | run: |
VERSION=$(cat /etc/debian_version) VERSION=$(cat /etc/debian_version)
DISTRIBUTION=$(lsb_release -sc 2>/dev/null) DISTRIBUTION=$(lsb_release -sc 2>/dev/null)
@ -43,9 +43,9 @@ jobs:
path: | path: |
~/.cargo/registry ~/.cargo/registry
~/.cargo/git ~/.cargo/git
key: cargo-debian${{ steps.debian-version.outputs.version }}-${{ hashFiles('**/Cargo.lock') }} key: cargo-debian${{ steps.debian_version.outputs.version }}-${{ hashFiles('**/Cargo.lock') }}
restore-keys: | restore-keys: |
cargo-debian${{ steps.debian-version.outputs.version }}- cargo-debian${{ steps.debian_version.outputs.version }}-
- name: Setup sccache - name: Setup sccache
uses: https://git.tomfos.tr/tom/sccache-action@v1 uses: https://git.tomfos.tr/tom/sccache-action@v1
@ -72,21 +72,18 @@ jobs:
# VERSION is the package version, COMPONENT is used in # VERSION is the package version, COMPONENT is used in
# apt's repository config like a git repo branch # apt's repository config like a git repo branch
if [[ "${{ forge.ref }}" == "refs/tags/"* ]]; then if [[ "${{ forge.ref }}" == "refs/tags/"* ]]; then
# Use the "stable" component for tagged releases
COMPONENT="stable" COMPONENT="stable"
VERSION=$BASE_VERSION VERSION=$BASE_VERSION
else else
# Use the "dev" component for development builds
SHA=$(echo "${{ forge.sha }}" | cut -c1-7) SHA=$(echo "${{ forge.sha }}" | cut -c1-7)
DATE=$(date +%Y%m%d) DATE=$(date +%Y%m%d)
if [ "${{ forge.ref_name }}" = "main" ]; then if [ "${{ forge.ref_name }}" = "main" ]; then
COMPONENT="dev" COMPONENT="dev"
else else
# Use the sanitized ref name as the component for feature branches # Use sanitized ref name for the component
COMPONENT="dev-$(echo '${{ forge.ref_name }}' | sed 's/[^a-zA-Z0-9.+]/-/g' | tr '[:upper:]' '[:lower:]' | cut -c1-30)" COMPONENT=$(echo "${{ forge.ref_name }}" | sed 's/[^a-zA-Z0-9.+]/~/g' | tr '[:upper:]' '[:lower:]' | cut -c1-30)
fi fi
CLEAN_COMPONENT=$(echo $COMPONENT | sed 's/[^a-zA-Z0-9.+]/~/g') VERSION="$BASE_VERSION~git$DATE.$SHA-$COMPONENT"
VERSION="$BASE_VERSION~git$DATE.$SHA-$CLEAN_COMPONENT"
fi fi
echo "component=$COMPONENT" >> $GITHUB_OUTPUT echo "component=$COMPONENT" >> $GITHUB_OUTPUT
echo "version=$VERSION" >> $GITHUB_OUTPUT echo "version=$VERSION" >> $GITHUB_OUTPUT
@ -145,7 +142,7 @@ jobs:
if: ${{ forge.event_name == 'push' || forge.event_name == 'workflow_dispatch' }} if: ${{ forge.event_name == 'push' || forge.event_name == 'workflow_dispatch' }}
run: | run: |
OWNER="continuwuation" OWNER="continuwuation"
DISTRIBUTION=${{ steps.debian-version.outputs.distribution }} DISTRIBUTION=${{ steps.debian_version.outputs.distribution }}
COMPONENT=${{ steps.package-meta.outputs.component }} COMPONENT=${{ steps.package-meta.outputs.component }}
DEB=${{ steps.cargo-deb.outputs.path }} DEB=${{ steps.cargo-deb.outputs.path }}

View file

@ -1,27 +1,13 @@
# Continuwuity for Debian # Continuwuity for Debian
This document provides information about downloading and deploying the Debian package. You can also use this guide for other deb-based distributions such as Ubuntu. This document provides information about downloading and deploying the Debian package. You can also use this guide for other `apt`-based distributions such as Ubuntu.
### Installation ### Installation
To add the Continuwuation apt repository:
```bash
# Import the Continuwuation signing key
sudo curl https://forgejo.ellis.link/api/packages/continuwuation/debian/repository.key -o /etc/apt/keyrings/forgejo-continuwuation.asc
# Add a new apt source list pointing to the repository
echo "deb [signed-by=/etc/apt/keyrings/forgejo-continuwuation.asc] https://forgejo.ellis.link/api/packages/continuwuation/debian $(lsb_release -sc) stable" | sudo tee -a /etc/apt/sources.list.d/continuwuation.list
# Update remote package lists
sudo apt update
```
To install continuwuity:
```bash
sudo apt install continuwuity
```
The `continuwuity` package conflicts with the old `conduwuit` package and will remove it automatically when installed.
See the [generic deployment guide](../deploying/generic.md) for additional information about using the Debian package. See the [generic deployment guide](../deploying/generic.md) for additional information about using the Debian package.
No `apt` repository is currently available. This feature is in development.
### Configuration ### Configuration
After installation, Continuwuity places the example configuration at `/etc/conduwuit/conduwuit.toml` as the default configuration file. The configuration file indicates which settings you must change before starting the service. After installation, Continuwuity places the example configuration at `/etc/conduwuit/conduwuit.toml` as the default configuration file. The configuration file indicates which settings you must change before starting the service.
@ -30,7 +16,7 @@ You can customize additional settings by uncommenting and modifying the configur
### Running ### Running
The package uses the [`conduwuit.service`](../configuration/examples.md#example-systemd-unit-file) systemd unit file to start and stop Continuwuity. The binary installs at `/usr/bin/conduwuit`. The package uses the [`conduwuit.service`](../configuration/examples.md#example-systemd-unit-file) systemd unit file to start and stop Continuwuity. The binary installs at `/usr/sbin/conduwuit`.
By default, this package assumes that Continuwuity runs behind a reverse proxy. The default configuration options apply (listening on `localhost` and TCP port `6167`). Matrix federation requires a valid domain name and TLS. To federate properly, you must set up TLS certificates and certificate renewal. By default, this package assumes that Continuwuity runs behind a reverse proxy. The default configuration options apply (listening on `localhost` and TCP port `6167`). Matrix federation requires a valid domain name and TLS. To federate properly, you must set up TLS certificates and certificate renewal.