Compare commits
15 Commits
9582ffc4cd
...
5e89609016
Author | SHA1 | Date |
---|---|---|
fox | 5e89609016 | |
kouhai dev | f25edd6dcf | |
Rin | f196b4b9d6 | |
kouhai dev | 36cc31f924 | |
kouhai dev | 0604b7a3f8 | |
kouhai dev | e6544ce4b0 | |
kouhai dev | 4ea85c685e | |
kouhai dev | 99158a0af2 | |
kouhai dev | f8f1966e79 | |
kouhai dev | 19cd42360d | |
fox | 772ba5aac3 | |
Rin | aa24b2d072 | |
Rin | 0cd76aa22a | |
Rin | 06a2259577 | |
Rin | 7bf26a1094 |
34
SETUP.md
34
SETUP.md
|
@ -17,31 +17,29 @@ Mastodon development requires the following:
|
|||
|
||||
### macOS
|
||||
|
||||
First, make sure you have Homebrew installed. Follow the instructions at
|
||||
[brew.sh](https://brew.sh).
|
||||
First, make sure you have Homebrew installed. Follow the instructions at [brew.sh](https://brew.sh).
|
||||
|
||||
Run the following to install all necessary packages:
|
||||
```
|
||||
brew install ruby@3.0 foreman node yarn postgresql redis
|
||||
```
|
||||
|
||||
Ruby 3.0 is **keg-only** by default. Follow the instructions in the **Caveat**
|
||||
to add it to your path.
|
||||
Ruby 3.0 is **keg-only** by default. Follow the instructions in the **Caveat** to add it to your path.
|
||||
|
||||
### Linux
|
||||
|
||||
We will assume that you know how to locate the correct packages for your distro.
|
||||
That said, some distros package `bundler` and `irb` separately. Make sure that
|
||||
you also install these.
|
||||
We will assume that you know how to locate the correct packages for your distro. That said, some distros package `bundler` and `irb` separately. Make sure that you also install these.
|
||||
|
||||
On Arch, you will need:
|
||||
|
||||
- `ruby`
|
||||
- `ruby-bundler`
|
||||
- `ruby-irb`
|
||||
- `ruby-foreman`
|
||||
- `redis`
|
||||
- `postgresql`
|
||||
- `yarn`
|
||||
- `gmp`
|
||||
- `libidn`
|
||||
|
||||
### Windows
|
||||
|
||||
|
@ -80,7 +78,7 @@ mkdir -p data/redis
|
|||
redis-server ./redis-dev.conf
|
||||
|
||||
# [Optional] Stop Redis
|
||||
kill "$(cat ./data/redis/redis-dev.pid)"
|
||||
# kill "$(cat ./data/redis/redis-dev.pid)"
|
||||
```
|
||||
|
||||
## Ruby
|
||||
|
@ -111,11 +109,10 @@ bundle exec rake db:setup
|
|||
## Running Mastodon
|
||||
|
||||
1. Run `export RAILS_ENV=development NODE_ENV=development`.
|
||||
a. Put these in your shell's .rc, or a script you can source if you want to skip this step in the future.
|
||||
- Put these in your shell's .rc, or a script you can source if you want to skip this step in the future.
|
||||
2. Run `bundle exec rake assets:precompile`.
|
||||
a. If this explodes, complaining about `Hash`, you'll need to `export NODE_OPTIONS=--openssl-legacy-provider`.
|
||||
b. After doing this, you will need to run `bundle exec rake assets:clobber` and then re-run
|
||||
`bundle exec rake assets:precompile`.
|
||||
- If this explodes, complaining about `Hash`, you'll need to `export NODE_OPTIONS=--openssl-legacy-provider`.
|
||||
- After doing this, you will need to run `bundle exec rake assets:clobber` and then re-run `bundle exec rake assets:precompile`.
|
||||
3. Run `foreman start`
|
||||
|
||||
# Updates/Troubleshooting
|
||||
|
@ -123,21 +120,24 @@ bundle exec rake db:setup
|
|||
## RubyVM/DebugInspector Issues
|
||||
|
||||
Still unable to fix. Circumvent by removing `better_errors` and `binding_of_caller` from Gemfile.
|
||||
|
||||
Happy to troubleshoot with someone better with Ruby than us >_<'/.
|
||||
|
||||
## Webpack Issues
|
||||
If Webpack compalins about being unable to find some assets or locales:
|
||||
Try:
|
||||
|
||||
If Webpack compalins about being unable to find some assets or locales:
|
||||
|
||||
Try:
|
||||
1. `rm -rf node_modules`
|
||||
2. `yarn install`
|
||||
|
||||
If this doesn't help, try:
|
||||
|
||||
1. `yarn add webpack`
|
||||
2. `git restore package.json yarn.lock`
|
||||
3. `yarn install`
|
||||
|
||||
Then re-run `foreman`. No. We have no idea why this worked.
|
||||
Then re-run `foreman start`. No. We have no idea why this worked.
|
||||
|
||||
# Need Help?
|
||||
|
||||
If the above instructions don't work, please contact @Rin here, or @tammy@social.treehouse.systems.
|
||||
|
|
|
@ -10,17 +10,6 @@ $content-width: 840px;
|
|||
width: 100%;
|
||||
min-height: 100vh;
|
||||
|
||||
|
||||
a {
|
||||
color: $highlight-text-color;
|
||||
|
||||
&:hover,
|
||||
&:active,
|
||||
&:focus {
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
|
||||
.sidebar-wrapper {
|
||||
min-height: 100vh;
|
||||
overflow: hidden;
|
||||
|
@ -1692,6 +1681,15 @@ a.sparkline {
|
|||
box-sizing: border-box;
|
||||
min-height: 100%;
|
||||
|
||||
a {
|
||||
color: $highlight-text-color;
|
||||
text-decoration: none;
|
||||
|
||||
&:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
|
||||
p {
|
||||
margin-bottom: 20px;
|
||||
unicode-bidi: plaintext;
|
||||
|
|
|
@ -1681,6 +1681,15 @@ a.sparkline {
|
|||
box-sizing: border-box;
|
||||
min-height: 100%;
|
||||
|
||||
a {
|
||||
color: $highlight-text-color;
|
||||
text-decoration: none;
|
||||
|
||||
&:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
|
||||
p {
|
||||
margin-bottom: 20px;
|
||||
unicode-bidi: plaintext;
|
||||
|
|
|
@ -10,6 +10,10 @@ POSTGRES_PID_FILE = POSTGRES_DIR / 'postmaster.pid'
|
|||
REDIS_DIR = DATA_DIR / 'redis'
|
||||
REDIS_PID_FILE = REDIS_DIR / 'redis-dev.pid'
|
||||
|
||||
def divider
|
||||
puts '=========='
|
||||
end
|
||||
|
||||
def get_pid(pid_file)
|
||||
return false unless File.file?(pid_file)
|
||||
pid = File.read(pid_file).to_i
|
||||
|
@ -58,9 +62,9 @@ namespace :deps do
|
|||
end
|
||||
|
||||
puts 'Starting postgres...'
|
||||
puts '=========='
|
||||
divider
|
||||
sh %(pg_ctl -D ./data/postgres start)
|
||||
puts '=========='
|
||||
divider
|
||||
end
|
||||
|
||||
task :stop do
|
||||
|
@ -69,9 +73,9 @@ namespace :deps do
|
|||
next
|
||||
end
|
||||
|
||||
puts "Stopping Postgres (pid #{pid})...\n=========="
|
||||
puts "Stopping Postgres (pid #{pid})..."
|
||||
sh %(pg_ctl -D ./data/postgres stop)
|
||||
puts '=========='
|
||||
divider
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -86,9 +90,9 @@ namespace :deps do
|
|||
end
|
||||
|
||||
puts 'Starting redis...'
|
||||
puts '=========='
|
||||
divider
|
||||
sh %(redis-server redis-dev.conf)
|
||||
puts '=========='
|
||||
divider
|
||||
end
|
||||
|
||||
task :stop do
|
||||
|
@ -97,11 +101,9 @@ namespace :deps do
|
|||
next
|
||||
end
|
||||
|
||||
puts "Stopping Redis (pid #{pid})...\n=========="
|
||||
puts "Stopping Redis (pid #{pid})..."
|
||||
divider
|
||||
Process.kill(:TERM, pid)
|
||||
end
|
||||
end
|
||||
|
||||
namespace :memcached do
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue