summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOmar Roth <omarroth@protonmail.com>2019-10-28 10:46:59 -0400
committerOmar Roth <omarroth@protonmail.com>2019-10-28 10:49:05 -0400
commit0f3c477ff34238733417357ab11f6a4dfb8db28f (patch)
tree83fb26cfaf51aa7856d829a703147560e74931c7
parent039cc30c07fa457850cd820e9e01b3afdf8920dc (diff)
downloadinvidious-0f3c477ff34238733417357ab11f6a4dfb8db28f.tar.gz
invidious-0f3c477ff34238733417357ab11f6a4dfb8db28f.tar.bz2
invidious-0f3c477ff34238733417357ab11f6a4dfb8db28f.zip
Remove dependency on ImageMagick (replace with rsvg-convert)
-rw-r--r--README.md6
-rw-r--r--docker/Dockerfile2
-rw-r--r--src/invidious/users.cr4
-rw-r--r--src/invidious/views/login.ecr2
4 files changed, 7 insertions, 7 deletions
diff --git a/README.md b/README.md
index 1041b879..f90518a2 100644
--- a/README.md
+++ b/README.md
@@ -79,7 +79,7 @@ $ docker-compose build
```bash
# Arch Linux
-$ sudo pacman -S shards crystal imagemagick librsvg postgresql
+$ sudo pacman -S shards crystal librsvg postgresql
# Ubuntu or Debian
# First you have to add the repository to your APT configuration. For easy setup just run in your command line:
@@ -88,7 +88,7 @@ $ curl -sSL https://dist.crystal-lang.org/apt/setup.sh | sudo bash
$ curl -sL "https://keybase.io/crystal/pgp_keys.asc" | sudo apt-key add -
$ echo "deb https://dist.crystal-lang.org/apt crystal main" | sudo tee /etc/apt/sources.list.d/crystal.list
$ sudo apt-get update
-$ sudo apt install crystal libssl-dev libxml2-dev libyaml-dev libgmp-dev libreadline-dev librsvg2-dev postgresql imagemagick libsqlite3-dev
+$ sudo apt install crystal libssl-dev libxml2-dev libyaml-dev libgmp-dev libreadline-dev postgresql librsvg2-bin libsqlite3-dev
```
#### Add invidious user and clone repository
@@ -143,7 +143,7 @@ $ sudo systemctl start invidious.service
```bash
# Install dependencies
$ brew update
-$ brew install shards crystal-lang postgres imagemagick librsvg
+$ brew install shards crystal postgres imagemagick librsvg
# Clone repository and setup postgres database
$ git clone https://github.com/omarroth/invidious
diff --git a/docker/Dockerfile b/docker/Dockerfile
index d37cb049..e83bbfa5 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -15,7 +15,7 @@ RUN crystal build --static --release --warnings all --error-on-warnings \
./src/invidious.cr
FROM alpine:latest
-RUN apk add --no-cache imagemagick ttf-opensans
+RUN apk add --no-cache librsvg ttf-opensans
WORKDIR /invidious
RUN addgroup -g 1000 -S invidious && \
adduser -u 1000 -S invidious -G invidious
diff --git a/src/invidious/users.cr b/src/invidious/users.cr
index 4a3dba0a..afb100f2 100644
--- a/src/invidious/users.cr
+++ b/src/invidious/users.cr
@@ -195,7 +195,7 @@ def generate_captcha(key, db)
end
clock_svg = <<-END_SVG
- <svg viewBox="0 0 100 100" width="200px">
+ <svg viewBox="0 0 100 100" width="200px" height="200px">
<circle cx="50" cy="50" r="45" fill="#eee" stroke="black" stroke-width="2"></circle>
<text x="69" y="20.091" text-anchor="middle" fill="black" font-family="Arial" font-size="10px"> 1</text>
@@ -219,7 +219,7 @@ def generate_captcha(key, db)
END_SVG
image = ""
- convert = Process.run(%(convert -density 1200 -resize 400x400 -background none svg:- png:-), shell: true,
+ convert = Process.run(%(rsvg-convert -w 400 -h 400 -b none -f png), shell: true,
input: IO::Memory.new(clock_svg), output: Process::Redirect::Pipe) do |proc|
image = proc.output.gets_to_end
image = Base64.strict_encode(image)
diff --git a/src/invidious/views/login.ecr b/src/invidious/views/login.ecr
index 4b5c7e6d..59fa90e5 100644
--- a/src/invidious/views/login.ecr
+++ b/src/invidious/views/login.ecr
@@ -43,7 +43,7 @@
<% case captcha_type when %>
<% when "image" %>
<% captcha = captcha.not_nil! %>
- <img style="width:100%" src='<%= captcha[:question] %>'/>
+ <img style="width:50%" src='<%= captcha[:question] %>'/>
<% captcha[:tokens].each_with_index do |token, i| %>
<input type="hidden" name="token[<%= i %>]" value="<%= URI.encode_www_form(token) %>">
<% end %>