unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: "pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: sirgazil <sirgazil@zoho.com>, 26302 <26302@debbugs.gnu.org>
Subject: bug#26302: Deploying the i18n’d web site
Date: Thu, 9 Apr 2020 16:57:30 +0200	[thread overview]
Message-ID: <20200409145730.qd2nqg4gxrf4ofzw@pelzflorian.localdomain> (raw)
In-Reply-To: <20200409074550.ecq4ltzvu27o3js3@pelzflorian.localdomain>

[-- Attachment #1: Type: text/plain, Size: 342 bytes --]

On Thu, Apr 09, 2020 at 09:45:50AM +0200, pelzflorian (Florian Pelz) wrote:
> It seems redirects broke like
> 
> http://guix.gnu.org/news/gnu-dmd-01-released.html
> 
> on my test VM. :/

This seems to be fixed by using the attached patch instead.

I have not recreated the berlin test VM yet though, only edited
nginx.conf.

Regards,
Florian

[-- Attachment #2: deploy-i18n-with-redirects.patch --]
[-- Type: text/plain, Size: 16848 bytes --]

diff --git a/hydra/nginx/berlin.scm b/hydra/nginx/berlin.scm
index 303fd35..ff62fec 100644
--- a/hydra/nginx/berlin.scm
+++ b/hydra/nginx/berlin.scm
@@ -195,73 +195,73 @@ PUBLISH-URL."
    ;; What follows is a list of redirects for URLs that used to be
    ;; available at gnu.org/s/guix--e.g.,
    ;; <http://gnu.org/s/guix/news/porting-guix-and-guixsd.html>.
-   (redirect "/news/feed.xml" "/feeds/blog.atom")
-   (redirect "/news/porting-guix-and-guixsd.html" "/blog/2015/porting-guix-and-guixsd")
-   (redirect "/news/gnu-guix-welcomes-three-students-for-gsoc.html" "/blog/2015/gnu-guix-welcomes-three-students-for-gsoc")
-   (redirect "/news/gnu-guix-recruits-for-gsoc.html" "/blog/2015/gnu-guix-recruits-for-gsoc")
-   (redirect "/news/one-week-to-fosdem.html" "/blog/2014/one-week-to-fosdem")
-   (redirect "/news/gnu-dmd-02-released.html" "/blog/2014/gnu-dmd-02-released")
-   (redirect "/news/emacs-as-a-general-purpose-package-manager.html" "/blog/2014/emacs-as-a-general-purpose-package-manager")
-   (redirect "/news/join-gnu-guix-for-gsoc-2017.html" "/blog/2017/join-gnu-guix-for-gsoc-2017")
-   (redirect "/news/gnu-guix-05-released.html" "/blog/2013/gnu-guix-05-released")
-   (redirect "/news/guix-at-the-2014-gnu-hackers-meeting.html" "/blog/2014/guix-at-the-2014-gnu-hackers-meeting")
-   (redirect "/news/state-of-aarch64-on-guix.html" "/blog/2017/state-of-aarch64-on-guix")
-   (redirect "/news/coming-events.html" "/blog/2017/coming-events")
-   (redirect "/news/gnu-dmd-01-released.html" "/blog/2013/gnu-dmd-01-released")
-   (redirect "/news/announcing-guix-hpc.html" "/blog/2017/announcing-guix-hpc")
-   (redirect "/news/gnu-guix-looks-for-gsoc-students.html" "/blog/2014/gnu-guix-looks-for-gsoc-students")
-   (redirect "/news/guix-at-the-european-lisp-symposium.html" "/blog/2013/guix-at-the-european-lisp-symposium")
-   (redirect "/news/gnu-guix-08-released.html" "/blog/2014/gnu-guix-08-released")
-   (redirect "/news/gnu-guix-090-released.html" "/blog/2015/gnu-guix-090-released")
-   (redirect "/news/index.html" "/blog/")
-   (redirect "/news/gnu-guix-welcomes-four-students-for-gsoc.html" "/blog/2016/gnu-guix-welcomes-four-students-for-gsoc")
-   (redirect "/news/gnu-guix-081-released.html" "/blog/2015/gnu-guix-081-released")
-   (redirect "/news/timely-delivery-of-security-updates.html" "/blog/2016/timely-delivery-of-security-updates")
-   (redirect "/news/guix-at-openbio-codefest-2014.html" "/blog/2014/guix-at-openbio-codefest-2014")
-   (redirect "/news/gnu-guix-talk-in-boston-ma-usa-on-january-20th.html" "/blog/2016/gnu-guix-talk-in-boston-ma-usa-on-january-20th")
-   (redirect "/news/gnu-guix-at-fosdem.html" "/blog/2015/gnu-guix-at-fosdem")
-   (redirect "/news/gnu-guix-082-released.html" "/blog/2015/gnu-guix-082-released")
-   (redirect "/news/chris-webber-talks-about-guix-in-chicago-september-30th.html" "/blog/2015/chris-webber-talks-about-guix-in-chicago-september-30th")
-   (redirect "/news/back-from-the-gnu-hackers-meeting.html" "/blog/2013/back-from-the-gnu-hackers-meeting")
-   (redirect "/news/reproducible-build-summit-2nd-edition.html" "/blog/2016/reproducible-build-summit-2nd-edition")
-   (redirect "/news/gnu-guix-talk-in-rennes-france-november-9th.html" "/blog/2015/gnu-guix-talk-in-rennes-france-november-9th")
-   (redirect "/news/gnu-guix-01-released.html" "/blog/2013/gnu-guix-01-released")
-   (redirect "/news/guix-tox-talk-at-pyconfr-october-17th.html" "/blog/2015/guix-tox-talk-at-pyconfr-october-17th")
-   (redirect "/news/gnu-guix-and-guixsd-0.13.0-released.html" "/blog/2017/gnu-guix-and-guixsd-0.13.0-released")
-   (redirect "/news/guix-gets-cross-compilation-support.html" "/blog/2013/guix-gets-cross-compilation-support")
-   (redirect "/news/gnu-guix-06-released.html" "/blog/2014/gnu-guix-06-released")
-   (redirect "/news/meet-guix-at-fosdem.html" "/blog/2016/meet-guix-at-fosdem")
-   (redirect "/news/reproducible-and-user-controlled-software-environments-in-hpc-with-guix.html" "/blog/2015/reproducible-and-user-controlled-software-environments-in-hpc-with-guix")
-   (redirect "/news/container-provisioning-with-guix.html" "/blog/2015/container-provisioning-with-guix")
-   (redirect "/news/guixsd-system-tests.html" "/blog/2016/guixsd-system-tests")
-   (redirect "/news/gnu-guix--guixsd-0100-released.html" "/blog/2016/gnu-guix--guixsd-0100-released")
-   (redirect "/news/gnu-guix-and-guixsd-0110-released.html" "/blog/2016/gnu-guix-and-guixsd-0110-released")
-   (redirect "/news/boot-to-guile.html" "/blog/2013/boot-to-guile")
-   (redirect "/news/gnu-guix-talk-at-opentechsummit-berlin-may-14th.html" "/blog/2015/gnu-guix-talk-at-opentechsummit-berlin-may-14th")
-   (redirect "/news/running-system-services-in-containers.html" "/blog/2017/running-system-services-in-containers")
-   (redirect "/news/growing-our-build-farm.html" "/blog/2016/growing-our-build-farm")
-   (redirect "/news/distro-of-the-linux-based-gnu-system-ported-to-mips.html" "/blog/2013/distro-of-the-linux-based-gnu-system-ported-to-mips")
-   (redirect "/news/guix-at-libreplanet-2016.html" "/blog/2016/guix-at-libreplanet-2016")
-   (redirect "/news/guix--gsoc.html" "/blog/2013/guix--gsoc")
-   (redirect "/news/service-composition-in-guixsd.html" "/blog/2015/service-composition-in-guixsd")
-   (redirect "/news/creating-bundles-with-guix-pack.html" "/blog/2017/creating-bundles-with-guix-pack")
-   (redirect "/news/back-from-the-european-lisp-symposium.html" "/blog/2013/back-from-the-european-lisp-symposium")
-   (redirect "/news/gnu-guix-04-released-happy-birthday-gnu.html" "/blog/2013/gnu-guix-04-released-happy-birthday-gnu")
-   (redirect "/news/reproducible-builds-a-status-update.html" "/blog/2017/reproducible-builds-a-status-update")
-   (redirect "/news/gnu-guix-083-released.html" "/blog/2015/gnu-guix-083-released")
-   (redirect "/news/join-gnu-guix-for-gsoc.html" "/blog/2016/join-gnu-guix-for-gsoc")
-   (redirect "/news/gnu-guix-and-guixsd-0120-released.html" "/blog/2016/gnu-guix-and-guixsd-0120-released")
-   (redirect "/news/meet-guix-at-fosdem-2017.html" "/blog/2017/meet-guix-at-fosdem-2017")
-   (redirect "/news/join-guix-for-an-on-line-hackathon-on-sep-28-29.html" "/blog/2013/join-guix-for-an-on-line-hackathon-on-sep-28-29")
-   (redirect "/news/gnome-in-guixsd.html" "/blog/2016/gnome-in-guixsd")
-   (redirect "/news/introducing-guix-a-package-manager-and-distro-for-gnu.html" "/blog/2012/introducing-guix-a-package-manager-and-distro-for-gnu")
-   (redirect "/news/gnu-guix-03-released.html" "/blog/2013/gnu-guix-03-released")
-   (redirect "/news/gnu-guix-07-released.html" "/blog/2014/gnu-guix-07-released")
-   (redirect "/news/gsoc-update.html" "/blog/2015/gsoc-update")
-   (redirect "/news/gnu-guix-02-released.html" "/blog/2013/gnu-guix-02-released")
-   (redirect "/news/guix-starts-fundraising-campaign-with-support-from-the-fsf.html" "/blog/2015/guix-starts-fundraising-campaign-with-support-from-the-fsf")
-   (redirect "/news/gnu-guix-ported-to-arm-and-other-niceties-of-the-new-year.html" "/blog/2015/gnu-guix-ported-to-arm-and-other-niceties-of-the-new-year")
-   (redirect "/news/reproducible-builds-a-means-to-an-end.html" "/blog/2015/reproducible-builds-a-means-to-an-end")
+   (redirect "/news/feed.xml" "/$lang/feeds/blog.atom")
+   (redirect "/news/porting-guix-and-guixsd.html" "/$lang/blog/2015/porting-guix-and-guixsd")
+   (redirect "/news/gnu-guix-welcomes-three-students-for-gsoc.html" "/$lang/blog/2015/gnu-guix-welcomes-three-students-for-gsoc")
+   (redirect "/news/gnu-guix-recruits-for-gsoc.html" "/$lang/blog/2015/gnu-guix-recruits-for-gsoc")
+   (redirect "/news/one-week-to-fosdem.html" "/$lang/blog/2014/one-week-to-fosdem")
+   (redirect "/news/gnu-dmd-02-released.html" "/$lang/blog/2014/gnu-dmd-02-released")
+   (redirect "/news/emacs-as-a-general-purpose-package-manager.html" "/$lang/blog/2014/emacs-as-a-general-purpose-package-manager")
+   (redirect "/news/join-gnu-guix-for-gsoc-2017.html" "/$lang/blog/2017/join-gnu-guix-for-gsoc-2017")
+   (redirect "/news/gnu-guix-05-released.html" "/$lang/blog/2013/gnu-guix-05-released")
+   (redirect "/news/guix-at-the-2014-gnu-hackers-meeting.html" "/$lang/blog/2014/guix-at-the-2014-gnu-hackers-meeting")
+   (redirect "/news/state-of-aarch64-on-guix.html" "/$lang/blog/2017/state-of-aarch64-on-guix")
+   (redirect "/news/coming-events.html" "/$lang/blog/2017/coming-events")
+   (redirect "/news/gnu-dmd-01-released.html" "/$lang/blog/2013/gnu-dmd-01-released")
+   (redirect "/news/announcing-guix-hpc.html" "/$lang/blog/2017/announcing-guix-hpc")
+   (redirect "/news/gnu-guix-looks-for-gsoc-students.html" "/$lang/blog/2014/gnu-guix-looks-for-gsoc-students")
+   (redirect "/news/guix-at-the-european-lisp-symposium.html" "/$lang/blog/2013/guix-at-the-european-lisp-symposium")
+   (redirect "/news/gnu-guix-08-released.html" "/$lang/blog/2014/gnu-guix-08-released")
+   (redirect "/news/gnu-guix-090-released.html" "/$lang/blog/2015/gnu-guix-090-released")
+   (redirect "/news/index.html" "/$lang/blog/")
+   (redirect "/news/gnu-guix-welcomes-four-students-for-gsoc.html" "/$lang/blog/2016/gnu-guix-welcomes-four-students-for-gsoc")
+   (redirect "/news/gnu-guix-081-released.html" "/$lang/blog/2015/gnu-guix-081-released")
+   (redirect "/news/timely-delivery-of-security-updates.html" "/$lang/blog/2016/timely-delivery-of-security-updates")
+   (redirect "/news/guix-at-openbio-codefest-2014.html" "/$lang/blog/2014/guix-at-openbio-codefest-2014")
+   (redirect "/news/gnu-guix-talk-in-boston-ma-usa-on-january-20th.html" "/$lang/blog/2016/gnu-guix-talk-in-boston-ma-usa-on-january-20th")
+   (redirect "/news/gnu-guix-at-fosdem.html" "/$lang/blog/2015/gnu-guix-at-fosdem")
+   (redirect "/news/gnu-guix-082-released.html" "/$lang/blog/2015/gnu-guix-082-released")
+   (redirect "/news/chris-webber-talks-about-guix-in-chicago-september-30th.html" "/$lang/blog/2015/chris-webber-talks-about-guix-in-chicago-september-30th")
+   (redirect "/news/back-from-the-gnu-hackers-meeting.html" "/$lang/blog/2013/back-from-the-gnu-hackers-meeting")
+   (redirect "/news/reproducible-build-summit-2nd-edition.html" "/$lang/blog/2016/reproducible-build-summit-2nd-edition")
+   (redirect "/news/gnu-guix-talk-in-rennes-france-november-9th.html" "/$lang/blog/2015/gnu-guix-talk-in-rennes-france-november-9th")
+   (redirect "/news/gnu-guix-01-released.html" "/$lang/blog/2013/gnu-guix-01-released")
+   (redirect "/news/guix-tox-talk-at-pyconfr-october-17th.html" "/$lang/blog/2015/guix-tox-talk-at-pyconfr-october-17th")
+   (redirect "/news/gnu-guix-and-guixsd-0.13.0-released.html" "/$lang/blog/2017/gnu-guix-and-guixsd-0.13.0-released")
+   (redirect "/news/guix-gets-cross-compilation-support.html" "/$lang/blog/2013/guix-gets-cross-compilation-support")
+   (redirect "/news/gnu-guix-06-released.html" "/$lang/blog/2014/gnu-guix-06-released")
+   (redirect "/news/meet-guix-at-fosdem.html" "/$lang/blog/2016/meet-guix-at-fosdem")
+   (redirect "/news/reproducible-and-user-controlled-software-environments-in-hpc-with-guix.html" "/$lang/blog/2015/reproducible-and-user-controlled-software-environments-in-hpc-with-guix")
+   (redirect "/news/container-provisioning-with-guix.html" "/$lang/blog/2015/container-provisioning-with-guix")
+   (redirect "/news/guixsd-system-tests.html" "/$lang/blog/2016/guixsd-system-tests")
+   (redirect "/news/gnu-guix--guixsd-0100-released.html" "/$lang/blog/2016/gnu-guix--guixsd-0100-released")
+   (redirect "/news/gnu-guix-and-guixsd-0110-released.html" "/$lang/blog/2016/gnu-guix-and-guixsd-0110-released")
+   (redirect "/news/boot-to-guile.html" "/$lang/blog/2013/boot-to-guile")
+   (redirect "/news/gnu-guix-talk-at-opentechsummit-berlin-may-14th.html" "/$lang/blog/2015/gnu-guix-talk-at-opentechsummit-berlin-may-14th")
+   (redirect "/news/running-system-services-in-containers.html" "/$lang/blog/2017/running-system-services-in-containers")
+   (redirect "/news/growing-our-build-farm.html" "/$lang/blog/2016/growing-our-build-farm")
+   (redirect "/news/distro-of-the-linux-based-gnu-system-ported-to-mips.html" "/$lang/blog/2013/distro-of-the-linux-based-gnu-system-ported-to-mips")
+   (redirect "/news/guix-at-libreplanet-2016.html" "/$lang/blog/2016/guix-at-libreplanet-2016")
+   (redirect "/news/guix--gsoc.html" "/$lang/blog/2013/guix--gsoc")
+   (redirect "/news/service-composition-in-guixsd.html" "/$lang/blog/2015/service-composition-in-guixsd")
+   (redirect "/news/creating-bundles-with-guix-pack.html" "/$lang/blog/2017/creating-bundles-with-guix-pack")
+   (redirect "/news/back-from-the-european-lisp-symposium.html" "/$lang/blog/2013/back-from-the-european-lisp-symposium")
+   (redirect "/news/gnu-guix-04-released-happy-birthday-gnu.html" "/$lang/blog/2013/gnu-guix-04-released-happy-birthday-gnu")
+   (redirect "/news/reproducible-builds-a-status-update.html" "/$lang/blog/2017/reproducible-builds-a-status-update")
+   (redirect "/news/gnu-guix-083-released.html" "/$lang/blog/2015/gnu-guix-083-released")
+   (redirect "/news/join-gnu-guix-for-gsoc.html" "/$lang/blog/2016/join-gnu-guix-for-gsoc")
+   (redirect "/news/gnu-guix-and-guixsd-0120-released.html" "/$lang/blog/2016/gnu-guix-and-guixsd-0120-released")
+   (redirect "/news/meet-guix-at-fosdem-2017.html" "/$lang/blog/2017/meet-guix-at-fosdem-2017")
+   (redirect "/news/join-guix-for-an-on-line-hackathon-on-sep-28-29.html" "/$lang/blog/2013/join-guix-for-an-on-line-hackathon-on-sep-28-29")
+   (redirect "/news/gnome-in-guixsd.html" "/$lang/blog/2016/gnome-in-guixsd")
+   (redirect "/news/introducing-guix-a-package-manager-and-distro-for-gnu.html" "/$lang/blog/2012/introducing-guix-a-package-manager-and-distro-for-gnu")
+   (redirect "/news/gnu-guix-03-released.html" "/$lang/blog/2013/gnu-guix-03-released")
+   (redirect "/news/gnu-guix-07-released.html" "/$lang/blog/2014/gnu-guix-07-released")
+   (redirect "/news/gsoc-update.html" "/$lang/blog/2015/gsoc-update")
+   (redirect "/news/gnu-guix-02-released.html" "/$lang/blog/2013/gnu-guix-02-released")
+   (redirect "/news/guix-starts-fundraising-campaign-with-support-from-the-fsf.html" "/$lang/blog/2015/guix-starts-fundraising-campaign-with-support-from-the-fsf")
+   (redirect "/news/gnu-guix-ported-to-arm-and-other-niceties-of-the-new-year.html" "/$lang/blog/2015/gnu-guix-ported-to-arm-and-other-niceties-of-the-new-year")
+   (redirect "/news/reproducible-builds-a-means-to-an-end.html" "/$lang/blog/2015/reproducible-builds-a-means-to-an-end")
    (redirect "/manual/html_node/Substitutes.html" "../en/html_node/Substitutes.html")
    (redirect "/manual/html_node/GNU-Free-Documentation-License.html" "../en/html_node/GNU-Free-Documentation-License.html")
    (redirect "/manual/html_node/The-Store-Monad.html" "../en/html_node/The-Store-Monad.html")
@@ -468,6 +468,10 @@ PUBLISH-URL."
     (uri "/guix")
     (body (list "root /var/www;")))
 
+   (nginx-location-configuration
+    (uri "~ (.html|.htm)$")
+    (body (list "try_files /$lang/$uri $uri =404;")))
+
    (nginx-location-configuration                  ;certbot
     (uri "/.well-known")
     (body (list "root /var/www;")))))
