Generate conduit.toml instead of debian environment file
Only generate this file once. I am not sure what to do with future upgrades yet.
This commit is contained in:
		
							parent
							
								
									ab58609d3d
								
							
						
					
					
						commit
						5bf43a4d7e
					
				
					 5 changed files with 57 additions and 48 deletions
				
			
		|  | @ -103,7 +103,7 @@ assets = [ | |||
|   ["target/release/conduit", "usr/sbin/matrix-conduit", "755"], | ||||
| ] | ||||
| conf-files = [ | ||||
|   "/etc/matrix-conduit/local" | ||||
|   "/etc/matrix-conduit/conduit.toml" | ||||
| ] | ||||
| maintainer-scripts = "debian/" | ||||
| systemd-units = { unit-name = "matrix-conduit" } | ||||
|  |  | |||
|  | @ -11,7 +11,7 @@ | |||
| # YOU NEED TO EDIT THIS | ||||
| #server_name = "your.server.name" | ||||
| 
 | ||||
| # This is the only directly where Conduit will save its data | ||||
| # This is the only directory where Conduit will save its data | ||||
| database_path = "/var/lib/conduit/conduit.db" | ||||
| 
 | ||||
| # The port Conduit will be running on. You need to set up a reverse proxy in | ||||
|  |  | |||
							
								
								
									
										12
									
								
								debian/README.Debian
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										12
									
								
								debian/README.Debian
									
									
									
									
										vendored
									
									
								
							|  | @ -4,19 +4,19 @@ Conduit for Debian | |||
| Configuration | ||||
| ------------- | ||||
| 
 | ||||
| When installed, Debconf handles the configuration of the homeserver (host)name, | ||||
| the address and port it listens on. These configuration variables end up in | ||||
| /etc/matrix-conduit/debian. | ||||
| When installed, Debconf generates the configuration of the homeserver | ||||
| (host)name, the address and port it listens on. This configuration ends up in | ||||
| /etc/matrix-conduit/conduit.toml. | ||||
| 
 | ||||
| You can tweak more detailed settings by uncommenting and setting the variables | ||||
| in /etc/matrix-conduit/local. This involves settings such as the maximum file | ||||
| size for download/upload, enabling federation, etc. | ||||
| in /etc/matrix-conduit/conduit.toml. This involves settings such as the maximum | ||||
| file size for download/upload, enabling federation, etc. | ||||
| 
 | ||||
| Running | ||||
| ------- | ||||
| 
 | ||||
| The package uses the matrix-conduit.service systemd unit file to start and | ||||
| stop Conduit. It loads the configuration files mentioned above to set up the | ||||
| stop Conduit. It loads the configuration file mentioned above to set up the | ||||
| environment before running the server. | ||||
| 
 | ||||
| This package assumes by default that Conduit is placed behind a reverse proxy | ||||
|  |  | |||
							
								
								
									
										5
									
								
								debian/matrix-conduit.service
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								debian/matrix-conduit.service
									
									
									
									
										vendored
									
									
								
							|  | @ -34,10 +34,7 @@ SystemCallFilter=@system-service | |||
| SystemCallErrorNumber=EPERM | ||||
| StateDirectory=matrix-conduit | ||||
| 
 | ||||
| Environment="ROCKET_ENV=production" | ||||
| Environment="ROCKET_DATABASE_PATH=/var/lib/matrix-conduit" | ||||
| EnvironmentFile=/etc/matrix-conduit/debian | ||||
| EnvironmentFile=/etc/matrix-conduit/local | ||||
| Environment="CONDUIT_CONFIG=/etc/matrix-conduit/conduit.toml" | ||||
| 
 | ||||
| ExecStart=/usr/sbin/matrix-conduit | ||||
| Restart=on-failure | ||||
|  |  | |||
							
								
								
									
										74
									
								
								debian/postinst
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										74
									
								
								debian/postinst
									
									
									
									
										vendored
									
									
								
							|  | @ -4,7 +4,7 @@ set -e | |||
| . /usr/share/debconf/confmodule | ||||
| 
 | ||||
| CONDUIT_CONFIG_PATH=/etc/matrix-conduit | ||||
| CONDUIT_CONFIG_FILE="$CONDUIT_CONFIG_PATH/debian" | ||||
| CONDUIT_CONFIG_FILE="${CONDUIT_CONFIG_PATH}/conduit.toml" | ||||
| CONDUIT_DATABASE_PATH=/var/lib/matrix-conduit | ||||
| 
 | ||||
| case "$1" in | ||||
|  | @ -25,48 +25,60 @@ case "$1" in | |||
|       chown _matrix-conduit "$CONDUIT_DATABASE_PATH" | ||||
|     fi | ||||
| 
 | ||||
|     if [ ! -e "$CONDUIT_CONFIG_FILE" ]; then | ||||
|       # Write the debconf values in the config. | ||||
|       db_get matrix-conduit/hostname | ||||
|     ROCKET_SERVER_NAME="$RET" | ||||
|       CONDUIT_SERVER_NAME="$RET" | ||||
|       db_get matrix-conduit/address | ||||
|     ROCKET_ADDRESS="$RET" | ||||
|       CONDUIT_ADDRESS="$RET" | ||||
|       db_get matrix-conduit/port | ||||
|     ROCKET_PORT="$RET" | ||||
|       CONDUIT_PORT="$RET" | ||||
|       mkdir -p "$CONDUIT_CONFIG_PATH" | ||||
|       cat > "$CONDUIT_CONFIG_FILE" << EOF | ||||
| # Conduit homeserver Debian configuration | ||||
| # | ||||
| # Conduit is an application based on the Rocket web framework. | ||||
| # Configuration of Conduit happens via Debconf (of which the resulting config | ||||
| # is in this file) and optionally by uncommenting and tweaking the variables in | ||||
| # /etc/matrix-conduit/local. | ||||
| [global] | ||||
| # The server_name is the name of this server. It is used as a suffix for user | ||||
| # and room ids. Examples: matrix.org, conduit.rs | ||||
| # The Conduit server needs to be reachable at https://your.server.name/ on port | ||||
| # 443 (client-server) and 8448 (federation) OR you can create /.well-known | ||||
| # files to redirect requests. See | ||||
| # https://matrix.org/docs/spec/client_server/latest#get-well-known-matrix-client | ||||
| # and https://matrix.org/docs/spec/server_server/r0.1.4#get-well-known-matrix-server | ||||
| # for more information. | ||||
| server_name = "${CONDUIT_SERVER_NAME}" | ||||
| 
 | ||||
| # THIS FILE IS GENERATED BY DEBCONF AND WILL BE OVERRIDDEN! | ||||
| # | ||||
| # Please make changes by running: | ||||
| # | ||||
| # \$ dpkg-reconfigure matrix-conduit | ||||
| # | ||||
| # or by providing overriding changes in /etc/matrix-conduit/local. | ||||
| # This is the only directory where Conduit will save its data. | ||||
| database_path = "${CONDUIT_DATABASE_PATH}" | ||||
| 
 | ||||
| # The server (host)name of the Matrix homeserver. | ||||
| # | ||||
| # This is the hostname the homeserver will be reachable at via a client. | ||||
| ROCKET_SERVER_NAME="$ROCKET_SERVER_NAME" | ||||
| 
 | ||||
| # The address the Matrix homeserver listens on. | ||||
| # | ||||
| # The address Conduit will be listening on. | ||||
| # By default the server listens on address 0.0.0.0. Change this to 127.0.0.1 to | ||||
| # only listen on the localhost when using a reverse proxy. | ||||
| ROCKET_ADDRESS="$ROCKET_ADDRESS" | ||||
| address = "${CONDUIT_ADDRESS}" | ||||
| 
 | ||||
| # The port of the Matrix homeserver. | ||||
| # | ||||
| # This port is could be any available port if accessed by a reverse proxy. | ||||
| # By default the server listens on port 8000. | ||||
| ROCKET_PORT="$ROCKET_PORT" | ||||
| # The port Conduit will be running on. You need to set up a reverse proxy in | ||||
| # your web server (e.g. apache or nginx), so all requests to /_matrix on port | ||||
| # 443 and 8448 will be forwarded to the Conduit instance running on this port. | ||||
| port = ${CONDUIT_PORT} | ||||
| 
 | ||||
| # THIS FILE IS GENERATED BY DEBCONF AND WILL BE OVERRIDDEN! | ||||
| # Max size for uploads | ||||
| max_request_size = 20_000_000 # in bytes | ||||
| 
 | ||||
| # Disable registration. No new users will be able to register on this server. | ||||
| #allow_registration = false | ||||
| 
 | ||||
| # Disable encryption, so no new encrypted rooms can be created. | ||||
| # Note: Existing rooms will continue to work. | ||||
| #allow_encryption = false | ||||
| #allow_federation = false | ||||
| 
 | ||||
| # Enable jaeger to support monitoring and troubleshooting through jaeger. | ||||
| #allow_jaeger = false | ||||
| 
 | ||||
| #cache_capacity = 1073741824 # in bytes, 1024 * 1024 * 1024 | ||||
| #max_concurrent_requests = 4 # How many requests Conduit sends to other servers at the same time | ||||
| #log = "info,state_res=warn,rocket=off,_=off,sled=off" | ||||
| #workers = 4 # default: cpu core count * 2 | ||||
| EOF | ||||
|     fi | ||||
|     ;; | ||||
| esac | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue