WIP: Remove blobs and split website in another repository #186

Closed
rarias wants to merge 458 commits from remove-website into old-master
Owner

This PR REWRITES THE HISTORY to remove big blob files (PDFs) as well as the website. The idea is to keep this repository small, so we reduce the time to copy it to the store in each evaluation.

Fixes #171

Move the website to another repo: https://jungle.bsc.es/git/rarias/jungle-website

There are two kernel config files which are the largest files now. As they don't seem to be used, maybe we can also get rid of them? @arocanon :

apex% git ls-tree -r --long HEAD | sort -k 4 -n -r | head -20
100644 blob d260acc903aba42a871a67d46ce3e35d27931963  252089    m/eudy/kernel/configs/lockdep
100644 blob 20bdc2b94be6dbfe267e1cca6057c3c394b8f615  251927    m/eudy/kernel/configs/defconfig
100644 blob 815500b5461de132aebaf76814f093556e21c4a4   22881    pkgs/cudainfo/cudainfo.cpp
100644 blob 0c1cb78add8738fa5d63a0ca61cca63ce3904745    8408    m/hut/monitoring.nix
100644 blob 6717fefd47232f5111a61df1dd0f4281c92ca892    7676    m/common/base/users.nix
100644 blob c241806b704c83ee602c0053232b0af43e07a8b2    6480    m/tent/monitoring.nix
100644 blob 38ce71988f3ddc2dcc99767febe48b4a4b1e51b0    6204    m/raccoon/configuration.nix
100644 blob aec0d98fafaa20e7e9963a3027207028ec302a0c    5775    m/module/vpn-dac/client.crt
100644 blob 5cfcb7fba45807203c565f4fd5df1f79578689b9    5167    m/common/base/zsh.nix
100644 blob 2fe7c1cb2d2a24e71e5311b75f1fb449da0f438f    4955    m/hut/gitlab-runner.nix
100644 blob cee67c9c213e186742b951aae725e5b831d91813    4077    doc/install.md
100644 blob 180e2a546b23c551a046575148f6776a318a8c6f    3976    m/module/slurm-common.nix
100644 blob 8c381f86d72128aefc4e72f8dfabb8cfb55493d9    3735    m/fox/configuration.nix
100644 blob 166b8ca5412e04f38cd30aad12bc4d9d6165f559    3611    m/tent/gitlab-runner.nix
100644 blob 7ebd0bb8463355e03b73e266ef180ec10206ecbc    3577    m/map.nix
100644 blob 30ed5ac66892ce7edaedeb6437a039883e4afbfb    3219    flake.lock
100644 blob 47e82644a05b614514711cf26c7888eebc7053a6    2979    m/bay/configuration.nix
100644 blob 8334d5078d3bf06545bd0be5bc6df391af0bf6aa    2621    m/apex/nfs.nix
100644 blob 7e36ceed80b343b1af59b7544199bcc7ea842c97    2621    pkgs/amd-uprof/makefile.patch
100644 blob a67e5aeaf2349dd7afcbe62a039e39224ef864dd    2401    m/lake2/configuration.nix

If I did the math correctly, removing them reduces the size of the reachable objects from 2.78MiB to 2.27MiB:

apex% git rev-list --objects HEAD | git cat-file --batch-check='%(objecttype) %(objectname) %(objectsize) %(rest)' | sort -r --numeric-sort --key=3 | awk '{ n+= $3 } END { print n}'
2781561
apex% git rev-list --objects HEAD | git cat-file --batch-check='%(objecttype) %(objectname) %(objectsize) %(rest)' | sort -r --numeric-sort --key=3 | tail -n +3 | awk '{ n+= $3 } END { print n}'
2277545

And the flake size goes from 1.2MiB to 700KiB which is what is copied to the store:

apex% du -sh /nix/store/r5aihfkzij1vjspm2xmpvph4q39n38hz-source
30M     /nix/store/r5aihfkzij1vjspm2xmpvph4q39n38hz-source # original
apex% du -sh /nix/store/p2a4lscpihd2xbyaifyrfnrd9hbmqp31-source
1,2M    /nix/store/p2a4lscpihd2xbyaifyrfnrd9hbmqp31-source # blobs removed
apex% du -sh /nix/store/7c4hrhlyf1g183nhql5c2mykjn7zhk0g-source
700K    /nix/store/7c4hrhlyf1g183nhql5c2mykjn7zhk0g-source # kernel config removed

Gitea is unable to properly compute the diff, but is here:
apex% git diff 00fe0f46a1143e23d334250dc47fdee2a9320221 --stat
 doc/Intel_Server_Board_S2600WF_TPS_2_6.pdf                        | Bin 8010543 -> 0 bytes
 doc/R1000WF_SystemIntegration_and_ServiceGuide_Rev2_4.pdf         | Bin 13917196 -> 0 bytes
 doc/SEL_TroubleshootingGuide.pdf                                  | Bin 3516866 -> 0 bytes
 doc/bsc-ssf.pdf                                                   | Bin 687323 -> 0 bytes
 web/.gitignore                                                    |   1 -
 web/archetypes/default.md                                         |   6 -
 web/content/_index.md                                             |  25 --
 web/content/access/cave.jpg                                       | Bin 481271 -> 0 bytes
 web/content/access/index.md                                       |  16 -
 web/content/doc/_index.md                                         |  10 -
 web/content/doc/quickstart.md                                     | 234 -------------
 web/content/eudy/_index.md                                        |  10 -
 web/content/eudy/eudy.jpg                                         | Bin 215556 -> 0 bytes
 web/content/fox/_index.md                                         | 117 -------
 web/content/fox/fox.jpg                                           | Bin 128767 -> 0 bytes
 web/content/git/_index.md                                         |   6 -
 web/content/grafana/_index.md                                     |   6 -
 web/content/hut/_index.md                                         | 127 -------
 web/content/hut/hut.jpg                                           | Bin 182453 -> 0 bytes
 web/content/lake/_index.md                                        |  10 -
 web/content/lake/lake.jpg                                         | Bin 147039 -> 0 bytes
 web/content/lists/_index.md                                       |   6 -
 web/content/owl/_index.md                                         |  18 -
 web/content/owl/owl.jpg                                           | Bin 50084 -> 0 bytes
 web/content/paste/_index.md                                       |  68 ----
 web/content/posts/2023-09-12/_index.md                            |  71 ----
 web/content/posts/2023-09-12/power.png                            | Bin 58985 -> 0 bytes
 web/content/posts/2025-09-26/_index.md                            |  49 ---
 web/content/posts/2025-09-26/temp.png                             | Bin 99349 -> 0 bytes
 web/hugo.toml                                                     |  40 ---
 web/static/hut-big.jpg                                            | Bin 231398 -> 0 bytes
 web/static/jungle.jpg                                             | Bin 332764 -> 0 bytes
 web/static/nodes.jpg                                              | Bin 433858 -> 0 bytes
 web/static/rainforest.jpg                                         | Bin 89494 -> 0 bytes
 web/themes/PaperMod/.github/ISSUE_TEMPLATE/bug_report.md          |  50 ---
 web/themes/PaperMod/.github/ISSUE_TEMPLATE/config.yml             |   5 -
 web/themes/PaperMod/.github/ISSUE_TEMPLATE/new-blank-issue.md     |   7 -
 web/themes/PaperMod/.github/PULL_REQUEST_TEMPLATE.md              |  44 ---
 web/themes/PaperMod/.github/stale.yml                             |  17 -
 web/themes/PaperMod/.github/workflows/gh-pages.yml                |  80 -----
 web/themes/PaperMod/LICENSE                                       |  22 --
 web/themes/PaperMod/README.md                                     | 103 ------
 web/themes/PaperMod/assets/css/common/404.css                     |  11 -
 web/themes/PaperMod/assets/css/common/archive.css                 |  44 ---
 web/themes/PaperMod/assets/css/common/footer.css                  |  60 ----
 web/themes/PaperMod/assets/css/common/header.css                  |  93 ------
 web/themes/PaperMod/assets/css/common/main.css                    |  68 ----
 web/themes/PaperMod/assets/css/common/post-entry.css              | 104 ------
 web/themes/PaperMod/assets/css/common/post-single.css             | 402 ----------------------
 web/themes/PaperMod/assets/css/common/profile-mode.css            |  42 ---
 web/themes/PaperMod/assets/css/common/search.css                  |  45 ---
 web/themes/PaperMod/assets/css/common/terms.css                   |  18 -
 web/themes/PaperMod/assets/css/core/license.css                   |   6 -
 web/themes/PaperMod/assets/css/core/reset.css                     | 116 -------
 web/themes/PaperMod/assets/css/core/theme-vars.css                |  38 ---
 web/themes/PaperMod/assets/css/core/zmedia.css                    |  49 ---
 web/themes/PaperMod/assets/css/extended/blank.css                 |   5 -
 web/themes/PaperMod/assets/css/hljs/an-old-hope.min.css           |  63 ----
 web/themes/PaperMod/assets/css/includes/scroll-bar.css            |  63 ----
 web/themes/PaperMod/assets/js/fastsearch.js                       | 147 --------
 web/themes/PaperMod/assets/js/fuse.basic.min.js                   |   9 -
 web/themes/PaperMod/assets/js/highlight.min.js                    |  44 ---
 web/themes/PaperMod/assets/js/license.js                          |   6 -
 web/themes/PaperMod/go.mod                                        |   3 -
 web/themes/PaperMod/i18n/ar.yaml                                  |  28 --
 web/themes/PaperMod/i18n/be.yaml                                  |  39 ---
 web/themes/PaperMod/i18n/bg.yaml                                  |  16 -
 web/themes/PaperMod/i18n/bn.yaml                                  |  33 --
 web/themes/PaperMod/i18n/ca.yaml                                  |  19 --
 web/themes/PaperMod/i18n/ckb.yaml                                 |  25 --
 web/themes/PaperMod/i18n/da.yaml                                  |  28 --
 web/themes/PaperMod/i18n/de.yaml                                  |  33 --
 web/themes/PaperMod/i18n/el.yaml                                  |  33 --
 web/themes/PaperMod/i18n/en.yaml                                  |  33 --
 web/themes/PaperMod/i18n/eo.yaml                                  |  25 --
 web/themes/PaperMod/i18n/es.yaml                                  |  33 --
 web/themes/PaperMod/i18n/fa.yaml                                  |  28 --
 web/themes/PaperMod/i18n/fr.yaml                                  |  33 --
 web/themes/PaperMod/i18n/he.yaml                                  |  33 --
 web/themes/PaperMod/i18n/hi.yaml                                  |  19 --
 web/themes/PaperMod/i18n/hr.yaml                                  |  33 --
 web/themes/PaperMod/i18n/hu.yaml                                  |  16 -
 web/themes/PaperMod/i18n/id.yaml                                  |  33 --
 web/themes/PaperMod/i18n/it.yaml                                  |  33 --
 web/themes/PaperMod/i18n/ja.yaml                                  |  33 --
 web/themes/PaperMod/i18n/ko.yaml                                  |  33 --
 web/themes/PaperMod/i18n/ku.yaml                                  |  25 --
 web/themes/PaperMod/i18n/mn.yaml                                  |  25 --
 web/themes/PaperMod/i18n/ms.yaml                                  |  28 --
 web/themes/PaperMod/i18n/nl.yaml                                  |  33 --
 web/themes/PaperMod/i18n/pl.yaml                                  |  33 --
 web/themes/PaperMod/i18n/pt.yaml                                  |  33 --
 web/themes/PaperMod/i18n/ru.yaml                                  |  39 ---
 web/themes/PaperMod/i18n/sv.yaml                                  |  28 --
 web/themes/PaperMod/i18n/tr.yaml                                  |  33 --
 web/themes/PaperMod/i18n/uk.yaml                                  |  25 --
 web/themes/PaperMod/i18n/uz.yaml                                  |  20 --
 web/themes/PaperMod/i18n/vi.yaml                                  |  25 --
 web/themes/PaperMod/i18n/zh-tw.yaml                               |  33 --
 web/themes/PaperMod/i18n/zh.yaml                                  |  33 --
 web/themes/PaperMod/images/screenshot.png                         | Bin 141511 -> 0 bytes
 web/themes/PaperMod/images/tn.png                                 | Bin 15898 -> 0 bytes
 web/themes/PaperMod/layouts/404.html                              |   3 -
 web/themes/PaperMod/layouts/_default/_markup/render-image.html    |   1 -
 web/themes/PaperMod/layouts/_default/archives.html                |  67 ----
 web/themes/PaperMod/layouts/_default/baseof.html                  |  23 --
 web/themes/PaperMod/layouts/_default/index.json                   |   7 -
 web/themes/PaperMod/layouts/_default/list.html                    | 114 -------
 web/themes/PaperMod/layouts/_default/rss.xml                      |  51 ---
 web/themes/PaperMod/layouts/_default/search.html                  |  29 --
 web/themes/PaperMod/layouts/_default/single.html                  |  58 ----
 web/themes/PaperMod/layouts/_default/terms.html                   |  27 --
 web/themes/PaperMod/layouts/partials/anchored_headings.html       |   2 -
 web/themes/PaperMod/layouts/partials/author.html                  |   9 -
 web/themes/PaperMod/layouts/partials/breadcrumbs.html             |  19 --
 web/themes/PaperMod/layouts/partials/comments.html                |   3 -
 web/themes/PaperMod/layouts/partials/cover.html                   |  42 ---
 web/themes/PaperMod/layouts/partials/edit_post.html               |   8 -
 web/themes/PaperMod/layouts/partials/extend_footer.html           |   3 -
 web/themes/PaperMod/layouts/partials/extend_head.html             |   4 -
 web/themes/PaperMod/layouts/partials/footer.html                  | 135 --------
 web/themes/PaperMod/layouts/partials/head.html                    | 170 ----------
 web/themes/PaperMod/layouts/partials/header.html                  | 149 ---------
 web/themes/PaperMod/layouts/partials/home_info.html               |  13 -
 web/themes/PaperMod/layouts/partials/index_profile.html           |  58 ----
 web/themes/PaperMod/layouts/partials/post_canonical.html          |   9 -
 web/themes/PaperMod/layouts/partials/post_meta.html               |  21 --
 web/themes/PaperMod/layouts/partials/post_nav_links.html          |  19 --
 web/themes/PaperMod/layouts/partials/share_icons.html             |  71 ----
 web/themes/PaperMod/layouts/partials/social_icons.html            |   7 -
 web/themes/PaperMod/layouts/partials/svg.html                     | 688 --------------------------------------
 web/themes/PaperMod/layouts/partials/templates/opengraph.html     |  52 ---
 web/themes/PaperMod/layouts/partials/templates/schema_json.html   | 119 -------
 web/themes/PaperMod/layouts/partials/templates/twitter_cards.html |  33 --
 web/themes/PaperMod/layouts/partials/toc.html                     |  97 ------
 web/themes/PaperMod/layouts/partials/translation_list.html        |  19 --
 web/themes/PaperMod/layouts/robots.txt                            |   7 -
 web/themes/PaperMod/layouts/shortcodes/collapse.html              |   8 -
 web/themes/PaperMod/layouts/shortcodes/figure.html                |  31 --
 web/themes/PaperMod/layouts/shortcodes/inTextImg.html             |   5 -
 web/themes/PaperMod/layouts/shortcodes/ltr.html                   |  15 -
 web/themes/PaperMod/layouts/shortcodes/rawhtml.html               |   2 -
 web/themes/PaperMod/layouts/shortcodes/rtl.html                   |  15 -
 web/themes/PaperMod/theme.toml                                    |  51 ---
 144 files changed, 5900 deletions(-)
This PR **REWRITES THE HISTORY** to remove big blob files (PDFs) as well as the website. The idea is to keep this repository small, so we reduce the time to copy it to the store in each evaluation. Fixes #171 Move the website to another repo: https://jungle.bsc.es/git/rarias/jungle-website There are two kernel config files which are the largest files now. As they don't seem to be used, maybe we can also get rid of them? @arocanon : ``` apex% git ls-tree -r --long HEAD | sort -k 4 -n -r | head -20 100644 blob d260acc903aba42a871a67d46ce3e35d27931963 252089 m/eudy/kernel/configs/lockdep 100644 blob 20bdc2b94be6dbfe267e1cca6057c3c394b8f615 251927 m/eudy/kernel/configs/defconfig 100644 blob 815500b5461de132aebaf76814f093556e21c4a4 22881 pkgs/cudainfo/cudainfo.cpp 100644 blob 0c1cb78add8738fa5d63a0ca61cca63ce3904745 8408 m/hut/monitoring.nix 100644 blob 6717fefd47232f5111a61df1dd0f4281c92ca892 7676 m/common/base/users.nix 100644 blob c241806b704c83ee602c0053232b0af43e07a8b2 6480 m/tent/monitoring.nix 100644 blob 38ce71988f3ddc2dcc99767febe48b4a4b1e51b0 6204 m/raccoon/configuration.nix 100644 blob aec0d98fafaa20e7e9963a3027207028ec302a0c 5775 m/module/vpn-dac/client.crt 100644 blob 5cfcb7fba45807203c565f4fd5df1f79578689b9 5167 m/common/base/zsh.nix 100644 blob 2fe7c1cb2d2a24e71e5311b75f1fb449da0f438f 4955 m/hut/gitlab-runner.nix 100644 blob cee67c9c213e186742b951aae725e5b831d91813 4077 doc/install.md 100644 blob 180e2a546b23c551a046575148f6776a318a8c6f 3976 m/module/slurm-common.nix 100644 blob 8c381f86d72128aefc4e72f8dfabb8cfb55493d9 3735 m/fox/configuration.nix 100644 blob 166b8ca5412e04f38cd30aad12bc4d9d6165f559 3611 m/tent/gitlab-runner.nix 100644 blob 7ebd0bb8463355e03b73e266ef180ec10206ecbc 3577 m/map.nix 100644 blob 30ed5ac66892ce7edaedeb6437a039883e4afbfb 3219 flake.lock 100644 blob 47e82644a05b614514711cf26c7888eebc7053a6 2979 m/bay/configuration.nix 100644 blob 8334d5078d3bf06545bd0be5bc6df391af0bf6aa 2621 m/apex/nfs.nix 100644 blob 7e36ceed80b343b1af59b7544199bcc7ea842c97 2621 pkgs/amd-uprof/makefile.patch 100644 blob a67e5aeaf2349dd7afcbe62a039e39224ef864dd 2401 m/lake2/configuration.nix ``` If I did the math correctly, removing them reduces the size of the reachable objects from 2.78MiB to 2.27MiB: ``` apex% git rev-list --objects HEAD | git cat-file --batch-check='%(objecttype) %(objectname) %(objectsize) %(rest)' | sort -r --numeric-sort --key=3 | awk '{ n+= $3 } END { print n}' 2781561 apex% git rev-list --objects HEAD | git cat-file --batch-check='%(objecttype) %(objectname) %(objectsize) %(rest)' | sort -r --numeric-sort --key=3 | tail -n +3 | awk '{ n+= $3 } END { print n}' 2277545 ``` And the flake size goes from 1.2MiB to 700KiB which is what is copied to the store: ``` apex% du -sh /nix/store/r5aihfkzij1vjspm2xmpvph4q39n38hz-source 30M /nix/store/r5aihfkzij1vjspm2xmpvph4q39n38hz-source # original apex% du -sh /nix/store/p2a4lscpihd2xbyaifyrfnrd9hbmqp31-source 1,2M /nix/store/p2a4lscpihd2xbyaifyrfnrd9hbmqp31-source # blobs removed apex% du -sh /nix/store/7c4hrhlyf1g183nhql5c2mykjn7zhk0g-source 700K /nix/store/7c4hrhlyf1g183nhql5c2mykjn7zhk0g-source # kernel config removed ``` --- <details> <summary> Gitea is unable to properly compute the diff, but is here: </summary> ``` apex% git diff 00fe0f46a1143e23d334250dc47fdee2a9320221 --stat doc/Intel_Server_Board_S2600WF_TPS_2_6.pdf | Bin 8010543 -> 0 bytes doc/R1000WF_SystemIntegration_and_ServiceGuide_Rev2_4.pdf | Bin 13917196 -> 0 bytes doc/SEL_TroubleshootingGuide.pdf | Bin 3516866 -> 0 bytes doc/bsc-ssf.pdf | Bin 687323 -> 0 bytes web/.gitignore | 1 - web/archetypes/default.md | 6 - web/content/_index.md | 25 -- web/content/access/cave.jpg | Bin 481271 -> 0 bytes web/content/access/index.md | 16 - web/content/doc/_index.md | 10 - web/content/doc/quickstart.md | 234 ------------- web/content/eudy/_index.md | 10 - web/content/eudy/eudy.jpg | Bin 215556 -> 0 bytes web/content/fox/_index.md | 117 ------- web/content/fox/fox.jpg | Bin 128767 -> 0 bytes web/content/git/_index.md | 6 - web/content/grafana/_index.md | 6 - web/content/hut/_index.md | 127 ------- web/content/hut/hut.jpg | Bin 182453 -> 0 bytes web/content/lake/_index.md | 10 - web/content/lake/lake.jpg | Bin 147039 -> 0 bytes web/content/lists/_index.md | 6 - web/content/owl/_index.md | 18 - web/content/owl/owl.jpg | Bin 50084 -> 0 bytes web/content/paste/_index.md | 68 ---- web/content/posts/2023-09-12/_index.md | 71 ---- web/content/posts/2023-09-12/power.png | Bin 58985 -> 0 bytes web/content/posts/2025-09-26/_index.md | 49 --- web/content/posts/2025-09-26/temp.png | Bin 99349 -> 0 bytes web/hugo.toml | 40 --- web/static/hut-big.jpg | Bin 231398 -> 0 bytes web/static/jungle.jpg | Bin 332764 -> 0 bytes web/static/nodes.jpg | Bin 433858 -> 0 bytes web/static/rainforest.jpg | Bin 89494 -> 0 bytes web/themes/PaperMod/.github/ISSUE_TEMPLATE/bug_report.md | 50 --- web/themes/PaperMod/.github/ISSUE_TEMPLATE/config.yml | 5 - web/themes/PaperMod/.github/ISSUE_TEMPLATE/new-blank-issue.md | 7 - web/themes/PaperMod/.github/PULL_REQUEST_TEMPLATE.md | 44 --- web/themes/PaperMod/.github/stale.yml | 17 - web/themes/PaperMod/.github/workflows/gh-pages.yml | 80 ----- web/themes/PaperMod/LICENSE | 22 -- web/themes/PaperMod/README.md | 103 ------ web/themes/PaperMod/assets/css/common/404.css | 11 - web/themes/PaperMod/assets/css/common/archive.css | 44 --- web/themes/PaperMod/assets/css/common/footer.css | 60 ---- web/themes/PaperMod/assets/css/common/header.css | 93 ------ web/themes/PaperMod/assets/css/common/main.css | 68 ---- web/themes/PaperMod/assets/css/common/post-entry.css | 104 ------ web/themes/PaperMod/assets/css/common/post-single.css | 402 ---------------------- web/themes/PaperMod/assets/css/common/profile-mode.css | 42 --- web/themes/PaperMod/assets/css/common/search.css | 45 --- web/themes/PaperMod/assets/css/common/terms.css | 18 - web/themes/PaperMod/assets/css/core/license.css | 6 - web/themes/PaperMod/assets/css/core/reset.css | 116 ------- web/themes/PaperMod/assets/css/core/theme-vars.css | 38 --- web/themes/PaperMod/assets/css/core/zmedia.css | 49 --- web/themes/PaperMod/assets/css/extended/blank.css | 5 - web/themes/PaperMod/assets/css/hljs/an-old-hope.min.css | 63 ---- web/themes/PaperMod/assets/css/includes/scroll-bar.css | 63 ---- web/themes/PaperMod/assets/js/fastsearch.js | 147 -------- web/themes/PaperMod/assets/js/fuse.basic.min.js | 9 - web/themes/PaperMod/assets/js/highlight.min.js | 44 --- web/themes/PaperMod/assets/js/license.js | 6 - web/themes/PaperMod/go.mod | 3 - web/themes/PaperMod/i18n/ar.yaml | 28 -- web/themes/PaperMod/i18n/be.yaml | 39 --- web/themes/PaperMod/i18n/bg.yaml | 16 - web/themes/PaperMod/i18n/bn.yaml | 33 -- web/themes/PaperMod/i18n/ca.yaml | 19 -- web/themes/PaperMod/i18n/ckb.yaml | 25 -- web/themes/PaperMod/i18n/da.yaml | 28 -- web/themes/PaperMod/i18n/de.yaml | 33 -- web/themes/PaperMod/i18n/el.yaml | 33 -- web/themes/PaperMod/i18n/en.yaml | 33 -- web/themes/PaperMod/i18n/eo.yaml | 25 -- web/themes/PaperMod/i18n/es.yaml | 33 -- web/themes/PaperMod/i18n/fa.yaml | 28 -- web/themes/PaperMod/i18n/fr.yaml | 33 -- web/themes/PaperMod/i18n/he.yaml | 33 -- web/themes/PaperMod/i18n/hi.yaml | 19 -- web/themes/PaperMod/i18n/hr.yaml | 33 -- web/themes/PaperMod/i18n/hu.yaml | 16 - web/themes/PaperMod/i18n/id.yaml | 33 -- web/themes/PaperMod/i18n/it.yaml | 33 -- web/themes/PaperMod/i18n/ja.yaml | 33 -- web/themes/PaperMod/i18n/ko.yaml | 33 -- web/themes/PaperMod/i18n/ku.yaml | 25 -- web/themes/PaperMod/i18n/mn.yaml | 25 -- web/themes/PaperMod/i18n/ms.yaml | 28 -- web/themes/PaperMod/i18n/nl.yaml | 33 -- web/themes/PaperMod/i18n/pl.yaml | 33 -- web/themes/PaperMod/i18n/pt.yaml | 33 -- web/themes/PaperMod/i18n/ru.yaml | 39 --- web/themes/PaperMod/i18n/sv.yaml | 28 -- web/themes/PaperMod/i18n/tr.yaml | 33 -- web/themes/PaperMod/i18n/uk.yaml | 25 -- web/themes/PaperMod/i18n/uz.yaml | 20 -- web/themes/PaperMod/i18n/vi.yaml | 25 -- web/themes/PaperMod/i18n/zh-tw.yaml | 33 -- web/themes/PaperMod/i18n/zh.yaml | 33 -- web/themes/PaperMod/images/screenshot.png | Bin 141511 -> 0 bytes web/themes/PaperMod/images/tn.png | Bin 15898 -> 0 bytes web/themes/PaperMod/layouts/404.html | 3 - web/themes/PaperMod/layouts/_default/_markup/render-image.html | 1 - web/themes/PaperMod/layouts/_default/archives.html | 67 ---- web/themes/PaperMod/layouts/_default/baseof.html | 23 -- web/themes/PaperMod/layouts/_default/index.json | 7 - web/themes/PaperMod/layouts/_default/list.html | 114 ------- web/themes/PaperMod/layouts/_default/rss.xml | 51 --- web/themes/PaperMod/layouts/_default/search.html | 29 -- web/themes/PaperMod/layouts/_default/single.html | 58 ---- web/themes/PaperMod/layouts/_default/terms.html | 27 -- web/themes/PaperMod/layouts/partials/anchored_headings.html | 2 - web/themes/PaperMod/layouts/partials/author.html | 9 - web/themes/PaperMod/layouts/partials/breadcrumbs.html | 19 -- web/themes/PaperMod/layouts/partials/comments.html | 3 - web/themes/PaperMod/layouts/partials/cover.html | 42 --- web/themes/PaperMod/layouts/partials/edit_post.html | 8 - web/themes/PaperMod/layouts/partials/extend_footer.html | 3 - web/themes/PaperMod/layouts/partials/extend_head.html | 4 - web/themes/PaperMod/layouts/partials/footer.html | 135 -------- web/themes/PaperMod/layouts/partials/head.html | 170 ---------- web/themes/PaperMod/layouts/partials/header.html | 149 --------- web/themes/PaperMod/layouts/partials/home_info.html | 13 - web/themes/PaperMod/layouts/partials/index_profile.html | 58 ---- web/themes/PaperMod/layouts/partials/post_canonical.html | 9 - web/themes/PaperMod/layouts/partials/post_meta.html | 21 -- web/themes/PaperMod/layouts/partials/post_nav_links.html | 19 -- web/themes/PaperMod/layouts/partials/share_icons.html | 71 ---- web/themes/PaperMod/layouts/partials/social_icons.html | 7 - web/themes/PaperMod/layouts/partials/svg.html | 688 -------------------------------------- web/themes/PaperMod/layouts/partials/templates/opengraph.html | 52 --- web/themes/PaperMod/layouts/partials/templates/schema_json.html | 119 ------- web/themes/PaperMod/layouts/partials/templates/twitter_cards.html | 33 -- web/themes/PaperMod/layouts/partials/toc.html | 97 ------ web/themes/PaperMod/layouts/partials/translation_list.html | 19 -- web/themes/PaperMod/layouts/robots.txt | 7 - web/themes/PaperMod/layouts/shortcodes/collapse.html | 8 - web/themes/PaperMod/layouts/shortcodes/figure.html | 31 -- web/themes/PaperMod/layouts/shortcodes/inTextImg.html | 5 - web/themes/PaperMod/layouts/shortcodes/ltr.html | 15 - web/themes/PaperMod/layouts/shortcodes/rawhtml.html | 2 - web/themes/PaperMod/layouts/shortcodes/rtl.html | 15 - web/themes/PaperMod/theme.toml | 51 --- 144 files changed, 5900 deletions(-) ``` </details>
rarias added 458 commits 2025-10-01 17:24:40 +02:00
Is already configured by default for all interfaces.
It seems to be plugged in another PCI port
Reuse nix cache to avoid rebuilding the kernel.
Zsh doesn't behave properly, it needs further configuration.
The configuration of the machines is now moved to m/
From Eudyptula, a little penguin.
Flake lock file updates:

• Updated input 'bscpkgs':
    'git+https://pm.bsc.es/gitlab/rarias/bscpkgs.git?ref=refs%2fheads%2fmaster&rev=c775ee4d6f76aded05b08ae13924c302f18f9b2c' (2023-04-26)
  → 'git+https://pm.bsc.es/gitlab/rarias/bscpkgs.git?ref=refs%2fheads%2fmaster&rev=cbe9af5d042e9d5585fe2acef65a1347c68b2fbd' (2023-06-16)
The task/affinity plugin needs to be selected.
This allows a node to mount the ceph FS without any extra ceph
configuration in /etc/ceph.
The disk ID is different under NixOS.
The agenix tools needs to read the secrets from a standalone file, but
we also need the same information for the SSH keys.
Flake lock file updates:

• Updated input 'bscpkgs':
    'git+https://pm.bsc.es/gitlab/rarias/bscpkgs.git?ref=refs/heads/master&rev=18d64c352c10f9ce74aabddeba5a5db02b74ec27' (2023-08-31)
  → 'git+https://pm.bsc.es/gitlab/rarias/bscpkgs.git?ref=refs/heads/master&rev=ee24b910a1cb95bd222e253da43238e843816f2f' (2023-09-01)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/d680ded26da5cf104dd2735a51e88d2d8f487b4d' (2023-08-19)
  → 'github:NixOS/nixpkgs/e56990880811a451abd32515698c712788be5720' (2023-09-02)
Flake lock file updates:

• Updated input 'bscpkgs':
    'git+https://pm.bsc.es/gitlab/rarias/bscpkgs.git?ref=refs/heads/master&rev=ee24b910a1cb95bd222e253da43238e843816f2f' (2023-09-01)
  → 'git+https://pm.bsc.es/gitlab/rarias/bscpkgs.git?ref=refs/heads/master&rev=6122fef92701701e1a0622550ac0fc5c2beb5906' (2023-09-07)
This reverts commit aaefddc44a.
Flake lock file updates:

• Updated input 'bscpkgs':
    'git+https://pm.bsc.es/gitlab/rarias/bscpkgs.git?ref=refs/heads/master&rev=6122fef92701701e1a0622550ac0fc5c2beb5906' (2023-09-07)
  → 'git+https://pm.bsc.es/gitlab/rarias/bscpkgs.git?ref=refs/heads/master&rev=3a4062ac04be6263c64a481420d8e768c2521b80' (2023-09-14)
Allows the user to directly access nixpkgs and bscpkgs from the top
level as `nix build jungle#htop` and `nix build jungle#bsc.ovni`.
Allows the evaluation of packages of the intermediate overlays.
This is done to prevent accidental evaluations where the nixpkgs input
of bscpkgs is still pointing to a different version that the one
specified in the jungle flake. Instead use jungle#bscpkgs.X to get a
package from bscpkgs.
By default it was trying to reach the targets using the default gateway,
but since the electrical cut of 2023-10-20, the login node has not
enabled forwarding again. So better if we don't rely on it.

Reviewed-By: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
The alerts need to contact the slack endpoint, so we add the proxy
environment variables to the grafana systemd service.

Reviewed-By: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
These probes check if we can reach several targets via ICMP, which is
not proxied, so they can be used to see if ICMP forwarding is working in
the login node.

In particular, we test if we can reach the Google (8.8.8.8) and
Cloudflare (1.1.1.1) DNS servers, the BSC gateway which responds to ping
only from the intranet and the login node (ssfhead).

Reviewed-By: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
The target gw.bsc.es doesn't reply to our ICMP probes from hut. However,
the anella hop in the tracepath is a good candidate to identify cuts
between the login and the provider and between the provider and external
hosts like Google or Cloudflare DNS.

Reviewed-By: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Flake lock file updates:

• Updated input 'bscpkgs':
    'git+https://pm.bsc.es/gitlab/rarias/bscpkgs.git?ref=refs/heads/master&rev=3a4062ac04be6263c64a481420d8e768c2521b80' (2023-09-14)
  → 'git+https://git.sr.ht/~rodarima/bscpkgs?ref=refs/heads/master&rev=f605f8e5e4a1f392589f1ea2b9ffe2074f72a538' (2023-10-31)

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/d8c973fd228949736dedf61b7f8cc1ece3236792' (2023-07-24)
  → 'github:ryantm/agenix/daf42cb35b2dc614d1551e37f96406e4c4a2d3e4' (2023-10-08)
• Updated input 'bscpkgs':
    'git+https://git.sr.ht/~rodarima/bscpkgs?ref=refs/heads/master&rev=f605f8e5e4a1f392589f1ea2b9ffe2074f72a538' (2023-10-31)
  → 'git+https://git.sr.ht/~rodarima/bscpkgs?ref=refs/heads/master&rev=e148de50d68b3eeafc3389b331cf042075971c4b' (2023-11-22)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/e56990880811a451abd32515698c712788be5720' (2023-09-02)
  → 'github:NixOS/nixpkgs/e4ad989506ec7d71f7302cc3067abd82730a4beb' (2023-11-19)

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
The Ceph package is now integrated in upstream nixpkgs.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Only the ceph-client is needed.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
The old runners for the PM gitlab were disabled in configuration in the
last outage, but they remained working until we reboot the node. With
this change we enable the runners for both PM and gitlab.bsc.es.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
The /tmp directory was using the SSD disk which is not erased across
boots. Nix will use /tmp to perform the builds, so we want it to be as
fast as possible. In general, all the machines have enough space to
handle large builds like LLVM.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
The module is only enabled on Hut and Eudy because we noticed activity
on the debuginfod service even if no debug session was active.

Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
The GitLab instance is in the /gitlab endpoint and may fail
independently of https://pm.bsc.es/.

Cc: Víctor López <victor.lopez@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
The public-inbox service fetches emails from the sourcehut mailing lists
and displays them on the web. The idea is to reduce the dependency on
external services and add a secondary storage for the mailing lists in
case sourcehut goes down or changes the current free plans.

The service is available in https://jungle.bsc.es/lists/ and is open to
the public. It currently mirrors the bscpkgs and jungle mailing list.

We also edited the CSS to improve the readability and have larger fonts
by default.

The service for public-inbox produced by NixOS is not well configured to
fetch emails from an IMAP mail server, so we also manually edit the
service file to enable the network.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
As all other HTTPS probes pass through the opsproxy01.bsc.es proxy, we
cannot detect a problem in our proxy or in the BSC one. Adding another
target like bsc.es that doesn't use the ops proxy allows us to discern
where the problem lies.

Instead of monitoring https://www.bsc.es/ directly, which will trigger
the whole Drupal server and take a whole second, we just fetch robots.txt
so the overhead on the server is minimal (and returns in less than 10 ms).

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
The main website of the BSC is failing every day around 3:00 AM for
almost one hour, so it is not a very good target. Instead, google.com is
used which should be more reliable. The same robots.txt path is fetched,
as it is smaller than the main page.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/daf42cb35b2dc614d1551e37f96406e4c4a2d3e4' (2023-10-08)
  → 'github:ryantm/agenix/1381a759b205dff7a6818733118d02253340fd5e' (2024-04-02)
• Updated input 'agenix/darwin':
    'github:lnl7/nix-darwin/87b9d090ad39b25b2400029c64825fc2a8868943' (2023-01-09)
  → 'github:lnl7/nix-darwin/4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d' (2023-11-24)
• Updated input 'agenix/home-manager':
    'github:nix-community/home-manager/32d3e39c491e2f91152c84f8ad8b003420eab0a1' (2023-04-22)
  → 'github:nix-community/home-manager/3bfaacf46133c037bb356193bd2f1765d9dc82c1' (2023-12-20)
• Added input 'agenix/systems':
    'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e' (2023-04-09)
• Updated input 'bscpkgs':
    'git+https://git.sr.ht/~rodarima/bscpkgs?ref=refs/heads/master&rev=e148de50d68b3eeafc3389b331cf042075971c4b' (2023-11-22)
  → 'git+https://git.sr.ht/~rodarima/bscpkgs?ref=refs/heads/master&rev=de89197a4a7b162db7df9d41c9d07759d87c5709' (2024-04-24)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/e4ad989506ec7d71f7302cc3067abd82730a4beb' (2023-11-19)
  → 'github:NixOS/nixpkgs/6143fc5eeb9c4f00163267708e26191d1e918932' (2024-04-21)
• Updated input 'nixseparatedebuginfod':
    'github:symphorien/nixseparatedebuginfod/232591f5274501b76dbcd83076a57760237fcd64' (2023-11-05)
  → 'github:symphorien/nixseparatedebuginfod/98d79461660f595637fa710d59a654f242b4c3f7' (2024-03-07)
• Removed input 'nixseparatedebuginfod'
• Removed input 'nixseparatedebuginfod/flake-utils'
• Removed input 'nixseparatedebuginfod/flake-utils/systems'
• Removed input 'nixseparatedebuginfod/nixpkgs'

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
It has been integrated in nixpkgs, so is no longer required.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
MPICH expects headers and libraries to be present in the same directory.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
See: https://bugs.schedmd.com/show_bug.cgi?id=19324

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
See: https://github.com/pmodels/mpich/issues/6946

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
The firewall was blocking the monitoring traffic from hut and the Ceph
traffic among OSDs. The rules only allow connecting from the specific
host that they are supposed to be coming from.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Allows sending Grafana alerts via email too, so we have a reduntant
mechanism in case Slack fails to deliver them.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
The database will hold the performance results of the execution of the
benchmarks. We follow the same setup on knights3 for now.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
The users.jungleUsers configuration option behaves like the users.users
option, but defines the list attribute `hosts` for each user, which
filters users so that only the user can only access those hosts.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
To accomodate the raccoon knights workstation, some of the configuration
pulled by m/common/main.nix has to be removed. To solve it, the xeon
specific parts are placed into m/common/xeon.nix and only the common
configuration is at m/common/base.nix.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Access to other machines can be easily added into the "hosts" attribute
without the need to replicate the configuration.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
smp_processor_id() was called in a preepmtible context, which could
invalidate the returned value. However, this was not harmful, because
fcs threads in nosv are pinned.

Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Allows users to attach GDB to their own processes, without requiring
running the program with GDB from the start. It is only available in
compute nodes, the storage nodes continue with the restricted settings.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/1381a759b205dff7a6818733118d02253340fd5e' (2024-04-02)
  → 'github:ryantm/agenix/de96bd907d5fbc3b14fc33ad37d1b9a3cb15edc6' (2024-07-09)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/6143fc5eeb9c4f00163267708e26191d1e918932' (2024-04-21)
  → 'github:NixOS/nixpkgs/693bc46d169f5af9c992095736e82c3488bf7dbb' (2024-07-14)

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Starting with GitLab 16, there is a new mechanism to authenticate the
runners via authentication tokens, so use it instead.  Older tokens and
runners are also removed, as they are no longer used.

With the new way of managing tokens, both the tags and the locked state
are managed from the GitLab web page.

See: https://docs.gitlab.com/ee/ci/runners/new_creation_workflow.html
Reviewed-by: Aleix Boné <abonerib@bsc.es>
The current select mechanism was using the memory too as a consumable
resource, which by default only sets 1 MiB per node. As each job already
requests 1 MiB, it prevents other jobs from running.

As we are not really concerned with memory usage, we only use the unused
cores in the select criteria.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Prevents enless jobs from being left forever, while allow users to
request a larger time limit.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Prevents filling the journal logs with information messages.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
WARNING: This will introduce noise, as the daemon wakes up from time to
time to check for new packages.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Allows cross-compilation of packages for RISC-V that are known to try to
run RISC-V programs in the host.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Initially we planned to run jobs in those nodes by sharing the same nix
store from hut. However, these nodes are now used to build packages
which are not available in hut. Users also ssh to the nodes, which
doesn't mount the hut store, so it doesn't make much sense to keep
mounting it.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
The shutdown timer will fire at slightly different times for the
different nodes, so we slowly decrease the power consumption.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
They have been removed from NixOS. The "hardware.opengl" group is now
renamed to "hardware.graphics".

See: 98cef4c273
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Apparently the ttyS0 console doesn't exist but ttyS1 does:

  raccoon% sudo stty -F /dev/ttyS0
  stty: /dev/ttyS0: Input/output error
  raccoon% sudo stty -F /dev/ttyS1
  speed 9600 baud; line = 0;
  -brkint -imaxbel

The dmesg line agrees:

  00:03: ttyS1 at I/O 0x2f8 (irq = 3, base_baud = 115200) is a 16550A

The console configuration is then moved from base to xeon to allow
changing it for the raccoon machine.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Prevents starting the garbage collector before the remote FS are
mounted, in particular /home. Otherwise, all the gcroots which have
symlinks in /home will be considered stale and they will be removed.

See: #79
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Instead of using multiple tunels to forward all our services to the VM
that serves jungle.bsc.es, just use nginx to redirect the traffic from
hut. This allows adding custom rules for paths that are not posible
otherwise.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Ensure that all hut users have a paste directory in /ceph/p owned by
themselves. We need to wait for the ceph mount point to create them, so
we use a systemd service that waits for the remote-fs.target.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
This was breaking requests due to CSRF check.

See: https://github.com/grafana/grafana/issues/45117#issuecomment-1033842787
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
It causes the request to go to the website rather than the Gitea
service.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/de96bd907d5fbc3b14fc33ad37d1b9a3cb15edc6' (2024-07-09)
  → 'github:ryantm/agenix/f6291c5935fdc4e0bef208cfc0dcab7e3f7a1c41' (2024-08-10)
• Updated input 'bscpkgs':
    'git+https://git.sr.ht/~rodarima/bscpkgs?ref=refs/heads/master&rev=de89197a4a7b162db7df9d41c9d07759d87c5709' (2024-04-24)
  → 'git+https://git.sr.ht/~rodarima/bscpkgs?ref=refs/heads/master&rev=6782fc6c5b5a29e84a7f2c2d1064f4bcb1288c0f' (2024-11-29)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/693bc46d169f5af9c992095736e82c3488bf7dbb' (2024-07-14)
  → 'github:NixOS/nixpkgs/9c6b49aeac36e2ed73a8c472f1546f6d9cf1addc' (2025-01-14)

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Use agenix to store the credentials safely.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
We no longer have homogeneous nodes so it doesn't make much sense to
allocate a mix of them.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
It uses docker based on alpine and the host nix store, so we can perform
builds but isolate them from the system.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
`nix-serve` does not handle duplicates in the path:
```
hut$ curl http://127.0.0.1:5000/nix-cache-info
StoreDir: /nix/store
WantMassQuery: 1
Priority: 30
hut$ curl http://127.0.0.1:5000//nix-cache-info
File not found.
```

This meant that the cache was not accessible via:
`curl https://jungle.bsc.es/cache/nix-cache-info` but
`curl https://jungle.bsc.es/cachenix-cache-info` worked.

Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Needed for local hosts to contact the nix cache via HTTP directly.
We also allow the incoming traffic on port 80.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Prevents the "iptables: Chain already exists." error by making sure that
we don't leave any chain on start. The ideal solution is to use
iptables-restore instead, which will do the right job. But this needs to
be changed in NixOS entirely.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
For owl1 and owl2 directly connect to hut via LAN with HTTP, but for
raccoon pass via the proxy using jungle.bsc.es with HTTPS. There is no
risk of tampering as packages are signed.

Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Allows fetching repositories from hut and other machines in jungle
without the need to do any extra configuration.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Before:

  hut% sudo docker run -it --rm alpine /bin/ash -xc 'true | nc -w 3 -v 10.0.40.7 23080'
  + true
  + nc -w 3 -v 10.0.40.7 23080
  nc: 10.0.40.7 (10.0.40.7:23080): Operation timed out

After:

  hut% sudo docker run -it --rm alpine /bin/ash -xc 'true | nc -w 3 -v 10.0.40.7 23080'
  + true
  + nc -w 3 -v 10.0.40.7 23080
  10.0.40.7 (10.0.40.7:23080) open

Fixes: #94
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Access to the 23080 local port will be done by applying the INPUT rules,
which pass through nixos-fw.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Now that we have more space, we can extend the retention time to 5 years
to hold the monitoring metrics. For a year we have:

	# du -sh /var/lib/prometheus2
	13G     /var/lib/prometheus2

So we can expect it to increase to about 65 GiB. In the future we may
want to reduce some adquisition frequency.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
From the documentation of keep-outputs, setting it to true would prevent
the GC from removing build time dependencies:

If true, the garbage collector will keep the outputs of non-garbage
derivations. If false (default), outputs will be deleted unless they are
GC roots themselves (or reachable from other roots).

In general, outputs must be registered as roots separately. However,
even if the output of a derivation is registered as a root, the
collector will still delete store paths that are used only at build time
(e.g., the C compiler, or source tarballs downloaded from the network).
To prevent it from doing so, set this option to true.

See: https://nix.dev/manual/nix/2.24/command-ref/conf-file.html#conf-keep-outputs
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Allows us to see which derivations are being built in realtime. It is a
bit of a hack, but it seems to work. We simply look at the environment
of the child processes of nix-daemon (usually bash) and then look for
the $name variable which should hold the current derivation being
built. Needs root to be able to read the environ file of the different
nix-daemon processes as they are owned by the nixbld* users.

See: https://discourse.nixos.org/t/query-ongoing-builds/23486
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Allows us to track ambient temperature changes and estimate the
temperature delta between the server room and exterior temperature.
We should be able to predict when we would need to stop the machines due
to excesive temperature as summer approaches.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
These sensors are part of their air quality measurements, which just
happen to be very close to our server room.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
We no longer will be able to use SLURM from jungle.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
It will no longer be accesible from the UPC.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
We no longer will share secrets with fox until we can regain our trust.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Prevent decrypting old secrets by reading the git history.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Fox is no longer able to use munge or ceph, so we remove the key and
rekey them.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
It won't be accesible anymore as we won't be in the same LAN.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
The fox machine will be placed in the UPC network, so we update the
configuration with the new IP and gateway. We won't be able to reach hut
directly so we also remove the host entry and proxy.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Fox should reply once the machine is connected to the UPC network.
Monitoring also the gateway and UPC anella allows us to estimate if the
whole network is down or just fox.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
We will need to setup an VPN to be able to access fox in its new
location, so for now we simply remove the IPMI monitoring.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Documents the location, board and serial numbers so we can track the
machines if they move around. Some information is unkown.

Using the Nix language to encode the machines location and properties
allows us to later use that information in the configuration of the
machines themselves.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Other machines like raccoon have direct access.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Allows services to run without a login session.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
From the nix manual:

> A configuration setting usually overrides any previous value. However,
> for settings that take a list of items, you can prefix the name of the
> setting by extra- to append to the previous value.

Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Needed to run benchmarks without interference.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Allow xeon machines to optionally inherit SSF configuration such as the
NFS mount point and the network configuration.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
We moved the tent machine to the server room in the BSC building and is
now directly connected to the raccoon via NAT.

Fixes: #106
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Allows gitea to send notifications via email.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Get rid of all the spam accounts they are trying to register.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Needed for L3 events in perf.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
See: https://www.kernel.org/doc/html/latest/admin-guide/sysctl/kernel.html#numa-balancing

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Allows referring to fox.ac.upc.edu directly as fox.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Fixes problems with the kitty terminal when opening vim or kakoune.

Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
This reverts commit efac36b186.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
All machines have now direct connection with the outside world.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
They need to be able to login to apex to access any other machine from
the SSF rack.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
We now have direct connection to them.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Allows root to read files in the NFS export, so we can directly run
`nixos-rebuild switch` from /home.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Don't wait to flush writes, as we don't care about consistency on a
crash:

> This option allows the NFS server to violate the NFS protocol and
> reply to requests before any changes made by that request have been
> committed to stable storage (e.g. disc drive).
>
> Using this option usually improves performance, but at the cost that
> an unclean server restart (i.e. a crash) can cause data to be lost or
> corrupted.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Otherwise they simply fail as IPv6 doesn't work.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Access internal hosts via apex proxy. From the compute nodes we first
open an SSH connection to apex, and then tunnel it through the HTTP
proxy with netcat.

This way we allow reaching internal GitLab repositories without
requiring the user to have credentials in the remote host, while we can
use multiple remotes to provide redundancy.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
They are not needed as they are already flushed when the firewall
starts or stops.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
It is spamming our logs with refused connection lines:

