forked from e621ng/e621ng
and by rebranding i mean just renaming the project.
dont see a need to change anything code-wise
This commit is contained in:
parent
f4a02a7690
commit
7b8a85420d
38
INSTALL.md
38
INSTALL.md
@ -1,4 +1,6 @@
|
||||
# Installation
|
||||
**Although the fork is now called eBooru, everything code-wise is still the same and will continue to use e621 instead of eBooru**
|
||||
|
||||
The first step you will need to take is to install the following packages:
|
||||
```
|
||||
# pkg_add postgresql-server postgresql-contrib
|
||||
@ -14,12 +16,12 @@ The first step you will need to take is to install the following packages:
|
||||
You can find the iqdb and autocompleted packages here:
|
||||
https://git.groovyexpress.com/edshot99/OpenBSD-Unofficial-Ports/releases
|
||||
|
||||
You will also want to install libgit2 and libvips from this page too as an older version of libgit2 is required for the Ruby rugged gem and libvips with ICC support is required for e621ng.
|
||||
You will also want to install libgit2 and libvips from this page too as an older version of libgit2 is required for the Ruby rugged gem and libvips with ICC support is required for eBooru.
|
||||
|
||||
## PostgreSQL
|
||||
You can follow the guide at /usr/local/share/doc/pkg-readmes/postgresql on setting up PostgreSQL.
|
||||
|
||||
Once you have PostgreSQL set up you can set up the e621 account as follows:
|
||||
Once you have PostgreSQL set up you can set up the database account as follows:
|
||||
```
|
||||
CREATE ROLE e621 WITH CREATEDB LOGIN PASSWORD 'XXX';
|
||||
```
|
||||
@ -27,7 +29,7 @@ CREATE ROLE e621 WITH CREATEDB LOGIN PASSWORD 'XXX';
|
||||
## OpenSearch
|
||||
You can follow the guide at /usr/local/share/doc/pkg-readmes/opensearch on tuning your system for OpenSearch.
|
||||
|
||||
Don't follow the 'Initial Node/Cluster Configuration' section. e621ng will not be needing the OpenSearch security plugin.
|
||||
Don't follow the 'Initial Node/Cluster Configuration' section. eBooru will not be needing the OpenSearch security plugin.
|
||||
|
||||
Once finished tuning your system you can then edit your /etc/opensearch/opensearch.yml configuration to something like this:
|
||||
```
|
||||
@ -48,7 +50,8 @@ and then enable and start the OpenSearch daemon:
|
||||
## Nginx
|
||||
You can follow the guide at /usr/local/share/doc/pkg-readmes/nginx on setting up log rotation for nginx.
|
||||
|
||||
Afterwards you can copy the example nginx configuration file from 'docker/nginx.conf.example' in this repository to /etc/nginx/
|
||||
Afterwards you can copy the example nginx configuration file from (docker/nginx.conf.example)[docker/nginx.conf.example] in this repository to /etc/nginx/
|
||||
|
||||
Once copied you can set the file permissions to 600 to prevent wheel and world group users from seeing the HMAC secrets and then modify the file to your needs.
|
||||
|
||||
You will also want to copy the example acme-client.conf configuration file from /etc/examples/ to /etc/ and modify it to your needs.
|
||||
@ -60,7 +63,7 @@ Once configuration is complete you can then enable nginx, start nginx, and reque
|
||||
# acme-client -v my-domain-name.net
|
||||
```
|
||||
|
||||
Note: You will need to temporarily disable ssl_* options in your nginx file so nginx can start properly.
|
||||
*You will need to temporarily disable ssl_* options in your nginx file so nginx can start properly when initially requesting a certificate.*
|
||||
|
||||
## Redis / memcached / iqdb / autocompleted
|
||||
Only autocompleted needs configuring which can be done with the /etc/autocompleted.env file.
|
||||
@ -73,7 +76,7 @@ Once configured you can then enable and start all these daemons:
|
||||
|
||||
By default the iqdb database is stored at /var/db/iqdb/e621_v2.db and can be configured by setting daemon flags.
|
||||
|
||||
## e621ng - Part One - System Account
|
||||
## eBooru - Part One - System Account
|
||||
You can start by creating a dedicated user for running the software:
|
||||
```
|
||||
# useradd -m -c "e621ng booru software" -d /var/e621ng -k /dev/null -L e621ng -s /sbin/nologin e621ng
|
||||
@ -86,7 +89,7 @@ Increasing the user limits:
|
||||
# vi /etc/login.conf.d/e621ng
|
||||
```
|
||||
|
||||
and editing the file with vi (or some other editor) to something like this:
|
||||
and editing the file with vi (or some other editor like mg) to something like this:
|
||||
```
|
||||
e621ng:\
|
||||
:datasize-max=8192M:\
|
||||
@ -102,27 +105,27 @@ and lastly setting up the folder for e621ng to store the data at:
|
||||
|
||||
This is necessary because nginx runs in a chroot and won't be able to access any files outside of /var/www
|
||||
|
||||
## e621ng - Part Two - Software
|
||||
## eBooru - Part Two - Software
|
||||
Log in to the e621ng user:
|
||||
```
|
||||
$ doas su -l -s /bin/ksh e621ng
|
||||
$ whoami
|
||||
```
|
||||
(This can also be done without 'doas' if you do not have it set-up)
|
||||
*This can also be done without 'doas' if you do not have it set-up*
|
||||
|
||||
Clone the repository and install the necessary packages:
|
||||
```
|
||||
$ git clone https://git.groovyexpress.com/edshot99/e621ng.git
|
||||
$ git clone https://git.groovyexpress.com/edshot99/eBooru.git e621ng
|
||||
$ cd e621ng
|
||||
$ bundle config set path ~/.local/share/gem
|
||||
$ bundle install
|
||||
$ gem install -v 1.16.4 nokogiri -- --use-system-libraries
|
||||
$ gem install libgit2 -- --use-system-libraries
|
||||
$ gem install -v 1.7.2 rugged -- --use-system-libraries
|
||||
$ gem install foreman
|
||||
$ yarn install
|
||||
```
|
||||
|
||||
## e621ng - Part Three - Configuring
|
||||
## eBooru - Part Three - Configuring
|
||||
Create the .danbooru folder which will be used to store site specific configuration:
|
||||
```
|
||||
$ cd ~/
|
||||
@ -136,6 +139,7 @@ $ chmod 640 .danbooru/danbooru_local_config.rb
|
||||
```
|
||||
|
||||
You can then edit content_security_policy.rb and danbooru_local_config.rb to your needs.
|
||||
|
||||
The .danbooru/secret_token and .danbooru/session_secret_key don't necessarily have to be files and can be stored in the .env file, but I just prefer to do it this way.
|
||||
|
||||
Once you have finished configuration you can then set up the .env file which is needed for Rails production mode:
|
||||
@ -155,9 +159,9 @@ DB_WORKER_POOL_SIZE=10
|
||||
DB_POOL_SIZE=10
|
||||
```
|
||||
|
||||
Note: If you are planning to do development you do not have to set up a .env file and will have to modify config/databases.yml instead.
|
||||
*If you are planning to do development you do not have to set up a .env file and will have to modify config/databases.yml instead.*
|
||||
|
||||
## e621ng - Part Four - Starting
|
||||
## eBooru - Part Four - Starting
|
||||
Load the configuration files into the e621ng folder:
|
||||
```
|
||||
$ cd e621ng
|
||||
@ -168,9 +172,9 @@ $ ln -sf /var/e621ng/.danbooru/content_security_policy.rb config/initializers/co
|
||||
|
||||
Modify the db/seeds.rb file to modify the admin account name and password and the auto_moderator account password.
|
||||
|
||||
You can also modify what forum categories are created and disable default e621 mascot and whitelist creation.
|
||||
You can also modify what forum categories are created and disable default the e621 mascot and whitelist creation.
|
||||
|
||||
Once this is done you can then initialize the OpenSearch indices, the e621 PostgreSQL database, the webpack and then start the software:
|
||||
Once this is done you can then initialize the OpenSearch indices, the PostgreSQL database, the webpack and then start the software:
|
||||
```
|
||||
$ RAILS_ENV=production ./bin/rails runner '[Post, PostVersion].each { |model| model.document_store.create_index! }'
|
||||
$ RAILS_ENV=production ./bin/rails db:create
|
||||
@ -182,7 +186,7 @@ $ ./node_modules/.bin/webpack -c config/webpack/production.js
|
||||
$ ~/.local/share/gem/ruby/3.3/bin/foreman33 start
|
||||
```
|
||||
|
||||
Note: Running webpack is not requried when running in developemnt mode.
|
||||
*Running webpack is not requried when running in developemnt mode.*
|
||||
|
||||
You should now be able to access the website through nginx now.
|
||||
If everything is working you can also do a 'git restore db/seeds.rb' file to restore the original file.
|
||||
|
10
README.md
10
README.md
@ -1,17 +1,11 @@
|
||||
## eBooru
|
||||
Ruby on Rails booru fork.
|
||||
Ruby on Rails e621ng booru fork.
|
||||
|
||||
The goal of this fork is to be a more generalized non-website specific booru with a different look focusing on videos.
|
||||
|
||||
## Installation
|
||||
See [INSTALL.md](INSTALL.md) on how to install eBooru on OpenBSD.
|
||||
|
||||
It could be possible to install this fork using Docker, but it is untested. [Docker Installation](https://git.groovyexpress.com/e621ng/e621ng/src/branch/master/README.md)
|
||||
|
||||
|
||||
## License
|
||||
BSD-2 Licensed. See [LICENSE](LICENSE).
|
||||
|
||||
|
||||
## Security
|
||||
See [SECURITY.md](SECURITY.md).
|
||||
|
||||
|
@ -1,8 +0,0 @@
|
||||
## Reporting a Vulnerability
|
||||
|
||||
If you believe you have found a security vulnerability, please report it to us responsibly. Don't announce it in public places like GitHub issues or the forum. You can get in contact with us by:
|
||||
|
||||
* writing an email to bugs@e621.net (preferred)
|
||||
* creating a vulnerability report on the e621ng repository ([link](https://github.com/e621ng/e621ng/security/advisories/new))
|
||||
|
||||
Don't report through on-site DMails or Discord DMs, the two options above ensure that multiple people are notified. Include as much information as you can to help us understand the issue.
|
@ -13,7 +13,7 @@ module Danbooru
|
||||
end
|
||||
|
||||
def software_name
|
||||
"e621ng"
|
||||
"eBooru"
|
||||
end
|
||||
|
||||
def description
|
||||
|
Loading…
Reference in New Issue
Block a user