Skip to content

Commit

Permalink
Update the docs for v4.0.0rc1.
Browse files Browse the repository at this point in the history
  • Loading branch information
SadieCat committed Jun 7, 2024
1 parent cefa726 commit 374dfad
Show file tree
Hide file tree
Showing 15 changed files with 439 additions and 67 deletions.
32 changes: 32 additions & 0 deletions docs/4/change-log.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,38 @@ title: v4 Change Log

This page lists changes which have happened between releases.

### InspIRCd 4.0.0rc1

**This release candidate version of InspIRCd was released on 2024-06-07.**

- Added `--protocoldebug` to allow the logging of I/O traffic in debug logs.

- Added `<oper:nopassword>` to allow configuring an oper account to rely on other fields instead of a password for authentication.

- Added `<websocket:allowmissingorigin>` to allow configuring whether non-web WebSocket connections are allowed.

- Added nullability attributes to all core module events.

- Added support for SRV record lookup to the `mysql` module.

- Changed `--debug` to only enable logging at the debug level and automatically enable `--nofork`.

- Changed `OnPreMessage` to allow customising the prefix rank of the message target.

- Changed the terminal logger to use a cleaner format.

- Fixed messages from the `opmoderated` module appearing in the channel history.

- Fixed resyncing the customversion when the config reloads.

- Removed support for configuring the Argon2 version in the `argon2` module.

- Removed the unused hops field from the `SERVER` S2S message.

- Updated the credits.

- Windows releases will now be automatically built by CI.

### InspIRCd 4.0.0a26