@@ -514,6 +518,7 @@ PUBLISH-URL."
     (locations guix.gnu.org-locations)
     (raw-content
      (list
+      "rewrite (.*)/$ $1/index.html;"
       "access_log /var/log/nginx/guix-info.access.log;")))
 
    (nginx-server-configuration
@@ -525,6 +530,7 @@ PUBLISH-URL."
      (append
       %tls-settings
       (list
+       "rewrite (.*)/$ $1/index.html;"
        "access_log /var/log/nginx/guix-info.https.access.log;"))))
 
    (nginx-server-configuration
@@ -621,6 +627,7 @@ PUBLISH-URL."
      (append
       %tls-settings
       (list
+       "rewrite (.*)/$ $1/index.html;"
        "access_log /var/log/nginx/guix-info.https.access.log;"))))
 
    (nginx-server-configuration
@@ -634,6 +641,7 @@ PUBLISH-URL."
      (append
       %tls-settings
       (list
+       "rewrite (.*)/$ $1/index.html;"
        "access_log /var/log/nginx/guix-gnu-org.https.access.log;"))))
 
    (nginx-server-configuration
@@ -717,6 +725,8 @@ PUBLISH-URL."
    "default_type  application/octet-stream;"
    "sendfile        on;"
 
+   "set_from_accept_language $lang en de;"
+
    ;; Maximum chunk size to send.  Partly this is a workaround for
    ;; <http://bugs.gnu.org/19939>, but also the nginx docs mention that
    ;; "Without the limit, one fast connection may seize the worker
@@ -775,6 +785,11 @@ PUBLISH-URL."
 (define %nginx-configuration
   (nginx-configuration
    (server-blocks %berlin-servers)
+   (modules
+    (list
+     ;; Module to redirect users to the localized pages of their choice.
+     (file-append nginx-accept-language-module
+                  "/etc/nginx/modules/ngx_http_accept_language_module.so")))
    (global-directives
     ;; This is a 72-core machine, but let's not use all of them for nginx.
     '((worker_processes . 16)

  reply	other threads:[~2020-04-09 14:58 UTC|newest]

Thread overview: 95+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-29 15:40 bug#26302: [website] translations ng0
2017-03-29 16:13 ` ng0
2017-04-15 12:00   ` ng0
2017-04-15 12:26     ` ng0
2017-07-31 21:11 ` Ludovic Courtès
2017-07-31 21:54   ` ng0
2019-09-06 14:25     ` pelzflorian (Florian Pelz)
2019-09-06 14:42       ` pelzflorian (Florian Pelz)
2019-09-08 19:44       ` Ludovic Courtès
2019-09-08 20:46         ` pelzflorian (Florian Pelz)
2019-09-18 13:57       ` Ludovic Courtès
2019-09-19  7:48         ` pelzflorian (Florian Pelz)
2019-09-19 11:42           ` bug#26302: Adding Florian as a committer Ludovic Courtès
2019-09-19 11:50           ` bug#26302: [website] translations Ludovic Courtès
2019-09-19 22:08             ` pelzflorian (Florian Pelz)
2019-10-22 12:10             ` Ludovic Courtès
2019-10-22 12:28               ` pelzflorian (Florian Pelz)
2019-10-22 12:41                 ` pelzflorian (Florian Pelz)
2019-10-23 14:16                   ` Ludovic Courtès
2019-10-23 14:41                     ` pelzflorian (Florian Pelz)
2019-10-22 13:01                 ` pelzflorian (Florian Pelz)
2019-10-31 20:19                 ` pelzflorian (Florian Pelz)
2019-11-01 14:58                   ` Ludovic Courtès
2019-09-06 18:17 ` sirgazil via Bug reports for GNU Guix
2019-09-08 17:16   ` pelzflorian (Florian Pelz)
2019-09-10  0:49     ` sirgazil via Bug reports for GNU Guix
2019-09-15 20:18       ` pelzflorian (Florian Pelz)
2019-09-18 13:00         ` pelzflorian (Florian Pelz)
2019-10-07  8:15         ` pelzflorian (Florian Pelz)
2019-10-08  9:37           ` pelzflorian (Florian Pelz)
2019-11-08  9:02             ` pelzflorian (Florian Pelz)
2019-11-08 14:01               ` sirgazil via Bug reports for GNU Guix
2019-11-08 16:18                 ` pelzflorian (Florian Pelz)
2019-11-08 16:20                   ` pelzflorian (Florian Pelz)
2019-11-08 17:13                   ` pelzflorian (Florian Pelz)
2019-11-08 18:39                     ` sirgazil via Bug reports for GNU Guix
2019-11-17 16:17             ` pelzflorian (Florian Pelz)
2019-12-02  8:57               ` pelzflorian (Florian Pelz)
2020-03-25 17:33               ` bug#26302: Deploying the i18n’d web site Ludovic Courtès
2020-03-25 23:21                 ` pelzflorian (Florian Pelz)
2020-03-26  1:24                   ` pelzflorian (Florian Pelz)
2020-04-07 21:18                   ` Ludovic Courtès
2020-04-07 22:02                     ` pelzflorian (Florian Pelz)
2020-04-09  3:21                       ` pelzflorian (Florian Pelz)
2020-04-09  7:45                         ` pelzflorian (Florian Pelz)
2020-04-09 14:57                           ` pelzflorian (Florian Pelz) [this message]
2020-04-09 15:27                             ` Ludovic Courtès
2020-04-09 17:31                               ` pelzflorian (Florian Pelz)
2020-04-09 18:58                                 ` Bengt Richter
2020-04-09 19:17                                   ` pelzflorian (Florian Pelz)
2020-07-01 20:11                                     ` Christopher Baines
2020-07-05  9:08                                 ` pelzflorian (Florian Pelz)
2020-07-09 13:09                                   ` Ludovic Courtès
2020-07-09 14:48                                     ` pelzflorian (Florian Pelz)
2020-07-10 17:28                                       ` pelzflorian (Florian Pelz)
2020-07-12  6:26                                         ` pelzflorian (Florian Pelz)
2020-07-26 17:46                                           ` bug#26302: Multilingual web site is on-line! Ludovic Courtès
2020-07-26 18:57                                             ` pelzflorian (Florian Pelz)
2020-07-27 16:01                                               ` pelzflorian (Florian Pelz)
2020-07-28 21:50                                                 ` Ludovic Courtès
2020-07-29  1:21                                                   ` Julien Lepiller
2020-07-29 13:56                                                     ` pelzflorian (Florian Pelz)
2020-08-03 14:53                                                       ` Ludovic Courtès
2020-08-21  0:14                                                         ` pelzflorian (Florian Pelz)
2020-08-21  0:41                                                           ` Julien Lepiller
2020-08-21  7:51                                                             ` pelzflorian (Florian Pelz)
2020-07-29 19:21                                                   ` pelzflorian (Florian Pelz)
2020-07-31 14:45                                                     ` Ludovic Courtès
2020-08-04 15:37                                                       ` pelzflorian (Florian Pelz)
2020-08-23 15:55                                                         ` Ludovic Courtès
2020-08-24 12:47                                                           ` pelzflorian (Florian Pelz)
2020-08-24 14:05                                                             ` Ludovic Courtès
2020-07-27  1:54                                             ` Dmitry Alexandrov
2020-07-27 11:28                                               ` pelzflorian (Florian Pelz)
2020-07-27 20:20                                                 ` pelzflorian (Florian Pelz)
2020-07-09 16:56                                   ` bug#26302: Deploying the i18n’d web site Christopher Baines
2020-07-10 17:31                                     ` pelzflorian (Florian Pelz)
2020-07-13 13:22                                       ` Ludovic Courtès
2020-07-13 14:48                                         ` pelzflorian (Florian Pelz)
2020-07-13 16:32                                           ` pelzflorian (Florian Pelz)
2019-11-01 14:54           ` bug#26302: [website] translations Ludovic Courtès
2019-11-02 13:15             ` pelzflorian (Florian Pelz)
2019-11-04 17:19               ` Ludovic Courtès
2019-11-05  7:31                 ` pelzflorian (Florian Pelz)
2019-11-05 11:11                   ` pelzflorian (Florian Pelz)
2019-11-06 14:56                     ` Ludovic Courtès
2019-11-06 18:30                       ` pelzflorian (Florian Pelz)
2019-11-07 20:24                         ` Ludovic Courtès
2019-11-06 14:49                   ` Ludovic Courtès
2019-11-06 18:21                     ` pelzflorian (Florian Pelz)
2020-07-26 17:52 ` Vagrant Cascadian
2020-07-27 11:20   ` pelzflorian (Florian Pelz)
2020-07-28  9:44 ` bug#26302: Fwd: website translation English (US)? pelzflorian (Florian Pelz)
2020-07-28 10:03   ` zimoun
2020-07-28 16:02   ` pelzflorian (Florian Pelz)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200409145730.qd2nqg4gxrf4ofzw@pelzflorian.localdomain \
    --to=pelzflorian@pelzflorian.de \
    --cc=26302@debbugs.gnu.org \
    --cc=ludo@gnu.org \
    --cc=sirgazil@zoho.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).