apex% sudo journalctl -b0 | grep 'refused connection.*SRC=192.168.8.16' | wc -l
13945

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/f6291c5935fdc4e0bef208cfc0dcab7e3f7a1c41?narHash=sha256-b%2Buqzj%2BWa6xgMS9aNbX4I%2BsXeb5biPDi39VgvSFqFvU%3D' (2024-08-10)
  → 'github:ryantm/agenix/531beac616433bac6f9e2a19feb8e99a22a66baf?narHash=sha256-9P1FziAwl5%2B3edkfFcr5HeGtQUtrSdk/MksX39GieoA%3D' (2025-06-17)
• Updated input 'agenix/darwin':
    'github:lnl7/nix-darwin/4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d?narHash=sha256-gzGLZSiOhf155FW7262kdHo2YDeugp3VuIFb4/GGng0%3D' (2023-11-24)
  → 'github:lnl7/nix-darwin/43975d782b418ebf4969e9ccba82466728c2851b?narHash=sha256-dyN%2BteG9G82G%2Bm%2BPX/aSAagkC%2BvUv0SgUw3XkPhQodQ%3D' (2025-04-12)
• Updated input 'agenix/home-manager':
    'github:nix-community/home-manager/3bfaacf46133c037bb356193bd2f1765d9dc82c1?narHash=sha256-7ulcXOk63TIT2lVDSExj7XzFx09LpdSAPtvgtM7yQPE%3D' (2023-12-20)
  → 'github:nix-community/home-manager/abfad3d2958c9e6300a883bd443512c55dfeb1be?narHash=sha256-YZCh2o9Ua1n9uCvrvi5pRxtuVNml8X2a03qIFfRKpFs%3D' (2025-04-24)
• Updated input 'bscpkgs':
    'git+https://git.sr.ht/~rodarima/bscpkgs?ref=refs/heads/master&rev=6782fc6c5b5a29e84a7f2c2d1064f4bcb1288c0f' (2024-11-29)
  → 'git+https://git.sr.ht/~rodarima/bscpkgs?ref=refs/heads/master&rev=9d1944c658929b6f98b3f3803fead4d1b91c4405' (2025-06-11)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/9c6b49aeac36e2ed73a8c472f1546f6d9cf1addc?narHash=sha256-i/UJ5I7HoqmFMwZEH6vAvBxOrjjOJNU739lnZnhUln8%3D' (2025-01-14)
  → 'github:NixOS/nixpkgs/dfcd5b901dbab46c9c6e80b265648481aafb01f8?narHash=sha256-Kt1UIPi7kZqkSc5HVj6UY5YLHHEzPBkgpNUByuyxtlw%3D' (2025-07-13)

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Fails with: "error: ix has been removed from Nixpkgs, as the ix.io
pastebin has been offline since Dec. 2023".

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
It is constantly spamming out logs:

apex# journalctl | grep 'Connection closed by 84.88.52.176' | wc -l
2255

Reviewed-by: Aleix Boné <abonerib@bsc.es>
It is already set to true for all machines.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
It is recommended for newer versions.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
The NVIDIA GTX 960 from 2016 has the Maxwell architecture, and NixOS
suggests using the proprietary driver for older than Turing:

> It is suggested to use the open source kernel modules on Turing or
> later GPUs (RTX series, GTX 16xx), and the closed source modules
> otherwise.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
The xeon07 machine has been renamed to hut.

Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
This allows running derivations which depend on cuda runtime without
breaking the sandbox. We only need to add `requiredSystemFeatures = [ "cuda" ];`
to the derivation.

Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
The cudainfo program checks that we can initialize the CUDA RT library
and communicate with the driver. It can be used as standalone program or
built with cudainfo.gpuCheck so it is executed inside the build sandbox
to see if it also works fine. It uses the autoAddDriverRunpath hook to
inject in the runpath the location of the library directory for CUDA
libraries.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
The UPC has different dates for the yearly power cut, and Fox can
recover properly from a power loss, so we don't need to have it turned
off before the power cut. Simply disabling the timer is enough.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
In all machines, as soon as we recover the power, turn the machine back
on. We cannot rely on the previous state as we will shut them down
before the power is cut to prevent damage on the power supply
monitoring circuit.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
The StartLimitBurst and StartLimitIntervalSec options belong to the
[Unit] section, otherwise they are ignored in [Service]:

> Unknown key 'StartLimitIntervalSec' in section [Service], ignoring.

When using [Unit], the limits are properly set:

  apex% systemctl show power-policy.service | grep StartLimit
  StartLimitIntervalUSec=10min
  StartLimitBurst=10
  StartLimitAction=none

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Allows direct contact via the VPN when accessing from fox, but use
Internet when using the rest of the machines.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Protect fox against ssh bruteforce attacks:

fox% sudo lastb | head
root     ssh:notty    200.124.28.102   Mon Sep  1 11:25 - 11:25  (00:00)
root     ssh:notty    200.124.28.102   Mon Sep  1 11:25 - 11:25  (00:00)
root     ssh:notty    200.124.28.102   Mon Sep  1 11:25 - 11:25  (00:00)
root     ssh:notty    200.124.28.102   Mon Sep  1 11:25 - 11:25  (00:00)
root     ssh:notty    200.124.28.102   Mon Sep  1 11:25 - 11:25  (00:00)
root     ssh:notty    200.124.28.102   Mon Sep  1 11:25 - 11:25  (00:00)
root     ssh:notty    200.124.28.102   Mon Sep  1 11:25 - 11:25  (00:00)
root     ssh:notty    200.124.28.102   Mon Sep  1 11:25 - 11:25  (00:00)
root     ssh:notty    200.124.28.102   Mon Sep  1 11:24 - 11:24  (00:00)
root     ssh:notty    200.124.28.102   Mon Sep  1 11:24 - 11:24  (00:00)

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
This reverts commit 64a52801ed.

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
The 106 byte is the code for 'j' (jungle) in ASCII:

	% printf j | od -t d
	0000000         106
	0000001

Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Fixes the build in Linux 6.15.6, as it was not able to find the include
files.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
The hrtimer_init() is now done via hrtimer_setup() with the callback
function as argument.

See: https://lwn.net/Articles/996598/
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
It tries to dlopen libcrypt.so.1 and libstdc++.so.6, so we make sure
they are available by adding them to the runpath.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
We change the search procedure so it detects NixOS from /etc/os-release
and uses "libnuma.so" when calling dlopen, instead of harcoding a full
path to /usr. The full patch of libnuma is stored in the runpath, so
dlopen can find it.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Tested-by: Vincent Arcila <vincent.arcila@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
It routes traffic from fox, apex and the compute nodes so that we can
reach the git servers and tent.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
We now have direct visibility among nodes so we don't need any extra
SSH configuration to reach them.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
A failure to reach the control node can cause slurmd to fail and the
unit remains in the failed state until is manually restarted. Instead,
try to restart the service every 30 seconds, forever:

    owl1% systemctl show slurmd | grep -E 'Restart=|RestartUSec='
    Restart=on-failure
    RestartUSec=30s
    owl1% pgrep slurmd
    5903
    owl1% sudo kill -SEGV 5903
    owl1% pgrep slurmd
    6137

Fixes: #177
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Reviewed-by: Aleix Boné <abonerib@bsc.es>
Author
Owner

I'll close this in favor of #188

I'll close this in favor of https://jungle.bsc.es/git/rarias/jungle/pulls/188
rarias closed this pull request 2025-10-02 13:36:52 +02:00

Pull request closed

Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: rarias/jungle#186