**This pre-release version of InspIRCd was released on 2024-04-15.**
Expand Down
7 changes: 7 additions & 0 deletions docs/4/configuration/_oper.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,12 @@ attributes:
default: null
description: |-
The password for this server operator account.
- name: nopassword
type: Boolean
required: false
default: 'No'
description: |-
If enabled then the password field will not be used. You MUST use some other restriction field if this is enabled.
- name: type
type: Text
required: true
Expand Down Expand Up @@ -95,6 +101,7 @@ example: |-
```xml
<oper name="Sadie"
password="7H8Tqm+i$jaG48RHAcoLXSB3Guzaf1bQehaNRNbblMoNrHPdguvU"
nopassword="no"
hash="hmac-sha256"
class="ServerOperators"
host="*@bnc.example.com"
Expand Down
46 changes: 46 additions & 0 deletions docs/4/installation/centos.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
title: v4 CentOS Installation
---

## Installing InspIRCd 4 using the CentOS package

An official package for CentOS is maintained by the InspIRCd Team. You can download this from [the releases page](https://github.com/inspircd/inspircd/releases/latest).

### What systems are supported by this package?

This package can be installed on all x86-64 systems running CentOS 7. If you are using CentOS Stream 8 or newer you should install the package for the binary-compatible [Rocky Linux](/4/installation/rocky) distribution instead.

### How do I install this package?

First, download the RPM package to your server using Wget. If you do not have Wget installed you can install it using `sudo yum install wget`.

```sh
# Replace the URL here with the URL you obtained from the releases page.
wget "https://github.com/inspircd/inspircd/releases/download/[VERSION]/inspircd-[VERSION].el7.x86_64.rpm"
```

Once the package has downloaded ensure that the file has not been corrupted during download by running `sha256sum` and comparing its output to the hash specified on the releases page.

```sh
# Replace the filename here with the name of the file you obtained from the releases page.
sha256sum "./inspircd-[VERSION].el7.x86_64.rpm"
```

If the hash matches the one specified on the releases page you can proceed to install the package.

```sh
# Replace the filename here with the name of the file you obtained from the releases page.
sudo yum install "./inspircd-[VERSION].el7.x86_64.rpm"
```

The package should now be installed and you can proceed to set up your [configuration](/4/configuration).

Once you have configured your server you can start it by running `systemctl start inspircd.service` or, if you prefer not to use systemd, by running `inspircd`.

### Where does this package store important files?

Configuration files are stored in `/etc/inspircd`.

Data files are stored in `/var/lib/inspircd`.

Log files are stored in `/var/log/inspircd`.
54 changes: 54 additions & 0 deletions docs/4/installation/debian.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
---
title: v4 Debian Installation
---

## Installing InspIRCd 4 using the Debian package

An official package for Debian is maintained by the InspIRCd Team. You can download this from [the releases page](https://github.com/inspircd/inspircd/releases/latest).

### What systems are supported by this package?

This package can be installed on all x86-64 systems running Debian 11 (Bullseye), 12 (Bookworm), and 14 (Trixie).

### How do I install this package?

If you've previously installed InspIRCd from the Debian repositories you should start by backing up your config and data directories and removing the existing package.

```sh
cp -r /etc/inspircd conf
cp -r /var/run/inspircd data
sudo apt-get purge inspircd
```

Then, download the .deb package to your server using Wget. If you do not have Wget installed you can install it using `sudo apt-get install wget`.

```sh
# Replace the URL here with the URL you obtained from the releases page.
wget "https://github.com/inspircd/inspircd/releases/download/[VERSION]/inspircd_[VERSION]_amd64.deb"
```

Once the package has downloaded ensure that the file has not been corrupted during download by running `sha256sum` and comparing its output to the hash specified on the releases page.

```sh
# Replace the filename here with the name of the file you obtained from the releases page.
sha256sum "./inspircd_[VERSION]_amd64.deb"
```

If the hash matches the one specified on the releases page you can proceed to install the package.

```sh
# Replace the filename here with the name of the file you obtained from the releases page.
sudo apt-get install "./inspircd_[VERSION]_amd64.deb"
```

The package should now be installed and you can proceed to set up your [configuration](/4/configuration).

Once you have configured your server you can start it by running `systemctl start inspircd.service` or, if you prefer not to use systemd, by running `inspircd`.

### Where does this package store important files?

Configuration files are stored in `/etc/inspircd`.

Data files are stored in `/var/lib/inspircd`.

Log files are stored in `/var/log/inspircd`.
14 changes: 13 additions & 1 deletion docs/4/installation/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,19 @@ An official InspIRCd Docker image will be available on [Docker Hub](https://hub.

### Packages

The InspIRCd team will provide prebuilt packages for some common platforms when v4 is released. Until that happens you will have to build from source.
The InspIRCd team provide prebuilt packages for some common platforms. If you are using one of these platforms and do not want to install any third party modules it is recommended that you use one of these.

* [CentOS (EL7)](/4/installation/centos)

* [Debian](/4/installation/debian)

* [Rocky Linux (EL8, EL9)](/4/installation/rocky)

* [Ubuntu](/4/installation/ubuntu)

* [Windows](/4/installation/windows)

Some distributions may ship their own InspIRCd packages. Using these is not recommended as they are frequently out of date and do not contain the latest security fixes applied upstream.

### Source

Expand Down
46 changes: 46 additions & 0 deletions docs/4/installation/rocky.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
title: v4 Rocky Linux Installation
---

## Installing InspIRCd 4 using the Rocky Linux package

An official package for Rocky Linux is maintained by the InspIRCd Team. You can download this from [the releases page](https://github.com/inspircd/inspircd/releases/latest).

### What systems are supported by this package?

This package can be installed on all x86-64 systems running Rocky Linux 8 and 9.

### How do I install this package?

First, download the RPM package to your server using Wget. If you do not have Wget installed you can install it using `sudo yum install wget`.

```sh
# Replace the URL here with the URL you obtained from the releases page.
wget "https://github.com/inspircd/inspircd/releases/download/[VERSION]/inspircd-[VERSION].el8.x86_64.rpm"
```

Once the package has downloaded ensure that the file has not been corrupted during download by running `sha256sum` and comparing its output to the hash specified on the releases page.

```sh
# Replace the filename here with the name of the file you obtained from the releases page.
sha256sum "./inspircd-[VERSION].el8.x86_64.rpm"
```

If the hash matches the one specified on the releases page you can proceed to install the package.

```sh
# Replace the filename here with the name of the file you obtained from the releases page.
sudo yum install "./inspircd-[VERSION].el8.x86_64.rpm"
```

The package should now be installed and you can proceed to set up your [configuration](/4/configuration).

Once you have configured your server you can start it by running `systemctl start inspircd.service` or, if you prefer not to use systemd, by running `inspircd`.

### Where does this package store important files?

Configuration files are stored in `/etc/inspircd`.

Data files are stored in `/var/lib/inspircd`.

Log files are stored in `/var/log/inspircd`.
2 changes: 1 addition & 1 deletion docs/4/installation/source.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ A copy of the latest InspIRCd source code will now exist in the `inspircd-[VERSI
To download the most recent code committed to Git you will need to have Git installed. You can install this from your system's package manager. Once you have Git installed you can download the latest source with the following command:

```sh
git clone --branch master "https://github.com/inspircd/inspircd.git"
git clone --branch insp4 "https://github.com/inspircd/inspircd.git"
```

A copy of the latest InspIRCd source code will now exist in the `inspircd` directory.
Expand Down
54 changes: 54 additions & 0 deletions docs/4/installation/ubuntu.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
---
title: v4 Ubuntu Installation
---

## Installing InspIRCd 4 using the Ubuntu package

An official package for Ubuntu is maintained by the InspIRCd Team. You can download this from [the releases page](https://github.com/inspircd/inspircd/releases/latest).

### What systems are supported by this package?

This package can be installed on all x86-64 systems running Ubuntu 20.04 (Focal Fossa), 22.04 (Jammy Jellyfish), and 24.04 (Noble Numbat).

### How do I install this package?

If you've previously installed InspIRCd from the Debian repositories you should start by backing up your config and data directories and removing the existing package.

```sh
cp -r /etc/inspircd conf
cp -r /var/run/inspircd data
sudo apt-get purge inspircd
```

Then, download the .deb package to your server using Wget. If you do not have Wget installed you can install it using `sudo apt-get install wget`.

```sh
# Replace the URL here with the URL you obtained from the releases page.
wget "https://github.com/inspircd/inspircd/releases/download/[VERSION]/inspircd_[VERSION]_amd64.deb"
```

Once the package has downloaded ensure that the file has not been corrupted during download by running `sha256sum` and comparing its output to the hash specified on the releases page.

```sh
# Replace the filename here with the name of the file you obtained from the releases page.
sha256sum "./inspircd_[VERSION]_amd64.deb"
```

If the hash matches the one specified on the releases page you can proceed to install the package.

```sh
# Replace the filename here with the name of the file you obtained from the releases page.
sudo apt-get install "./inspircd_[VERSION]_amd64.deb"
```

The package should now be installed and you can proceed to set up your [configuration](/4/configuration).

Once you have configured your server you can start it by running `systemctl start inspircd.service` or, if you prefer not to use systemd, by running `inspircd`.

### Where does this package store important files?

Configuration files are stored in `/etc/inspircd`.

Data files are stored in `/var/lib/inspircd`.

Log files are stored in `/var/log/inspircd`.
2 changes: 1 addition & 1 deletion docs/4/installation/windows-source.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ A copy of the latest InspIRCd source code will now exist in the `inspircd-[VERSI
To download the most recent code committed to Git you will need to have Git installed. You can install this from [the Git website](https://git-scm.com/download/win). Once you have Git installed you can download the latest source with the following command:
```sh
git clone --branch master "https://github.com/inspircd/inspircd.git"
git clone --branch insp4 "https://github.com/inspircd/inspircd.git"
```
A copy of the latest InspIRCd source code will now exist in the `inspircd` directory.
Expand Down
37 changes: 37 additions & 0 deletions docs/4/installation/windows.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
title: v4 Windows Installation
---

## Installing InspIRCd 4 using the Windows package

An official package for Windows is maintained by the InspIRCd Team. You can download this from [the releases page](https://github.com/inspircd/inspircd/releases/latest).

### What systems are supported by this package?

This package can be installed on all x86-64 systems running Windows 8 or newer.

### How do I install this package?

First, download the package installer. If you have access to a PowerShell terminal you can do this using:

```sh
# Replace the URL here with the URL you obtained from the releases page.
(New-Object System.Net.WebClient).DownloadFile("https://github.com/inspircd/inspircd/releases/download/[VERSION]/InspIRCd-[VERSION].exe", "InspIRCd-[VERSION].exe")
```

Once the package installer has downloaded you can either double click it to install or run the following command:

```sh
# Replace the filename here with the name of the file you obtained from the releases page.
Start-Process ".\InspIRCd-[VERSION].exe"
```

### Where does this package store important files?

By default the package is installed to `C:\Program Files\InspIRCd`. All paths listed below are relative to this base directory.

Configuration files are stored in `.\conf`.

Data files are stored in `.\data`.

Log files are stored in `.\logs`.
Loading

0 comments on commit 374dfad

Please sign in to comment.