diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b825c3820f288ad11084fbfe88e0b1fbb0afa1de..f9d46324531b0902876338b1107955fcb66d43fc 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,43 +1 @@
-
-stages:
-  - test
-  - build_src
-  - build_pkg
-  - upload
-
-run_tests:
-  stage: test
-  image: "ai/test:go"
-  script: "go-test-runner ./..."
-
-build:src:
-  stage: build_src
-  image: "ai/build:base"
-  script: "build-dsc"
-  artifacts:
-    paths:
-      - build-deb/
-  only:
-    - master
-
-build:pkg:
-  stage: build_pkg
-  image: "ai/build:base"
-  script: "build-deb"
-  dependencies:
-    - build:src
-  artifacts:
-    paths:
-      - output-deb/
-  only:
-    - master
-
-upload:pkg:
-  stage: upload
-  image: "ai/pkg:base"
-  script: "upload-packages -r liber urepo@debian.incal.net"
-  dependencies:
-    - build:pkg
-  only:
-    - master
-
+include: "https://git.autistici.org/ai3/build-deb/raw/master/ci-common.yml"
diff --git a/htdocs/static/android-chrome-192x192.png b/htdocs/static/android-chrome-192x192.png
new file mode 100644
index 0000000000000000000000000000000000000000..c08a359eb3d42e59fac6948453cc5d5ca0012182
Binary files /dev/null and b/htdocs/static/android-chrome-192x192.png differ
diff --git a/htdocs/static/android-chrome-512x512.png b/htdocs/static/android-chrome-512x512.png
new file mode 100644
index 0000000000000000000000000000000000000000..eb8ea4fa2541d908685cd342e345fff20fa62e80
Binary files /dev/null and b/htdocs/static/android-chrome-512x512.png differ
diff --git a/htdocs/static/apple-touch-icon.png b/htdocs/static/apple-touch-icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..f7f3a4df4307056ed7c42d8d9ab1b713e19b4d18
Binary files /dev/null and b/htdocs/static/apple-touch-icon.png differ
diff --git a/htdocs/static/favicon-16x16.png b/htdocs/static/favicon-16x16.png
new file mode 100644
index 0000000000000000000000000000000000000000..4c1729ad62e42c3a6859a7c1aae76817e13de1b2
Binary files /dev/null and b/htdocs/static/favicon-16x16.png differ
diff --git a/htdocs/static/favicon-32x32.png b/htdocs/static/favicon-32x32.png
new file mode 100644
index 0000000000000000000000000000000000000000..7665e90c5bc21fc1663af71140906f775fcc4220
Binary files /dev/null and b/htdocs/static/favicon-32x32.png differ
diff --git a/htdocs/static/favicon.ico b/htdocs/static/favicon.ico
index a2674bdb251647545247aabe9f400dca535a00c6..fdf52833f5bed1a0d34ec0664060fe3b650aba2b 100644
Binary files a/htdocs/static/favicon.ico and b/htdocs/static/favicon.ico differ
diff --git a/htdocs/static/site.webmanifest b/htdocs/static/site.webmanifest
new file mode 100644
index 0000000000000000000000000000000000000000..5a4437e0543846a651e7f2ffb9aeb02d617f777c
--- /dev/null
+++ b/htdocs/static/site.webmanifest
@@ -0,0 +1 @@
+{"name":"","short_name":"","icons":[{"src":"/static/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/static/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"}
diff --git a/htdocs/templates/_head.html b/htdocs/templates/_head.html
index e4becdcc448cf147325310605e08bdfe1154a2c3..ee26fca6f3576a678d7063d3662fd063e83dab83 100644
--- a/htdocs/templates/_head.html
+++ b/htdocs/templates/_head.html
@@ -4,9 +4,12 @@
     <title>LIBER</title>
     <meta charset="utf-8" >
     <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="shortcut icon" href="/static/favicon.ico">
+    <link rel="apple-touch-icon" sizes="180x180" href="/static/apple-touch-icon.png">
+    <link rel="icon" type="image/png" sizes="32x32" href="/static/favicon-32x32.png">
+    <link rel="icon" type="image/png" sizes="16x16" href="/static/favicon-16x16.png">
     <link rel="stylesheet" href="/static/css/bootstrap.min.css">
     <link rel="stylesheet" href="/static/css/liber.css">
+    <link rel="manifest" href="/static/site.webmanifest">
     <link rel="search"
           type="application/opensearchdescription+xml" 
           href="/opensearch.xml"