├── .github
└── workflows
│ ├── build.yml
│ └── deploy.yml
├── .gitignore
├── .hugo_build.lock
├── .travis.yml
├── README.md
├── archetypes
└── .gitkeep
├── build.sh
├── config.toml
├── content
├── .gitkeep
├── about
│ └── _index.md
├── contacts
│ └── _index.md
└── post
│ ├── 2016-10-04-dependent-type.md
│ ├── 2016-10-16-c11-memory-model.md
│ ├── 2016-10-29-physical-engine.md
│ ├── 2016-11-12-life-of-a-packet.md
│ ├── 2017-01-08-halvm.md
│ ├── 2017-01-14-announcing-new-portal.md
│ ├── 2017-01-15-writing-guide.md
│ ├── 2017-02-21-hotpot.md
│ ├── 2017-03-09-gpg-sign-party.md
│ ├── 2017-06-12-summer-class.md
│ ├── 2017-06-24-summer-class-portal.md
│ ├── 2017-06-25-summer-class-schedule.md
│ ├── 2017-10-28-performance-measurement.md
│ ├── 2017-11-02-haskell-talk-01.md
│ ├── 2018-03-10-intro.md
│ ├── 2018-03-31-concatenative-programming.md
│ ├── 2018-04-22-memory-safety-in-rust.md
│ ├── 2018-05-12-cooperative-training.md
│ ├── 2018-06-06-summer-class.md
│ ├── 2018-12-15-polymorphism-in-cpp.md
│ ├── 2019-04-01-task-oriented-dialogue.md
│ ├── 2019-09-18-build-system.md
│ ├── 2021-03-09-welcome.md
│ ├── 2021-11-20-rust-sharing.md
│ ├── 2023-06-19-hpc-llm-train.md
│ ├── mirror-help
│ ├── alhp.md
│ ├── alpine.md
│ ├── anaconda.md
│ ├── anthon.md
│ ├── archlinux-cn.md
│ ├── archlinux.md
│ ├── archlinuxarm.md
│ ├── armbian.md
│ ├── bioconductor.md
│ ├── blackarch.md
│ ├── brew-git.md
│ ├── centos.md
│ ├── cran.md
│ ├── crates.io.md
│ ├── creates.io.git.md
│ ├── dart-packages.md
│ ├── debian-cd.md
│ ├── debian-ports.md
│ ├── debian.md
│ ├── docker-ce.md
│ ├── docker-registry.md
│ ├── dragonflybsd.md
│ ├── elan.md
│ ├── emacs-elpa.md
│ ├── fedora-ostree.md
│ ├── fedora.md
│ ├── flathub.md
│ ├── flutter_infra.md
│ ├── gcr-io.md
│ ├── ghcup.md
│ ├── google-fonts.md
│ ├── guix.md
│ ├── homebrew-bottles.md
│ ├── homebrew-cask.md
│ ├── homebrew-core.md
│ ├── immortalwrt.md
│ ├── julia-releases.md
│ ├── julia.md
│ ├── kali.md
│ ├── leopardsh.md
│ ├── linuxliteos.md
│ ├── maven-central.md
│ ├── mongodb.md
│ ├── msys2.md
│ ├── mx-isos.md
│ ├── mx-packages.md
│ ├── nix-channels.md
│ ├── nodejs-release.md
│ ├── npm-registry.md
│ ├── ohmyzsh.md
│ ├── opam-git.md
│ ├── openEuler.md
│ ├── packagist.md
│ ├── parrot.md
│ ├── pop-os.md
│ ├── putty.md
│ ├── pypi-packages.md
│ ├── pypi.md
│ ├── pytorch-wheels.md
│ ├── qt.md
│ ├── raspberry-pi-os-images.md
│ ├── raspberrypi.md
│ ├── raspbian-addons.md
│ ├── raspbian.md
│ ├── rocky.md
│ ├── ros.md
│ ├── rust-static.md
│ ├── ubuntu-cdimage.md
│ ├── ubuntu-cloud-images.md
│ ├── ubuntu-ports.md
│ ├── ubuntu-releases.md
│ ├── ubuntu.md
│ └── voidlinux.md
│ └── mirror-news
│ ├── 2016-03-17-established.md
│ ├── 2016-04-07-arch-repo.md
│ ├── 2018-03-04-v2-beta.md
│ ├── 2018-05-07-domain-update.md
│ ├── 2018-05-17-gnu-ctan-repo.md
│ ├── 2018-05-29-maintain-complete.md
│ ├── 2018-05-29-maintain.md
│ ├── 2018-06-04-ros-failure.md
│ ├── 2018-06-15-raspbian-homebrew.md
│ ├── 2018-11-20-maintain.md
│ ├── 2018-11-22-outage.md
│ ├── 2019-01-04-outage.md
│ ├── 2019-03-06-tls-1.3.md
│ ├── 2019-06-19-maintain.md
│ ├── 2019-10-09-remove-pypi.md
│ ├── 2019-10-10-data-leak.md
│ ├── 2020-04-18-maintain.md
│ ├── 2020-08-05-new-mirrors.md
│ ├── 2020-09-28-new-mirrors.md
│ ├── 2020-12-07-announcing-new-arch.md
│ ├── 2020-12-08-add-pypi.md
│ ├── 2020-12-21-release-guix.md
│ ├── 2020-12-25-fix-flutter.md
│ ├── 2021-01-02-add-github-release-freecad.md
│ ├── 2021-01-04-siyuan-available.md
│ ├── 2021-02-10-maintain.md
│ ├── 2021-03-06-new-mirrors.md
│ ├── 2021-03-23-new-mirrors.md
│ ├── 2021-05-25-new-mirrors.md
│ ├── 2021-08-26-new-mirrors.md
│ ├── 2021-09-26-maintain.md
│ ├── 2021-10-04-cert.md
│ ├── 2021-10-07-outage.md
│ ├── 2021-11-05-maintain.md
│ ├── 2022-06-02-maintain.md
│ ├── 2022-10-16-maintain.md
│ ├── 2023-02-17-maintain.md
│ ├── 2023-02-23-maintain.md
│ ├── 2023-06-03-maintain.md
│ ├── 2023-09-19-maintain.md
│ ├── 2023-11-03-outage.md
│ ├── 2023-12-19-redirect-julia.md
│ ├── 2024-02-08-remove-scientific.md
│ ├── 2024-02-16-k8s-registry.md
│ ├── 2024-03-13-new-mirrors.md
│ ├── 2024-05-30-remove-linuxbrew-core.md
│ ├── 2024-06-03-maintain.md
│ ├── 2024-07-04-maintain.md
│ ├── 2024-07-10-remove-deprecated-brew-casks.md
│ ├── 2024-11-28-maintain.md
│ ├── 2025-03-25-storage-fault.md
│ └── 2025-05-10-storage-fault.md
├── data
└── .gitkeep
├── deploy.sh
├── layouts
└── .gitkeep
├── static
├── .gitkeep
└── images
│ ├── 2018-01.jpg
│ ├── 2021-11.cover.jpeg
│ ├── 2021-11.in-event.jpeg
│ ├── 2023-06.cover.jpeg
│ ├── 2023-06.in-event.jpeg
│ ├── act.jpeg
│ ├── dependent-type.jpg
│ ├── halvm.jpg
│ ├── life-of-a-packet.png
│ ├── memory-model.png
│ ├── physics-engine.png
│ └── wechat_qrcode.jpg
└── themes
├── .gitkeep
└── sjtug
├── CHANGELOG.md
├── LICENSE.md
├── README.md
├── archetypes
└── default.md
├── content
├── about
│ └── index.md
└── post
│ ├── creating-a-new-theme.md
│ ├── goisforlovers.md
│ ├── hugoisforlovers.md
│ └── migrate-from-jekyll.md
├── exampleSite
├── .gitignore
├── config.toml
├── content
│ ├── about
│ │ └── index.md
│ └── post
│ │ ├── creating-a-new-theme.md
│ │ ├── goisforlovers.md
│ │ ├── hugoisforlovers.md
│ │ └── migrate-from-jekyll.md
└── static
│ └── .gitkeep
├── images
├── screenshot.png
└── tn.png
├── layouts
├── 404.html
├── _default
│ ├── list.html
│ ├── rss.xml
│ ├── section.html
│ └── single.html
├── index.html
├── partials
│ ├── footer.html
│ ├── head.html
│ ├── js.html
│ ├── latest-posts.html
│ ├── logo.html
│ ├── nav.html
│ ├── news-list.html
│ ├── pagination.html
│ ├── post-list.html
│ ├── share.html
│ └── social.html
└── section
│ └── post.html
├── static
├── css
│ ├── fonts
│ │ ├── CevicheOne-Regular.ttf
│ │ └── Gafata-Regular.ttf
│ ├── highlight.css
│ ├── monosocialiconsfont.css
│ └── style.css
├── fontawesome
│ ├── css
│ │ └── font-awesome.min.css
│ └── fonts
│ │ ├── FontAwesome.otf
│ │ ├── fontawesome-webfont.eot
│ │ ├── fontawesome-webfont.svg
│ │ ├── fontawesome-webfont.ttf
│ │ ├── fontawesome-webfont.woff
│ │ └── fontawesome-webfont.woff2
├── fonts
│ ├── MonoSocialIconsFont-1.10.eot
│ ├── MonoSocialIconsFont-1.10.otf
│ ├── MonoSocialIconsFont-1.10.svg
│ ├── MonoSocialIconsFont-1.10.ttf
│ ├── MonoSocialIconsFont-1.10.woff
│ ├── icons.svg
│ ├── icons.ttf
│ └── icons.woff
├── images
│ ├── Rocket240.png
│ ├── Rocket480.png
│ ├── act.jpeg
│ ├── act2.jpeg
│ ├── avatar.png
│ ├── avatar@2x.png
│ └── favicon.ico
└── js
│ ├── highlight.js
│ ├── main.js
│ ├── rocket.js
│ ├── rocket.json
│ └── three.min.js
└── theme.toml
/.github/workflows/build.yml:
--------------------------------------------------------------------------------
1 |
2 | name: Deploy
3 |
4 | on:
5 | pull_request:
6 | branches:
7 | - master
8 | jobs:
9 | build:
10 | name: Test Site Build
11 | runs-on: ubuntu-latest
12 | steps:
13 | - name: Install Packages
14 | run: |
15 | pip install pyopenssl ndg-httpsclient pyasn1 coscmd
16 | - uses: actions/checkout@v3
17 | name: Checkout Code
18 | - name: Build Site
19 | run: |
20 | wget -O hugo.tar.gz https://github.com/gohugoio/hugo/releases/download/v0.83.1/hugo_0.83.1_Linux-64bit.tar.gz && tar xzf hugo.tar.gz
21 | ./hugo -v
22 |
--------------------------------------------------------------------------------
/.github/workflows/deploy.yml:
--------------------------------------------------------------------------------
1 |
2 | name: Deploy
3 |
4 | on:
5 | push:
6 | branches:
7 | - master
8 | workflow_dispatch:
9 | inputs:
10 | reason:
11 | description: 'why this workflow is triggered'
12 | required: true
13 | default: 'manually deploy site'
14 |
15 | jobs:
16 | deploy_gh_pages:
17 | name: Deploy to GitHub Pages
18 | runs-on: ubuntu-latest
19 | environment: "GitHub Action Deploy"
20 | steps:
21 | - name: Install Packages
22 | run: |
23 | pip install pyopenssl ndg-httpsclient pyasn1 coscmd
24 | - uses: actions/checkout@v3
25 | name: Checkout Code
26 | - name: Build Site
27 | run: |
28 | wget -O hugo.tar.gz https://github.com/gohugoio/hugo/releases/download/v0.83.1/hugo_0.83.1_Linux-64bit.tar.gz && tar xzf hugo.tar.gz
29 | ./hugo -v
30 | echo 'sjtug.org' > public/CNAME
31 | - name: Deploy to GitHub Pages (sjtug/sjtug.github.io)
32 | if: ${{ github.ref == 'refs/heads/master' }}
33 | uses: peaceiris/actions-gh-pages@v3
34 | with:
35 | deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
36 | publish_dir: ./public
37 | external_repository: sjtug/sjtug.github.io
38 | publish_branch: master
39 | user_name: 'github-actions[bot]'
40 | user_email: 'github-actions[bot]@users.noreply.github.com'
41 | force_orphan: true
42 | deploy_tcloud:
43 | name: Deploy to Tencent Cloud
44 | runs-on: ubuntu-latest
45 | environment: "Tencent Cloud API"
46 | steps:
47 | - name: Install Packages
48 | run: |
49 | pip install pyopenssl ndg-httpsclient pyasn1 coscmd
50 | - uses: actions/checkout@v3
51 | name: Checkout Code
52 | - name: Build Site
53 | run: |
54 | wget -O hugo.tar.gz https://github.com/gohugoio/hugo/releases/download/v0.83.1/hugo_0.83.1_Linux-64bit.tar.gz && tar xzf hugo.tar.gz
55 | ./hugo -v
56 | - name: Deploy to TCloud
57 | if: ${{ github.ref == 'refs/heads/master' }}
58 | run: |
59 | coscmd config -a "$TCLOUD_API_ID" -s "$TCLOUD_API_KEY" -b sjtug-portal-1251836446 -r ap-chengdu -m 32
60 | cd public && coscmd upload -rs . /
61 | env:
62 | TCLOUD_API_ID: ${{ secrets.TCLOUD_API_ID }}
63 | TCLOUD_API_KEY: ${{ secrets.TCLOUD_API_KEY }}
64 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /public/
2 |
--------------------------------------------------------------------------------
/.hugo_build.lock:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/.hugo_build.lock
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | env:
2 | global:
3 | - secure: "OYCxQIBeCXoDDFEZWJtT2Q0zdGT9C3Z4q7zEKksQOoI28bGrjuvq5hlkHEK44OoRxw5z7olSFPuvsRbGMTeLJOu7stkd9PvhSMAxfTMs3EtSIgRmdEIvBotpJF2di2inyFQC5voc99m/93kT5sJfzRPj6ltPsujhNbc7ybvBncKb/kEiogwUpH5MO2OTJ2BMCBI7ZgWGKhSiCiCkPGeD5YDDEVM9TUnOZFfcDPDe+R/xZNWvj378KvbwOC/SHGKQ3LckacnwH6cf2ok2dA6GlYiAuDKb+BAKO5lc+Cb0uA78LqpSX03tbSkqTt8LAiv8YWA2iKaS7wymelfDFidkBCDFt3ZE3zViUAfgL9YJBeIXXbntoK+elc3p7SSoNTe4SkgRLLczhIh8M1uWRn3AJRZBdW0lO8dY2heo9KqDua5LGQIko0KD6+2JfaiIsbr4eAOHN9hfaBNXF0DhhEjMXlYKWAzaUvILNSl6xEyTQQCV9UmmsZlt3mwlKeD/psrVLk9V55hkXCnr67KwNYyeIYIHIwHH8PVvFFahLnkjUmhuV01hMKu4BPDC9uPB8todSFkicN15AXKw5GKpDZlo49IO+/fMP0CzV1/gKPppq8eAVto4dWI+itNU8i5+lsulfKp8GHfDOnABQqVpqhbZIxa6+X8x9SmYoTN9UtWu5dU="
4 | - GIT_DEPLOY_DIR=public
5 | - GIT_DEPLOY_BRANCH=master
6 | - GIT_DEPLOY_USERNAME="Travis CI"
7 | - GIT_DEPLOY_EMAIL=vicluo96@gmail.com
8 | - secure: "KWDHzR5Ni6C2kr0KjqWak75WqCSBD7OidVfghGeIf3dfSscmO1Hmryfz18CF1tijX3o2mOVWRdyXNq9eILon34ZeP0qt0mYIAm0yBp8sAR72WR4MhYdBlffFCIDyEDyRIbUGdtm1fA/2ChqhbUtPiJO83SKMwJ9uXXLwayuf3o/vLnYhqhwt+qjd38VDj17FBVqhNcIXJY3BzCVVxTjr8aiVoOvljAc8D9kAv/AsLiRpuI6YtPm7aGr+vhaT5MTN18W+TLet2jIOB+9kcwRCbHSoC/uVKy46PmuIw0hxij8LnBzeQpVz8tdt/tkYG6mxSV/yxmGuaLZldMK3eTuVXimOBcHCRbofXyFJuIEe6Z10eRPvhJLsZHboGxrG0WMTd1F9iSlr9WxCmk26SyDEu83M/75FRq4KVxZCASX5mK+B1zJ9/lHkEZz63U79Ll9h7x1szDQWLPMUzw03+jfy4UYclIR9mfnkafaRyMIFzPtj6dkW/5dWqWmRUu5tP0+QAqzJBf7DuVkZ4ydwljkVgb0P72TLacP5W0NwnN810Z0BR0aT6eQB1BiOdYbg5hKfe/mXajqjgQ23WNbXiLrOpOX864mT0jDCWECeyK4x570A+GwwCxIYZ+zXwVxoKlyUL5LXTOzGM1vbvr55pv1ovZsl4lsPGwWU78QWAfwKZ6Y="
9 | - secure: "CgfrvyASnzYAhv+Ujx9/b3O6cLNUUnWZ5ZcjvVodzBtYbBg0plPVq+Yc98B/EFOVrYZz2JbZJKA3yfof0mRNZ7FCYbGaBQpylymdmH0eHRPxG63AiRrEtLlzLECQBv+7FQcsRMymGunjTq9Ln5Bm5omy0S/XL4ds01HoPUiC/+7SJWS9zmlTcXoQPVLy2zNBfMcnacDasNd7HiQN8WqFnM9lwpdwX2zvCF+hd61aPniisEISim0a/0pTGiYZKUBb6PnLaje6wgNMbrB7B6gqkQ5HCgquNJNMq6RDhrXcBC4Y/AbMmc2vTY0uSs+2gpeAAaYTvAVoVVqaDDBacMqNWme3tJtsj9p7Hb/sryBQF2RnroFtssB9RR2hOH4gloU9v4Dxjh66/6KmpzLmiDv7ANHGe7LzDbsqf6szyFnMZhzh2ZxnYMLeUXhGQYbrLzixm88E2zwpgjodqXSY6899Cn+zuFYfP1ekXv0w7GTWcv9upy7+n1pUBXBDV/zGoYexdoI0mgUjK3ynEe8Gbjmr1C5RW2HFXNVqlqpMDqeojPGuYP/aRMozVdpkdiLIqEQrujUsOCy2tg8NKzxOSs5e593P8vHt/WJPGhpN5pUGqSancFJLMpE5vlvab6I+AWiCJIopIuUHMS016BLXBVT20G2aDxKLoh2I/ax8KZkbIuY="
10 | branches:
11 | only:
12 | - master
13 |
14 | install:
15 | - rm -rf public || exit 0
16 | - wget -O hugo.tar.gz https://github.com/gohugoio/hugo/releases/download/v0.83.1/hugo_0.83.1_Linux-64bit.tar.gz && tar xzf hugo.tar.gz
17 | script:
18 | - ./hugo -v
19 | after_success:
20 | - sudo apt-get update && sudo apt-get install -yy python-pip python-dev build-essential && sudo pip install pyopenssl ndg-httpsclient pyasn1 coscmd
21 | - coscmd config -a "$TCLOUD_API_ID" -s "$TCLOUD_API_KEY" -b sjtug-portal-1251836446 -r ap-chengdu -m 32 && cd public && coscmd upload -rs . /
22 | - cd ..
23 | - cp .travis.yml public
24 | - echo 'sjtug.org' > public/CNAME
25 | - bash deploy.sh
26 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # SJTUG Portal
2 |
3 | sources for http://sjtug.org . Powered by Hugo.
4 |
5 | ## Contribution
6 | See http://sjtug.org/post/2017-01-15-writing-guide/
7 |
--------------------------------------------------------------------------------
/archetypes/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/archetypes/.gitkeep
--------------------------------------------------------------------------------
/build.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/bash
2 |
3 | mkdir -p public && cd public
4 | git pull origin master || git clone https://github.com/sjtug/sjtug.github.io.git .
5 | cd ..
6 | hugo -v
7 | ls -l public
8 |
--------------------------------------------------------------------------------
/config.toml:
--------------------------------------------------------------------------------
1 | # Site settings
2 | baseurl = "https://sjtug.org/"
3 | languageCode = "zh-cn"
4 | title = "SJTUG - A Joyful Techie User Group"
5 | theme = "sjtug"
6 | # Enter your tracking code to enable Google Analytics
7 | googleAnalytics = ""
8 | # Disable comments by leaving disqusShortname empty
9 | disqusShortname = ""
10 | canonifyURLs = true
11 |
12 | [params]
13 | name = "SJTUG"
14 | description = "SJTU *NIX User Group"
15 | # Enter optionally your twitter account
16 | twitter = "sjtug"
17 | enableRSS = true
18 |
19 | # Add custom assets with their paths relative to the static folder
20 | customCSS = []
21 | customJS = []
22 |
23 | # The variables below are optionally too and can be used to
24 | # translate or customize each string of the theme.
25 |
26 | # Navigation links
27 | home = ""
28 | news = "Archive"
29 | softwares = "Mirrors"
30 | about = "About"
31 | subscribe = "Contacts"
32 | # Pagination links
33 | olderPosts = ""
34 | newerPosts = ""
35 | readMore = ""
36 | copyright = ""
37 | # Sharing options and author information in posts
38 | aboutAuthor = "SJTUG information automata"
39 | tweet = ""
40 | share = ""
41 | # 404 page
42 | title404 = ""
43 | subtitle404 = ""
44 |
45 | # Choose a font for the social icons in the footer. Either "mono-social" or "font-awesome"
46 | iconFont = "font-awesome"
47 | # The social icons can be styled differently if you use mono as font - circle, rounded, or empty
48 | socialIconStyle = "circle"
49 |
50 | [taxonomies]
51 | tag = "tags"
52 |
53 | # Add additional social link entries underneath
54 | [social]
55 | twitter = "https://www.twitter.com/sjtug"
56 | github = "https://www.github.com/sjtug"
57 |
58 | [markup.goldmark.renderer]
59 | unsafe = true
60 |
--------------------------------------------------------------------------------
/content/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/content/.gitkeep
--------------------------------------------------------------------------------
/content/about/_index.md:
--------------------------------------------------------------------------------
1 |
2 | +++
3 | date = "2016-11-27T15:12:37+08:00"
4 | title = "About"
5 | +++
6 |
7 |
8 | SJTUG's a Joyful Techie User Group in [Shanghai Jiao Tong University](http://sjtu.edu.cn). Topics will range over projects, techniques, resources, problems, cool ideas, or just any cool stuff relevant to technology. Discussions and talks take in the form of traditional [Linux User Groups](https://en.wikipedia.org/wiki/Linux_user_group) that involves mailing lists and meet-ups. Hacking Thursday is our primary on-campus event since 2013 that we meet once a week for round table discussions. SJTUG is non-profit and absolutely free. All you need is curiosity and a passion for cool technologies.
9 |
--------------------------------------------------------------------------------
/content/contacts/_index.md:
--------------------------------------------------------------------------------
1 |
2 | +++
3 | date = "2016-11-27T15:26:37+08:00"
4 | title = "Contacts"
5 | +++
6 |
7 | ## Code of conduct
8 | > You just talk about whatever you'd like to talk
9 | about technology.
10 |
11 | > 你可以畅所欲言 有关科技方面
12 |
13 | To join us, you promise to follow the Code of Conduct above.
14 |
15 | 要加入我们,你承诺遵守上述 Code of Conduct
16 |
17 | ## Join us
18 |
19 | SJTUG 的成员分布在各个讨论组中。欢迎加入我们:[SJTUG 2021 年春季招新](https://sjtug.org/post/2021-03-09-welcome/)。
20 |
21 | 也欢迎关注我们的公共社交账号:
22 |
23 | - Twitter: [@sjtug](http://twitter.com/sjtug)
24 | - GitHub: [@sjtug](https://github.com/sjtug)
25 |
--------------------------------------------------------------------------------
/content/post/2016-10-04-dependent-type.md:
--------------------------------------------------------------------------------
1 |
2 | +++
3 | date = "2016-10-04T22:55:00+08:00"
4 | title = "SJTUG例行分享:Dependent Type"
5 | tags = ["news", "sharing"]
6 | image = "dependent-type.jpg"
7 | activity_time = "2016-10-04T18:00:00+08:00"
8 | activity_place = "Main Library E316"
9 | author = "hawnzug"
10 | +++
11 |
12 |
13 | 10月4日晚18:00 - 21:00,@邵成 @钱泽森 两位同学在新图E316向大家介绍 Dependent Type。
14 |
15 | 邵成:Fun with Dependent Types in Haskell
16 | 钱泽森:How to Write a Safe Printf in Agda
17 |
18 | 视频在 [LiveEdu](https://www.liveedu.tv/sjtug/) 可以看到
19 |
20 | **分享资料** : [sjtug/sharing](https://github.com/sjtug/sharing/tree/master/2016-10-04)
21 |
--------------------------------------------------------------------------------
/content/post/2016-10-16-c11-memory-model.md:
--------------------------------------------------------------------------------
1 |
2 | +++
3 | date = "2016-10-16T22:45:00+08:00"
4 | title = "SJTUG例行分享:C11 Memory Model"
5 | tags = ["news", "sharing"]
6 | activity_time = "2016-10-16T18:00:00+08:00"
7 | activity_place = "Main Library B416"
8 | image = "memory-model.png"
9 | author = "hawnzug"
10 | +++
11 |
12 |
13 | 10月16日晚18:00,@贾枭 学长在新图B416向大家介绍 C11 Memory Model 的有关知识。
14 |
15 | 视频在 [LiveEdu](https://www.liveedu.tv/sjtug/) 可以看到。
16 |
17 | **分享资料** : [sjtug/sharing](https://github.com/sjtug/sharing/tree/master/2016-10-16)
18 |
--------------------------------------------------------------------------------
/content/post/2016-10-29-physical-engine.md:
--------------------------------------------------------------------------------
1 |
2 | +++
3 | date = "2016-10-29T23:45:00+08:00"
4 | title = "SJTUG例行分享:简单的物理引擎"
5 | tags = ["news", "sharing"]
6 | activity_time = "2016-10-29T18:00:00+08:00"
7 | activity_place = "Main Library E316"
8 | image = "physics-engine.png"
9 | author = "hawnzug"
10 | +++
11 |
12 | 10月29日晚18:00将在新图E316进行例行分享,由大一巨巨 @时光机 给大家带来「简单的物理引擎」分享,欢迎大家来参与活动
13 |
14 | **分享资料** : [sjtug/sharing](https://github.com/sjtug/sharing/tree/master/2016-10-16)
15 |
--------------------------------------------------------------------------------
/content/post/2016-11-12-life-of-a-packet.md:
--------------------------------------------------------------------------------
1 |
2 | +++
3 | date = "2016-11-12T23:40:00+08:00"
4 | title = "SJTUG例行分享:Life of a packet"
5 | tags = ["news", "sharing"]
6 | activity_time = "2016-11-12T18:00:00+08:00"
7 | activity_place = "Guangbiao building"
8 | image = "life-of-a-packet.png"
9 | author = "hawnzug"
10 | +++
11 |
12 | 11月12日晚18:00将在光彪楼二楼进行例行分享,由@贾枭 学长给大家带来分享 Life of a packet,欢迎大家来参与活动
13 |
14 | **分享资料** : [sjtug/sharing](https://github.com/sjtug/sharing/tree/master/2016-11-12)
15 |
--------------------------------------------------------------------------------
/content/post/2017-01-08-halvm.md:
--------------------------------------------------------------------------------
1 |
2 | +++
3 | date = "2017-01-08T20:55:00+08:00"
4 | title = "SJTUG例行分享:HaLVM"
5 | tags = ["news", "sharing"]
6 | image = "halvm.jpg"
7 | activity_time = "2017-01-08T15:00:00+08:00"
8 | activity_place = "Main Library E210"
9 | author = "htfy96"
10 | +++
11 |
12 |
13 | 本周日(1月8日)下午15:00 - 17:30,@张震巨巨在新图E210给大家介绍HaLVM项目,欢迎大家来参加分享
14 |
15 |
16 | 项目地址:[Github/HaLVM](https://github.com/GaloisInc/HaLVM)
17 |
18 | 巨巨主页:[Github/izgzhen](https://github.com/izgzhen)
19 |
20 | > HaLVM(Haskell Lightweight Virtual Machine)是一个让Glasgow Haskell Compiler套件直接在Xen虚拟环境下运行的项目。
21 |
22 | **分享资料** : [sjtug/sharing/HaLVM](https://github.com/sjtug/sharing/tree/master/2017-01-08)
23 |
--------------------------------------------------------------------------------
/content/post/2017-01-14-announcing-new-portal.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2017-01-14T20:55:00+08:00"
3 | title = "SJTUG新版首页上线"
4 | tags = ["news", "announcement"]
5 | author = "htfy96"
6 | +++
7 |
8 | 我们的首页已经更新到基于Hugo的版本,希望能给大家带来更好的阅读体验。
9 |
10 | 接下来这里将会加入例行分享的报道及一些技术文章,欢迎大家订阅。
11 |
--------------------------------------------------------------------------------
/content/post/2017-01-15-writing-guide.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2017-01-15T23:12:56+08:00"
3 | title = "sjtug.org写作指南"
4 | tags = ["guide"]
5 | author = "htfy96"
6 | +++
7 |
8 | 这里介绍了一下发布新文章的步骤
9 |
10 | ## 安装Hugo, 或直接新建文章
11 | 安装`hugo`然后`hugo new post/YYYY-MM-DD-article-title.md`;或直接新建`content/post/YYYY-MM-DD-article-title.md`,手动指定`date`
12 |
13 | 软件源新闻放在`content/post/mirror-news`下面,带上`mirror-news`的tag。
14 |
15 | 软件源帮助放在`content/post/mirror-help`下面,带上`mirror-help`的tag,title设定成和name相同(注意大小写)。
16 |
17 | ## Front matters
18 | 头部`+++`的front matters部分,可以指定的部分有:
19 |
20 | - `title = "article title"` 必填
21 | - `author = "htfy96"` 必填
22 | - `tags = ["tag1", "tag2"]` 建议填写,只有包含`news` tag的文章才会在首页显示,其它常用tag包括`announcement`, `guide`, `sharing`等
23 | - `activity_time = "2017-01-08T15:00:00+08:00"`,格式同date,当有`sharing`标签时建议填写,代表活动开始时间
24 | - `activity_place = "Main Library"`,同上,代表活动地点
25 | - `draft = true`,当不想立即发布时才填写,默认情况`false`不用填写
26 |
27 | ## 测试并提交
28 | - 使用`hugo server`看看最终效果是否理想
29 | - 提交到 https://github.com/sjtug/portal ,主页会自动生成到sjtug.org
30 |
31 |
--------------------------------------------------------------------------------
/content/post/2017-02-21-hotpot.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2017-02-21T19:41:47+08:00"
3 | title = "SJTUG开学聚餐"
4 | tags = ["news", "dining"]
5 | activity_time = "2017-02-25T17:30:00+08:00"
6 | activity_place = "拖鞋门"
7 | author = "htfy96"
8 | +++
9 |
10 | 又到了开学聚餐的时间啦!这次聚餐还是定在欧尚部落情,在本周六(25日)晚5:30GMT+8于拖鞋门前旗杆下集合。欢迎各位过来吃锅!
11 |
12 | 如果时间安排不合适,可以填写[这个表单](https://goo.gl/forms/tXNbYezH0pOeAHe83)。如果时间冲突的同学多的话可能会进行调整
13 |
14 |
--------------------------------------------------------------------------------
/content/post/2017-03-09-gpg-sign-party.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2017-03-09T22:11:40+08:00"
3 | title = "GPG Sign Party & Yubikey安利"
4 | tags = ["news", "sharing"]
5 | activity_time = "2017-03-12T15:00:00+08:00"
6 | activity_place = "Main Library E216"
7 | author = "htfy96"
8 | +++
9 |
10 | 本周日(12日)下午3点到5点,在新图E216将举行GPG Sign Party&Yubikey安利活动。将手把手教大家签发/交换密钥与加密、签名信息,欢迎参加!
11 |
12 | 校内同学点击[这里加入学习室](http://studyroom.lib.sjtu.edu.cn/reserve_plus.asp)。
13 | 申请单号94388,密码165165
14 |
--------------------------------------------------------------------------------
/content/post/2017-06-12-summer-class.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | +++
4 | date = "2017-06-12T15:58:00+08:00"
5 | lastmod = "2017-06-24T21:20:00+08:00"
6 | title = "SJTUG暑期课堂报名中!"
7 | tags = ["news", "summer_school"]
8 | activity_time = "2017-06-29T18:00:00+08:00"
9 | activity_place = "东上院309"
10 | author = "htfy96"
11 | +++
12 |
13 | UPDATE: [课程主页](http://sjtug.org/post/2017-06-24-summer-class-portal/)已经开通!
14 |
15 | SJTUG本次暑假开设了夏季第二课堂,将面向初学者与感兴趣同学的进行3~4次分享,主要内容见下:
16 |
17 | 日期 | 地点 | 主讲人 | 内容
18 | --------|-------|---------|-----
19 | 6月29日(19周周四) | 东上309 | [@htfy96](https://intmainreturn0.com) | 开源与自由软件历史。以几个人物作为主线科普自由软件及其相关运动的起伏与发展,不需要代码水平的科普性质讲座。
20 | 7月6日(20周周四) | 待定 | [@茄子(ant_sz)](https://io-meter.com) | 待定
21 | 7月13日(21周周四) | 东上309 | [@Phijack](javascript:;) | Game Theory and Mechanism
22 | 7月20日(22周周四) | 东上309 | [@codeworm96](http://codeworm96.github.io) | Haskell School of Music,探索用程序语言的方式对音乐进行抽象,不要求编程或音乐理论基础。[详细介绍点此](http://codeworm96.github.io/posts/2017-06-15-HSoM.html)
23 |
24 |
25 | 课堂将保证小规模,确保来的同学都有当面指导的机会。欢迎对技术感兴趣的同学来参加!我们尤其欢迎在Linux、自由软件、函数式编程等领域有兴趣的同学。
26 |
27 | 强烈建议加最后的微信群以获取资料与课前信息。
28 |
29 | 不管你是否已经毕业,还是只能来几节课,都欢迎填写这张表格报名:
30 |
31 | 立即报名
32 |
33 | 之后,所有的Slides都会在我们的[Github仓库](https://github.com/sjtug/sharing)公开,欢迎Star~
34 |
35 | 欢迎想来的同学长按识别二维码加群或加微信69oulciV@:
36 | 
37 |
--------------------------------------------------------------------------------
/content/post/2017-06-24-summer-class-portal.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2017-06-24T20:29:00+08:00"
3 | title = "2017-SJTUG暑期课堂课程主页"
4 | tags = ["summer_school"]
5 | activity_time = "2017-06-29T18:00:00+08:00"
6 | activity_place = "东上院309"
7 | author = "htfy96"
8 | +++
9 |
10 | 这里是SJTUG 2017暑期课堂的课程主页,之后所有的课程时间、地点以本页为准,相关的资料也会在本页发放。
11 |
12 | > UPDATE(06-25): [人员分流名单](/post/2017-06-25-summer-class-schedule)已经公布,请尽快查看自己的时间
13 | > UPDATE(06-29):更新第一周课件及第二周时间地点
14 | > UPDATE(07-01):更新第二周主题
15 |
16 |
17 | ## 6月29日/开源与自由软件历史
18 | 时间:6月29日(19周周四)18:00
19 |
20 | 地点:东上309
21 |
22 | 主讲人:[@htfy96](https://intmainreturn0.com)
23 |
24 | 课件:[在线查看](http://sjtug.org/sharing/2017-06-29/) [下载](https://github.com/sjtug/sharing/tree/master/2017-06-29)
25 |
26 | ## 7月7日/Git使用
27 | 时间:__7月7日(20周周五)20:30__(有更改)
28 |
29 | 地点:东中4-302
30 |
31 | 主讲人:[@茄子(ant_sz)](https://io-meter.com)
32 |
33 | 课件:N/A
34 |
35 | ## 7月13日/Game Theory and Mechanism
36 | 时间:7月13日(21周周四)18:00
37 |
38 | 地点:东上309
39 |
40 | 主讲人:[@Phijack](javascript:;)
41 |
42 | 课件:N/A
43 |
44 | ## 7月20日/Haskell School of Music
45 |
46 | 时间:7月20日(22周周四)18:00
47 |
48 | 地点:东上309
49 |
50 | 主讲人:[@codeworm96](http://codeworm96.github.io)
51 |
52 | 课件:N/A
53 |
54 | ## 获取最新资讯
55 |
56 | 可以通过[RSS订阅](http://sjtug.org/tags/summer_school/index.xml)或关注我们的微信号@sjtunix获取最新资讯:
57 |
58 | 
59 |
--------------------------------------------------------------------------------
/content/post/2017-06-25-summer-class-schedule.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2017-06-25T21:57:00+08:00"
3 | title = "暑期课堂学生分流"
4 | tags = ["summer_school"]
5 | activity_time = "2017-06-29T18:00:00+08:00"
6 | activity_place = "东上院309"
7 | author = "htfy96"
8 | +++
9 |
10 | 由于暑期课堂报名人数接近90人,教室无法容纳这么多的人数,因此我们不得不采取分流措施。选择这门课的老师与同学建议按照以下表格前来上课。
11 |
12 | 当然,如果您有特别感兴趣的话题可以随时来听,但可能会发生没有座位的情况。
13 |
14 | ## 建议在第1、4周(6月29日/7月20日)前来的老师与同学的手机后4位
15 |
16 | ```
17 | 0076
18 | 0158
19 | 0203
20 | 1025
21 | 1991
22 | 2073
23 | 2180
24 | 2529
25 | 2537
26 | 2701
27 | 3081
28 | 3136
29 | 3253
30 | 3739
31 | 4746
32 | 5042
33 | 5301
34 | 5397
35 | 5425
36 | 5532
37 | 6265
38 | 6527
39 | 6708
40 | 6723
41 | 6985
42 | 7035
43 | 7051
44 | 7076
45 | 7586
46 | 7683
47 | 8038
48 | 8189
49 | 8851
50 | 9108
51 | 9481
52 | ```
53 | 以及学号是B045090027,没有填写手机号的同学
54 |
55 | ## 建议在第2、3周(7月7日/7月13日)前来的老师与同学的手机后4位
56 |
57 | ```
58 | 0039
59 | 0069
60 | 0153
61 | 0159
62 | 0200
63 | 0320
64 | 0709
65 | 0874
66 | 1160
67 | 1172
68 | 1362
69 | 1691
70 | 1716
71 | 2127
72 | 2530
73 | 2596
74 | 2913
75 | 3215
76 | 3580
77 | 3680
78 | 4486
79 | 4648
80 | 4782
81 | 5028
82 | 5163
83 | 5209
84 | 5336
85 | 5585
86 | 5732
87 | 5831
88 | 5996
89 | 6090
90 | 6217
91 | 6241
92 | 6321
93 | 7065
94 | 7076
95 | 7317
96 | 7450
97 | 7597
98 | 7598
99 | 7931
100 | 7959
101 | 8127
102 | 8360
103 | 8525
104 | 8676
105 | 8972
106 | 9150
107 | 9371
108 | 9731
109 | ```
110 |
111 |
--------------------------------------------------------------------------------
/content/post/2017-10-28-performance-measurement.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2017-10-28T19:00:00+08:00"
3 | title = "SJTUG例行分享:系统性能的测量与分析"
4 | tags = ["news", "sharing"]
5 | activity_time = "2017-10-28T15:00:00+08:00"
6 | activity_place="Main Library A316"
7 | author="htfy96"
8 | +++
9 |
10 | 本周六将由贾枭学长给大家分享系统性能的测量与分析的常用思路与技巧,欢迎大家前来。
11 |
12 | [Slides下载](https://github.com/sjtug/sharing/tree/master/2017-10-28)
13 |
--------------------------------------------------------------------------------
/content/post/2017-11-02-haskell-talk-01.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2017-11-02T22:00:00+08:00"
3 | title = "Haskell小课堂 01"
4 | tags = ["news", "sharing"]
5 | activity_time = "2017-11-04T15:00:00+08:00"
6 | activity_place="Main Library B118"
7 | author="htfy96"
8 | +++
9 |
10 | Haskell 是一门默认惰性求值的纯函数式语言,在 stackoverflow 的统计中它是程序员在夜晚和双休日使用最多的语言。本周六的 Haskell 小课堂将带大家简单了解一下 Haskell 的语法和特性,以及代数数据类型、模式匹配、typeclass 等基础知识,为后续课程作铺垫。本次小课堂旨在从入门到入门,不需要前置知识。
11 |
12 | 本周六下午3:00将由王竹阳同学在新图B118给大家带来Haskell小课堂的第一节课程,欢迎同学们前来探讨。
13 |
14 |
15 |
--------------------------------------------------------------------------------
/content/post/2018-03-10-intro.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-03-10T21:00:00+08:00"
3 | title = "SJTUG 2018第一次分享:FOSS历史与Web开发入门"
4 | tags = ["news", "sharing"]
5 | activity_time = "2018-03-10T19:00:00+08:00"
6 | activity_place="Main Library E210"
7 | image="2018-01.jpg"
8 | author="htfy96"
9 | +++
10 |
11 | 本周六(10日)晚7点将在 图书馆主馆 E210 进行本学期第一次分享,欢迎大家带电脑前来参加。内容有:
12 |
13 | 1. Linux 入门与开源社区 @ 骆铮
14 | 2. Python Web Application 开发入门 @ 范舟
15 |
16 | 届时会通过teamviewer等进行现场直播,slides 会上传到 https://github.com/sjtug/sharing
17 |
--------------------------------------------------------------------------------
/content/post/2018-03-31-concatenative-programming.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-03-26T21:00:00+08:00"
3 | title = "SJTUG 2018第二次分享:Concatenative Programming 初探"
4 | tags = ["news", "sharing"]
5 | activity_time = "2018-03-31T19:00:00+08:00"
6 | activity_place="Main Library E216"
7 | author="Evensgn"
8 | +++
9 |
10 | 本周六(31日)晚 19:00 将在 图书馆主馆 E216 进行本学期第二次分享,欢迎大家带电脑前来参加。本次分享内容为:
11 |
12 | Concatenative Programming 初探 @ 王竹阳
13 |
14 | 届时会通过teamviewer等进行现场直播,slides 会上传到 https://github.com/sjtug/sharing
15 |
--------------------------------------------------------------------------------
/content/post/2018-04-22-memory-safety-in-rust.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-04-14T19:00:00+08:00"
3 | title = "SJTUG 2018 第 3 次分享:Rust 中的内存安全"
4 | tags = ["news", "sharing"]
5 | activity_time = "2018-04-22T19:00:00+08:00"
6 | activity_place="Main Library E309"
7 | author="Evensgn"
8 | +++
9 |
10 | 本周日(22日)晚 19:00 将在 图书馆主馆 E309 进行本学期第 3 次分享,欢迎大家带电脑前来参加。本次分享内容为:
11 |
12 | Rust 中的内存安全 @ 张宇宁
13 |
14 | 届时会通过teamviewer等进行现场直播,slides 会上传到 https://github.com/sjtug/sharing
15 |
--------------------------------------------------------------------------------
/content/post/2018-05-12-cooperative-training.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-05-08T19:00:00+08:00"
3 | title = "SJTUG 2018 第 4 次分享:合作训练(Cooperative Training)"
4 | tags = ["news", "sharing"]
5 | activity_time = "2018-05-12T19:00:00+08:00"
6 | activity_place="Main Library E216"
7 | author="Evensgn"
8 | +++
9 |
10 | 本周六(12日)晚 19:00 将在 图书馆主馆 E216 进行本学期第 4 次分享,欢迎大家带电脑前来参加。本次分享内容为:
11 |
12 | 合作训练:CoT Cooperative Training @ 卢思迪
13 |
14 | 届时会通过 teamviewer、[bilibili 直播间](https://live.bilibili.com/6254516) 等进行现场直播,slides 会上传到 https://github.com/sjtug/sharing
15 |
16 |
--------------------------------------------------------------------------------
/content/post/2018-06-06-summer-class.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-06-06T19:35:00+08:00"
3 | lastmod = "2018-06-06T19:35:00+08:00"
4 | title = "SJTUG 2018 暑期课堂预告"
5 | tags = ["news", "summer_school"]
6 | activity_time = "2018-07-02T18:00:00+08:00"
7 | activity_place = ""
8 | author = "Evensgn"
9 | +++
10 |
11 | 6-30 Update: 请大家注意,由于社总安排变更,上课地点改为东中院 1-103
12 |
13 | Update: 课程具体时间地点安排已更新
14 |
15 | > [报名链接点这里](https://www.wjx.top/m/24873152.aspx)
16 | >
17 | > 课程安排情况(社总信息):[https://mp.weixin.qq.com/s/OiJNz16c3uQoRc8vkn7CxA](https://mp.weixin.qq.com/s/OiJNz16c3uQoRc8vkn7CxA)
18 |
19 | SJTUG 本次暑假小学期再次开设了夏季课堂,面向对编程及相关技术感兴趣的同学进行 5~6 次分享,主讲人除 SJTUG 成员外,预计还将邀请在业界的学长做 Guest Talk/Sharing,以下是主要内容预告(暂定,持续更新中):
20 |
21 | 活动 | 时间 | 地点 | 主讲人 | 内容
22 | ------- | ---- | -------| ---------|-----
23 | Tutorial | 07.03 19:00 | 东中院 1-103 | [@Evensgn](http://evensgn.com) | Git 使用教学
24 | Sharing | 07.06 19:00 | 东中院 1-103 | @littleRound | 计算机工作原理漫谈
25 | Guest Talk | 07.10 19:00 | 东中院 1-103 | 周健,依图科技研发总监,上海交大计算机系学士、硕士;亚洲首个世界大学生程序设计竞赛世界冠军 | 从摩尔定律到行星级的智能系统————漫谈 AI 时代的过去、现在和将来
26 | Sharing | 07.13 19:00 | 东中院 1-103 | @footoredo | 浅谈密码学与密码
27 | Sharing | 07.17 19:00 | 东中院 1-103 | [@茄子(ant_sz)](https://io-meter.com) | 基于 KV Store 的实时多维数据分析
28 | Guest Sharing | 07.20 19:00 | 东中院 1-103 | 施闻轩,PingCAP 工程师 | A small bite of Rust
29 |
30 | 欢迎感兴趣的同学们参加!
31 |
32 | 暑期课堂结束之后,所有讲者的 slides 会在我们的[Github仓库](https://github.com/sjtug/sharing) 公开,欢迎大家 Star~
33 |
--------------------------------------------------------------------------------
/content/post/2018-12-15-polymorphism-in-cpp.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-12-08T19:00:00+08:00"
3 | title = "SJTUG 技术分享:C++中的运行期与编译期多态"
4 | tags = ["news", "sharing"]
5 | activity_time = "2018-12-15T19:00:00+08:00"
6 | activity_place="Tsung-Dao Lee Library 209"
7 | author="Evensgn"
8 | +++
9 |
10 | 下周六(15日)晚 19:00 将在 李政道图书馆 209 进行 SJTUG 技术分享,欢迎大家带电脑前来参加。本次分享内容为:
11 |
12 | C++中的运行期与编译期多态 (Runtime and Compile-Time Polymorphism) in C++ @ 任云玮
13 |
14 | 届时会通过 teamviewer、[bilibili 直播间](https://live.bilibili.com/6254516) 等进行现场直播,slides 会上传到 https://github.com/sjtug/sharing
15 |
--------------------------------------------------------------------------------
/content/post/2019-04-01-task-oriented-dialogue.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2019-04-01T19:00:00+08:00"
3 | title = "SJTUG 技术分享:任务型对话概览"
4 | tags = ["news", "sharing"]
5 | activity_time = "2019-04-01T19:00:00+08:00"
6 | activity_place="Main Library E312"
7 | author="Evensgn"
8 | +++
9 |
10 | 周一(4月1日)晚 19:00 将在 图书馆主馆 E312 进行 SJTUG 技术分享,欢迎大家带电脑前来参加。本次分享内容为:
11 |
12 | 任务型对话概览 @ 刘啸远
13 |
14 | 届时会通过 teamviewer、[bilibili 直播间](https://live.bilibili.com/6254516) 等进行现场直播,slides 会上传到 https://github.com/sjtug/sharing
15 |
--------------------------------------------------------------------------------
/content/post/2019-09-18-build-system.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2019-09-12T16:00:00+08:00"
3 | title = "SJTUG 技术分享:Build system, lazy evaluation and incremental computation"
4 | tags = ["news", "sharing"]
5 | activity_time = "2019-09-18T18:00:00+08:00"
6 | activity_place="Main Library E216"
7 | author="Evensgn"
8 | +++
9 |
10 | 在9月18日我们将会进行一次SJTUG技术分享以及开学吃锅活动!
11 |
12 | 本次带来技术分享的是张震学长,技术分享结束后是吃锅活动,欢迎大家参加技术分享/吃锅/both!
13 |
14 | 技术分享活动时间:9月18日 18:00-19:00
15 | 地点:新图书馆 E216
16 |
17 | 标题:Build system, lazy evaluation and incremental computation
18 |
19 | 摘要:什么是 Build System(构建系统)的本质?工程实践中为什么有 make、bazel 等众多“轮子”?它们之间的区别是什么?Build system 和更为基础的 Lazy Evaluation(惰性求值)和 Incremental Computation(增量计算)这两种紧密联系的计算概念又有何联系?如何在你的开发实践中运用惰性求值和增量计算?这些概念在浏览器布局引擎、自动代码生成等应用里有什么样的应用?这次分享活动将从实际代码出发来探讨这些话题,并思考算法开发的未来趋势。
20 |
21 | 届时会通过 teamviewer、[bilibili 直播间](https://live.bilibili.com/6254516) 等进行现场直播,slides 会上传到 https://github.com/sjtug/sharing
22 |
--------------------------------------------------------------------------------
/content/post/2021-03-09-welcome.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2021-03-09T23:00:00+08:00"
3 | title = "SJTUG 2021 年春季招新"
4 | tags = ["news"]
5 | author="skyzh"
6 | +++
7 |
8 | SJTUG (上海交通大学 Linux 用户组) 是一个非盈利的技术组织。只要你对 \*nix 相关技术感兴趣、有热情,即可成为我们的一员。
9 |
10 |
11 | 成为 SJTUG 的一员,即可参与:
12 |
13 | * 不定期的技术分享活动。
14 | * 不确定的学期吃锅活动。
15 | * 参与维护软件源镜像站。(仅限校内成员)
16 |
17 |
18 |
19 | 加入 SJTUG 成员所在的讨论组,即可成为 SJTUG 的一员。相关的活动通知也会同步发送到这些位置。目前 SJTUG 的成员主要出现在这些地方:
20 |
21 | * SJTUG 微信群。由于群人数即将达到限制,目前仅能通过邀请入群。
22 | * 2021 年新建的 QQ 群。群号 715273806。
23 | * 电报群。首先,关注 [SJTUG 镜像站的通知频道](https://t.me/sjtug_mirrors_news)。而后,加入频道关联的群组。
24 |
25 |
26 |
27 | 期待您的加入!
28 |
--------------------------------------------------------------------------------
/content/post/2021-11-20-rust-sharing.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2021-11-20T20:00:00+08:00"
3 | title = "SJTUG x Naive Systems 11 月吃吃喝喝与技术分享"
4 | tags = ["news", "sharing"]
5 | activity_time = "2021-11-26T18:30:00+08:00"
6 | activity_place = "电院E咖二楼"
7 | author = "skyzh"
8 | image = "2021-11.cover.jpeg"
9 | +++
10 |
11 | 下周五 (26日) 18:30 将在电院E咖二楼进行 SJTUG 吃吃喝喝和技术分享活动,欢迎大家参加~
12 |
13 | 本次分享的嘉宾是冷亦君同学,题目是“Use Abella to prove equivalence of datalog rules in Polonius (the new Rust borrow checker)”。
14 | 届时现场会提供小吃、SJTUG 贴纸、以及来自 Naive Systems 的纪念品。感谢 [Naive Systems](https://www.naivesystems.com) 对本次活动的赞助!活动安排如下:
15 |
16 | * 18:30 - 19:30 技术分享时间
17 | * 19:30 - 20:30 小吃和闲聊时间
18 |
19 | 电院E咖的位置在电子信息与电气工程学院 2 号楼和 3 号楼之间。
20 |
21 | 本次分享没有直播,下次一定。slides 已经上传到 [https://github.com/sjtug/sharing](https://github.com/sjtug/sharing)。
22 |
23 | 
--------------------------------------------------------------------------------
/content/post/2023-06-19-hpc-llm-train.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2023-06-19T21:00:00+08:00"
3 | title = "SJTUG x 交大超算 6 月吃吃喝喝与技术分享"
4 | tags = ["news", "sharing"]
5 | activity_time = "2023-06-19T14:00:00+08:00"
6 | activity_place = "电院E咖三楼"
7 | author = "lightquantum"
8 | image = "2023-06.cover.jpeg"
9 |
10 | +++
11 |
12 | 本周一 (19日) 14:00 在电院E咖三楼进行的 SJTUG 吃吃喝喝和技术分享活动圆满结束~
13 |
14 | 本次分享的嘉宾是方禹舜同学,题目是“面向超算集群的大语言模型并行训练初探”,活动中探讨了如何突破计算和内存资源的限制,采用并行化方法训练以大语言模型为首的各类大规模模型,并简短介绍了上海交通大学学生超算队的活动及相关超算赛事。
15 |
16 | 现场提供了小吃以及 SJTUG 贴纸。日后的吃吃喝喝活动不出意外也会继续提供以上福利,欢迎蹭饭!感谢 [交大网络信息中心](https://net.sjtu.edu.cn)([交大高性能计算中心](https://hpc.sjtu.edu.cn/)) 对本次活动的赞助!
17 |
18 | 本次分享在 b 站上进行了直播,录播已经上传到 [Dropbox](https://www.dropbox.com/scl/fi/wk0sej7xrj39hwa4l6wiq/2023-06-19-14-16-41.mp4?dl=0&rlkey=2apx0eamrgcanzcddwrnuekkd)。slides 已经上传到 [https://github.com/sjtug/sharing](https://github.com/sjtug/sharing)。
19 |
20 | 
--------------------------------------------------------------------------------
/content/post/mirror-help/alhp.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "alhp"
3 | tags = ["mirror-help"]
4 | author = "Misaka13514"
5 | +++
6 |
7 | ALHP 是一个基于 Arch Linux 官方软件仓库使用 [LTO(链接时优化)](https://en.wikipedia.org/wiki/Interprocedural_optimization)、不同的 [x86-64 特性级别](https://www.phoronix.com/scan.php?page=news_item&px=GCC-11-x86-64-Feature-Levels)和 `-O3` 提供构建的非官方用户仓库。
8 |
9 | 完整的包信息列表(包名称/架构/维护者/状态)请[点击这里](https://status.alhp.dev)查看。
10 |
11 | 仓库主地址:https://somegit.dev/ALHP/ALHP.GO
12 |
13 | 以下内容翻译并修改自 [ALHP README](https://somegit.dev/ALHP/ALHP.GO/src/branch/main/README.md),有删减,建议查阅原文以获取最新信息。
14 |
15 | ## 使用方法
16 |
17 | ### 1. 检查系统支持
18 |
19 | > **重要**:在启用任何仓库之前,请检查您的系统是否支持您想要启用的特性级别(例如 `x86-64-v3`)。
20 | > **如果不提前检查,可能会导致您的系统无法启动,并且您将需要降级任何您可能已经升级的软件包。**
21 |
22 | 使用以下命令检查 CPU 支持的特性级别:
23 |
24 | ```bash
25 | /lib/ld-linux-x86-64.so.2 --help
26 | ```
27 |
28 | 支持 `x86-64-v3` 的系统输出片段示例:
29 |
30 | ```
31 | Subdirectories of glibc-hwcaps directories, in priority order:
32 | x86-64-v4
33 | x86-64-v3 (supported, searched)
34 | x86-64-v2 (supported, searched)
35 | ```
36 |
37 | ### 2. 安装密钥环和镜像列表
38 |
39 | 从 **AUR** 安装 [alhp-keyring](https://aur.archlinux.org/packages/alhp-keyring/) 和 [alhp-mirrorlist](https://aur.archlinux.org/packages/alhp-mirrorlist/)。
40 |
41 | 使用 `yay` 安装的示例:
42 |
43 | ```bash
44 | yay -S alhp-keyring alhp-mirrorlist
45 | ```
46 |
47 | `alhp-keyring` 提供 ALHP 当前使用的签名密钥,`alhp-mirrorlist` 提供一组镜像列表供选择。
48 |
49 | ### 3. 选择上海交通大学软件源镜像
50 |
51 | 编辑 `/etc/pacman.d/alhp-mirrorlist` 在**顶部**添加上海交通大学软件源镜像并注释/取消注释您希望禁用/启用的镜像:
52 |
53 | ```editorconfig
54 | ##
55 | ## ALHP repository mirrorlist
56 | ## Updated on YYYY-MM-DD
57 | ## https://somegit.dev/ALHP/alhp-mirrorlist
58 | ##
59 | ## There is an IPFS mirror available.
60 | ## Setup instructions in /etc/pacman.d/alhp-mirrorlist.ipfs.
61 | ##
62 |
63 | Server = https://mirror.sjtu.edu.cn/alhp/$repo/os/$arch/
64 |
65 | ## Worldwide (Cloudfare)
66 | # Server = https://alhp.krautflare.de/$repo/os/$arch/
67 | ...
68 | ```
69 |
70 | > 注意:仅 `alhp.dev` 由 ALHP 直接托管。
71 | > 如果您使用某个镜像时发生问题,请在 [ALHP 镜像列表仓库](https://somegit.dev/ALHP/alhp-mirrorlist)中提交 issue。
72 | > 如果您使用上海交通大学软件源镜像时发生问题,请[反馈 Bug](https://github.com/sjtug/mirror-requests/issues/new/choose)。
73 |
74 | ### 4. 修改 /etc/pacman.conf
75 |
76 | 在您的 Arch Linux 官方仓库**之上**添加相应的 ALHP 仓库。
77 |
78 | 以 `x86-64-v3` 为例:
79 |
80 | ```editorconfig
81 | [core-x86-64-v3]
82 | Include = /etc/pacman.d/alhp-mirrorlist
83 |
84 | [extra-x86-64-v3]
85 | Include = /etc/pacman.d/alhp-mirrorlist
86 |
87 | [core]
88 | Include = /etc/pacman.d/mirrorlist
89 |
90 | [extra]
91 | Include = /etc/pacman.d/mirrorlist
92 |
93 | # 如果需要 [multilib] 支持
94 | [multilib-x86-64-v3]
95 | Include = /etc/pacman.d/alhp-mirrorlist
96 |
97 | [multilib]
98 | Include = /etc/pacman.d/mirrorlist
99 | ```
100 |
101 | 将 `x86-64-v3` 替换为您希望启用的 x86-64 特性级别。
102 |
103 | > ALHP 目前为 `x86-64-v2`、`x86-64-v3` 和 `x86-64-v4` 构建。
104 | > 您可以在[这里](https://mirror.sjtu.edu.cn/alhp/)查看所有可用的仓库。
105 |
106 | ### 5. 更新软件包数据库并升级:
107 |
108 | ```
109 | pacman -Suy
110 | ```
111 |
112 | > **注意**:直接链接的内核模块可能无法正常工作,请使用 `dkms` 变种,详见 [ALHP/ALHP.GO#68](https://somegit.dev/ALHP/ALHP.GO/issues/68)。
113 |
114 | ## 移除方法
115 |
116 | 要禁用 ALHP,删除 `/etc/pacman.conf` 中所有 _x86-64-vX_ 条目,并删除 `alhp-keyring` 和 `alhp-mirrorlist`。
117 |
118 | 之后,使用以下命令刷新 pacman 的数据库并降级所有软件包:
119 |
120 | ```
121 | pacman -Suuy
122 | ```
123 |
124 | ## 在不同特性级别仓库之间切换
125 |
126 | 如果您想在不同特性级别之间切换,例如从 `x86-64-v3` 切换到 `x86-64-v4`,您需要首先恢复为官方软件包,然后再次启用所需的仓库。
127 |
128 | 1. 注释或删除 `/etc/pacman.conf` 中的 ALHP 存储库条目。
129 | 2. 使用 `pacman -Suuy` 降级软件包。
130 | 3. 使用 `pacman -Scc` 清除 pacman 的包缓存。
131 | 4. 取消注释/添加所需的存储库到 `/etc/pacman.conf` 并使用 `pacman -Suy` 进行更新。
132 |
--------------------------------------------------------------------------------
/content/post/mirror-help/alpine.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "alpine"
3 | tags = ["mirror-help"]
4 | author = "hmsjy2017"
5 | date = "2021-04-17T17:44:00+08:00"
6 | +++
7 |
8 | Alpine Linux 是一个面向安全,轻量级的基于musl libc与busybox项目的Linux发行版。
9 |
10 | 使用方法:
11 | ```bash
12 | sed -i 's/dl-cdn.alpinelinux.org/mirrors.sjtug.sjtu.edu.cn/g' /etc/apk/repositories
13 | ```
14 |
--------------------------------------------------------------------------------
/content/post/mirror-help/anaconda.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "anaconda"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | Anaconda 是一种 Python 语言的免费增值开源发行版,用于进行大规模数据处理, 预测分析, 和科学计算, 致力于简化包的管理和部署。Anaconda 使用软件包管理系统 conda 进行包管理。
8 |
9 | SJTUG 源镜像了常用的 conda 库,以方便科学计算用户使用。
10 |
11 | **Note: 如果您正在从其他镜像源切换到 SJTUG,请检查我们是否同步了你所需要的 repo,以及该 repo 是否支持您使用的平台 (e.g. linux-64)。如果没有,请删除相关配置,并提出新镜像请求。**
12 |
13 | **使用说明**
14 |
15 | 编辑 `~/.condarc`
16 |
17 | ```
18 | default_channels:
19 | - https://mirror.sjtu.edu.cn/anaconda/pkgs/r
20 | - https://mirror.sjtu.edu.cn/anaconda/pkgs/main
21 | custom_channels:
22 | conda-forge: https://mirror.sjtu.edu.cn/anaconda/cloud/
23 | pytorch: https://mirror.sjtu.edu.cn/anaconda/cloud/
24 | channels:
25 | - defaults
26 | ```
27 |
28 | 在 `custom_channels` 中您可以添加下面所列的其他第三方源。我们建议您使用上面的方法配置,而非执行下面的指令。
29 |
30 | 您也可以使用`conda config --add channels https://mirror.sjtu.edu.cn/anaconda/{{你所需要的包名}}`来将SJTUG源添加作为这个包的上游。目前镜像的包与安装命令包括:
31 |
32 | - **官方源**:
33 | - `pkgs/free`: `conda config --add channels https://mirror.sjtu.edu.cn/anaconda/pkgs/free`
34 | - `pkgs/main`: `conda config --add channels https://mirror.sjtu.edu.cn/anaconda/pkgs/main`
35 | - `pkgs/mro`: `conda config --add channels https://mirror.sjtu.edu.cn/anaconda/pkgs/mro`
36 | - `pkgs/msys2`: `conda config --add channels https://mirror.sjtu.edu.cn/anaconda/pkgs/msys2`
37 | - `pkgs/pro`: (deprecated) `conda config --add channels https://mirror.sjtu.edu.cn/anaconda/pkgs/pro`
38 | - `pkgs/r`: (empty) `conda config --add channels https://mirror.sjtu.edu.cn/anaconda/pkgs/r`
39 | - **第三方源**:
40 | - `cloud/bioconda`: `conda config --set custom_channels.bioconda https://mirror.sjtu.edu.cn/anaconda/cloud/`
41 | - `cloud/conda-forge`: `conda config --set custom_channels.conda-forge https://mirror.sjtu.edu.cn/anaconda/cloud/`
42 | - `cloud/menpo`: `conda config --set custom_channels.menpo https://mirror.sjtu.edu.cn/anaconda/cloud/`
43 | - `cloud/soumith`: `conda config --set custom_channels.soumith https://mirror.sjtu.edu.cn/anaconda/cloud/`
44 | - `cloud/viscid-hub`: `conda config --set custom_channels.viscid-hub https://mirror.sjtu.edu.cn/anaconda/cloud/`
45 | - `cloud/atztogo`: `conda config --set custom_channels.atztogo https://mirror.sjtu.edu.cn/anaconda/cloud/`
46 | - `cloud/pytorch`: `conda config --set custom_channels.pytorch https://mirror.sjtu.edu.cn/anaconda/cloud/`
47 | - `cloud/pytorch-test`: `conda config --set custom_channels.pytorch-test https://mirror.sjtu.edu.cn/anaconda/cloud/`
48 |
49 | 此外,在 Conda 4.7 后,官方的 default 源组默认只包含 main 和 r (windows 会包含 msys2) channel,其他官方源仍支持手动添加。但官方建议不再使用 free channel,详见 [Why We Removed the “Free” Channel in Conda 4.7](https://www.anaconda.com/why-we-removed-the-free-channel-in-conda-4-7/)。
50 |
--------------------------------------------------------------------------------
/content/post/mirror-help/anthon.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "anthon"
3 | tags = ["mirror-help"]
4 | author = "LengmoAngel"
5 | +++
6 |
7 | AOSC OS(安同 OS)软件源。AOSC OS 是一个由安同开源社区 [https://aosc.io](https://aosc.io)开发的半滚动 Linux 发行版,对包括 x86-64,aarch64,LoongArch64 等多种处理器架构提供支持。
8 |
9 | **使用方法**
10 |
11 | AOSC OS 内置 `apt-gen-list` 用于切换社区提供的可用镜像源。不建议直接使用 `/etc/apt/sources.list` 变更镜像。
12 |
13 | 使用如下指令将本镜像源添加到可用镜像源列表中
14 | ```
15 | sudo apt-gen-list add-custom-mirror sjtug https://mirror.sjtu.edu.cn/anthon/
16 | ```
17 | 随后使用如下启用本镜像源
18 | ```
19 | sudo apt-gen-list add-mirror sjtug
20 | ```
21 | 如果仅使用本镜像源,使用如下指令
22 | ```
23 | sudo apt-gen-list set-mirror sjtug
24 | ```
25 |
--------------------------------------------------------------------------------
/content/post/mirror-help/archlinux-cn.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "archlinux-cn"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | Arch Linux 中文社区仓库 是由 Arch Linux 中文社区驱动的非官方用户仓库。包含中文用户常用软件、工具、字体/美化包等。
8 |
9 | 完整的包信息列表(包名称/架构/维护者/状态)请 [点击这里](https://github.com/archlinuxcn/repo) 查看。
10 |
11 | 仓库主地址:http://repo.archlinuxcn.org/
12 |
13 | 使用方法:在 `/etc/pacman.conf` 文件末尾添加以下两行:
14 | ```
15 | [archlinuxcn]
16 | Server = https://mirrors.sjtug.sjtu.edu.cn/archlinux-cn/$arch
17 | ```
18 |
19 | 之后,请执行下面的命令安装 archlinuxcn-keyring 包导入 GPG key。
20 | ```
21 | pacman -Sy archlinuxcn-keyring
22 | ```
23 |
--------------------------------------------------------------------------------
/content/post/mirror-help/archlinux.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "archlinux"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | Arch Linux 是通用 x86-64 GNU/Linux 发行版。Arch 采用滚动升级模式,尽全力提供最新的稳定版软件。初始安装的 Arch 只是一个基本系统,随后用户可以根据自己的喜好安装需要的软件并配置成符合自己理想的系统。
8 |
9 | 使用方法:编辑 `/etc/pacman.d/mirrorlist` 文件,添加 `Server = https://mirror.sjtu.edu.cn/archlinux/$repo/os/$arch` 这一行,同时注释掉其它所有镜像,然后运行 `sudo pacman -Syy` 更新软件包缓存。
10 |
--------------------------------------------------------------------------------
/content/post/mirror-help/archlinuxarm.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "archlinuxarm"
3 | tags = ["mirror-help"]
4 | author = "shrubbroom"
5 | +++
6 |
7 | Arch Linux ARM 是在使用 ARM 架构处理器的计算机上运行的 Linux 发行版。它为许多主流的采用 ARM 处理器的硬件提供内核及应用程序支持,同时和 Arch Linux 一样具有提供最新的软件源、避免预安装多余软件包等特点。
8 |
9 | 本仓库包含 Arch Linux ARM 的系统镜像及软件源。
10 |
11 | 系统镜像使用方法:请访问 https://archlinuxarm.org/platforms ,阅读硬件平台对应的安装指引并下载对应的系统镜像。
12 |
13 | 软件源使用方法:在 `/etc/pacman.d/mirrorlist` 的文件顶端(所有镜像源的最上面)加上:
14 | ```
15 | Server = https://mirrors.sjtug.sjtu.edu.cn/archlinuxarm/$arch/$repo
16 | ```
17 |
18 | 之后,请执行下面的命令更新软件包缓存。
19 | ```
20 | pacman -Syy
21 | ```
22 |
--------------------------------------------------------------------------------
/content/post/mirror-help/armbian.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "armbian"
3 | tags = ["mirror-help"]
4 | author = "qianbinbin"
5 | +++
6 |
7 | Armbian 是为 ARM 单板机提供的基于 Debian 和 Ubuntu 的操作系统。Armbian 仓库包括专用的 u-boot、内核及各种支持文件。
8 |
9 | 可以使用以下方法更换软件源:
10 |
11 | - 运行 `armbian-config` -> Personal -> Mirrors -> 选择镜像站。
12 | - 编辑 `/etc/apt/sources.list.d/armbian.list`,将 `http://apt.armbian.com` 替换为 `https://mirror.sjtu.edu.cn/armbian/`,然后执行 `apt update`。
13 |
--------------------------------------------------------------------------------
/content/post/mirror-help/bioconductor.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "bioconductor"
3 | tags = ["mirror-help"]
4 | author = "MitsuhaMiyamizu"
5 | +++
6 |
7 | Bioconductor 为高通量基因组数据的分析和可视化提供开源工具。Bioconductor多数软件包采用R统计编程语言开发。Bioconductor 每年释出两个版本,并有活跃的用户社区。
8 |
9 | 使用方法:
10 |
11 | Bioconductor 镜像源配置文件之一是 `~/.Rprofile` 。
12 |
13 | 注:R 的 `~` 在类 Unix 系统下为: `$HOME` (即 `~` ),在 Windows 下为: `%USERPROFILE%\Documents` ,具体路径可以在 R 中执行 `path.expand("~")` 查看。
14 |
15 | 在该文件末尾添加如下语句或在R/RStudio终端下键入:
16 |
17 | ```
18 | options(BioC_mirror="https://mirror.sjtu.edu.cn/bioconductor")
19 | ```
20 | 即可使用该 Bioconductor 镜像源安装 Bioconductor 软件包。
21 | 命令如下:
22 |
23 | ```
24 | if (!requireNamespace("BiocManager", quietly = TRUE))
25 | install.packages("BiocManager")
26 | BiocManager::install("$package_name")
27 | ```
28 |
29 | 请访问[官方网站](http://bioconductor.org/)获取更多信息。
30 |
--------------------------------------------------------------------------------
/content/post/mirror-help/blackarch.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "blackarch"
3 | tags = ["mirror-help"]
4 | author = "Alampdow"
5 | +++
6 |
7 | BlackArch 是一款基于 ArchLinux 的为渗透测试及安全研究人员开发的发行版,相当于 Arch 版的 Kali。可以当做现有 Arch 系统的非官方用户存储库。
8 |
9 | 使用方法:
10 |
11 | 在现有 Arch 系统中,编辑`/etc/pacman.conf`,在末尾添加两行
12 |
13 | ````
14 | [blackarch]
15 | Server = https://mirror.sjtu.edu.cn/blackarch/$repo/os/$arch
16 | ````
17 |
18 | 由于一些软件依赖32位的库,需要取消掉`/etc/pacman.conf`中`multilib`的注释,详见https://wiki.archlinux.org/index.php/Official_repositories#Enabling_multilib
19 |
20 | 之后,请执行下面的命令安装 blackarch-keyring 包导入 GPG key。
21 |
22 | ````
23 | sudo pacman -Sy blackarch-keyring
24 | ````
25 |
--------------------------------------------------------------------------------
/content/post/mirror-help/brew-git.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "git/brew.git"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 |
8 | 本镜像是 Homebrew 自身的仓库,上游为`https://github.com/Homebrew/brew.git`。在`git`相关操作时使用`https://mirrors.sjtug.sjtu.edu.cn/git/brew.git`替代上述地址即可。
9 |
10 | *SJTUG镜像同时也提供了`homebrew-core`, `homebrew-cask`和`brew-bottles`镜像,欢迎大家使用。*
11 |
12 | 使用方法:
13 |
14 | 执行以下语句或加入到`~/.bashrc`中:
15 |
16 | ```sh
17 | export HOMEBREW_BREW_GIT_REMOTE=https://mirrors.sjtug.sjtu.edu.cn/git/brew.git
18 | export HOMEBREW_CORE_GIT_REMOTE=https://mirrors.sjtug.sjtu.edu.cn/git/homebrew-core.git
19 | export HOMEBREW_BOTTLE_DOMAIN=https://mirror.sjtu.edu.cn/homebrew-bottles/bottles
20 | ```
21 |
22 | 另外,现 homebrew 版本将默认使用 API 下载,本镜像源尚不支持这种方式,若使用本镜像请手动关闭该开关。
23 |
24 | 执行以下语句或加入到`~/.bashrc`中:
25 |
26 | ```sh
27 | export HOMEBREW_NO_INSTALL_FROM_API=1
28 | ```
29 |
30 | 随后正常使用官方脚本安装即可。
31 |
--------------------------------------------------------------------------------
/content/post/mirror-help/centos.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "centos"
3 | tags = ["mirror-help"]
4 | author = "skyzh"
5 | +++
6 |
7 | 使用方法:运行下面的指令一键替换并备份。
8 |
9 | ```bash
10 | sed -e 's/mirrorlist/#mirrorlist/g' -e 's|#baseurl=http://mirror.centos.org/|baseurl=http://mirror.sjtu.edu.cn/|g' -i.bak /etc/yum.repos.d/<需要替换的文件>
11 | ```
12 |
13 | 最后运行 `dnf makecache` 生成缓存
14 |
--------------------------------------------------------------------------------
/content/post/mirror-help/cran.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "cran"
3 | tags = ["mirror-help"]
4 | author = "skyzh"
5 | date = "2020-07-04T15:33:04+08:00"
6 | +++
7 |
8 | 使用方法:
9 |
10 | 在安装时指定 repo。
11 |
12 | ```R
13 | install.packages("lattice", repos="https://mirrors.sjtug.sjtu.edu.cn/cran/")
14 | ```
15 |
16 | 在 `.Rprofile` 中设置默认 repo。
17 |
18 | ```R
19 | options(repos=structure(c(CRAN="https://mirrors.sjtug.sjtu.edu.cn/cran/")))
20 | ```
21 |
--------------------------------------------------------------------------------
/content/post/mirror-help/crates.io.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "crates.io"
3 | tags = ["mirror-help"]
4 | author = "skyzh"
5 | date = "2020-07-09T01:00:00+08:00"
6 | +++
7 |
8 | 编辑 `~/.cargo/config.toml`
9 |
10 | ```
11 | [source]
12 |
13 | [source.mirror]
14 | registry = "sparse+https://mirrors.sjtug.sjtu.edu.cn/crates.io-index/"
15 |
16 | [source.crates-io]
17 | replace-with = "mirror"
18 | ```
19 |
20 |
21 | 若您的 cargo 版本低于 1.68,请使用以下配置
22 |
23 | ```
24 | [source]
25 |
26 | [source.mirror]
27 | registry = "https://mirrors.sjtug.sjtu.edu.cn/git/crates.io-index/"
28 |
29 | [source.crates-io]
30 | replace-with = "mirror"
31 | ```
32 |
--------------------------------------------------------------------------------
/content/post/mirror-help/creates.io.git.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "git/crates.io-index"
3 | tags = ["mirror-help"]
4 | author = "skyzh"
5 | date = "2020-07-09T01:00:00+08:00"
6 | +++
7 |
8 |
9 | 编辑 `~/.cargo/config`
10 |
11 | ```
12 | [source]
13 |
14 | [source.mirror]
15 | registry = "https://mirrors.sjtug.sjtu.edu.cn/git/crates.io-index/"
16 |
17 | [source.crates-io]
18 | replace-with = "mirror"
19 | ```
20 |
--------------------------------------------------------------------------------
/content/post/mirror-help/dart-packages.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "dart-pub"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | dart-pub 镜像全量同步了 Dart 语言官方仓库 https://pub.dartlang.org ,可以加速 Dart 包的下载。
8 |
9 | 使用方法:
10 |
11 | 设置环境变量 `export PUB_HOSTED_URL=https://mirror.sjtu.edu.cn/dart-pub` 即可。
12 |
--------------------------------------------------------------------------------
/content/post/mirror-help/debian-cd.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "debian-cd"
3 | tags = ["mirror-help"]
4 | author = "LengmoAngel"
5 | +++
6 |
7 | Debian 是完全由自由软件组成的类 UNIX 操作系统,其包含的多数软件使用 GNU 通用公共许可协议授权,并由 Debian 计划的参与者组成团队对其进行打包、开发与维护。 Debian 以其坚守 Unix 和自由软件的精神,以及其给予用户的众多选择而闻名。现时 Debian 提供了超过25,000个软件,超过50,000个软件包,并正式支持10个计算机系统结构。
8 |
9 | 本镜像仅提供 Debian 最新稳定版本。
10 |
11 | 一般来说只需在 `iso-cd` 目录 [https://mirror.sjtu.edu.cn/debian-cd/current/amd64/iso-cd/](https://mirror.sjtu.edu.cn/debian-cd/current/amd64/iso-cd/) 寻找无后缀版本即可。当你使用不支持 UEFI 启动的系统时候,请安装 `mac` 后缀版本。当你寻找教育版时候可以寻找 `edu` 后缀版本。
12 |
--------------------------------------------------------------------------------
/content/post/mirror-help/debian-ports.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "debian-ports"
3 | tags = ["mirror-help"]
4 | author = "hmsjy2017"
5 | +++
6 | 本软件源仅适用于 Debian riscv64。
7 |
8 | 编辑`/etc/apt/sources.list`,删除所有内容,添加以下内容并保存。
9 |
10 | ```
11 | deb [arch=riscv64] http://mirror.sjtu.edu.cn/debian-ports unstable main
12 | deb [arch=riscv64] http://mirror.sjtu.edu.cn/debian-ports unreleased main
13 | ```
14 | 然后,使用`sudo apt update`更新软件包索引。
15 |
--------------------------------------------------------------------------------
/content/post/mirror-help/debian.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "debian"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | Debian 是完全由自由软件组成的类UNIX操作系统,其包含的多数软件使用GNU通用公共许可协议授权,并由Debian计划的参与者组成团队对其进行打包、开发与维护。Debian以其坚守Unix和自由软件的精神,以及其给予用户的众多选择而闻名。现时Debian提供了超过25,000个软件[9],超过50,000个软件包[10],并正式支持10个计算机系统结构。
8 |
9 | ### 使用方法:
10 |
11 | - 一键替换
12 | ```
13 | sudo sed -i "s|http://deb.debian.org/debian|http://mirror.sjtu.edu.cn/debian|g" /etc/apt/sources.list
14 | ```
15 | - 手动替换
16 |
17 | 先安装 ca-certificates apt-transport-https 保证第三方https源可以使用。(执行 `sudo apt install -y ca-certificates apt-transport-https`)
18 |
19 | 再打开` /etc/apt/sources.list`,将类似于`http://deb.debian.org/debian/`的地址均替换为`https://mirror.sjtu.edu.cn/debian/`即可。
20 |
--------------------------------------------------------------------------------
/content/post/mirror-help/docker-ce.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "docker-ce"
3 | tags = ["mirror-help"]
4 | author = "hmsjy2017"
5 | date = "2021-08-21T00:33:00+08:00"
6 | +++
7 |
8 |
9 | # Docker Community Edition 镜像使用帮助
10 |
11 | **注意: 本镜像只提供 Debian/Ubuntu/Fedora/CentOS/RHEL 的 docker 软件包,非 dockerhub**
12 |
13 |
14 | ## Debian/Ubuntu 用户
15 |
16 | 以下内容根据 [TUNA文档](https://mirrors.tuna.tsinghua.edu.cn/help/docker-ce/) 修改而来。
17 |
18 | 如果你过去安装过 docker,先删掉:
19 |
20 | ```bash
21 | sudo apt-get remove docker docker-engine docker.io
22 | ```
23 |
24 | 首先安装依赖:
25 |
26 | ```bash
27 | sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
28 | ```
29 | 根据你的发行版,下面的内容有所不同。你使用的发行版:
30 | Debian
31 | 信任 Docker 的 GPG 公钥:
32 | curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
33 | 对于 amd64 架构的计算机,添加软件仓库:
34 |
35 | sudo add-apt-repository \
36 | "deb [arch=amd64] https://mirror.sjtu.edu.cn/docker-ce/linux/debian \
37 | $(lsb_release -cs) \
38 | stable"
39 |
40 | 如果你用的是树莓派或其它ARM架构计算机,请运行:
41 |
42 | echo "deb [arch=armhf] https://mirror.sjtu.edu.cn/docker-ce/linux/debian \
43 | $(lsb_release -cs) stable" | \
44 | sudo tee /etc/apt/sources.list.d/docker.list
45 |
46 | 最后安装
47 |
48 | sudo apt-get update
49 | sudo apt-get install docker-ce
50 |
51 |
52 |
53 | Ubuntu
54 | 信任 Docker 的 GPG 公钥:
55 | curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
56 | 对于 amd64 架构的计算机,添加软件仓库:
57 |
58 | sudo add-apt-repository \
59 | "deb [arch=amd64] https://mirror.sjtu.edu.cn/docker-ce/linux/ubuntu \
60 | $(lsb_release -cs) \
61 | stable"
62 |
63 | 如果你用的是树莓派或其它ARM架构计算机,请运行:
64 |
65 | echo "deb [arch=armhf] https://mirror.sjtu.edu.cn/docker-ce/linux/ubuntu \
66 | $(lsb_release -cs) stable" | \
67 | sudo tee /etc/apt/sources.list.d/docker.list
68 |
69 | 最后安装
70 |
71 | sudo apt-get update
72 | sudo apt-get install docker-ce
73 |
74 |
75 |
76 | ## Fedora/CentOS/RHEL
77 | 以下内容根据[TUNA文档](https://mirrors.tuna.tsinghua.edu.cn/help/docker-ce/)修改而来。
78 |
79 | 如果你之前安装过 docker,请先删掉
80 | ```bash
81 | sudo yum remove docker docker-common docker-selinux docker-engine
82 | ```
83 | 安装一些依赖
84 | ```bash
85 | sudo yum install -y yum-utils device-mapper-persistent-data lvm2
86 | ```
87 | 根据你的发行版下载repo文件:
88 | CentOS/RHEL
89 |
90 | wget -O /etc/yum.repos.d/docker-ce.repo https://download.docker.com/linux/centos/docker-ce.repo
91 |
92 |
93 |
94 | Fedora
95 |
96 | wget -O /etc/yum.repos.d/docker-ce.repo https://download.docker.com/linux/fedora/docker-ce.repo
97 |
98 |
99 |
100 | 把软件仓库地址替换为 SJTUG:
101 |
102 | sudo sed -i 's+download.docker.com+mirror.sjtu.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo
103 |
104 | 最后安装:
105 |
106 | sudo yum makecache fast
107 | sudo yum install docker-ce
108 |
109 |
--------------------------------------------------------------------------------
/content/post/mirror-help/docker-registry.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "docker-registry"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | docker-registry 源是 Docker Hub 的反向代理,可以加速`docker pull`等需要下载镜像的命令。
8 |
9 | ## Docker 使用方法:
10 |
11 | 编辑或新建`/etc/docker/daemon.json`文件,向其中添加`registry-mirrors`项,使最终配置类似:
12 | ```json
13 | {
14 | "registry-mirrors": ["https://docker.mirrors.sjtug.sjtu.edu.cn"]
15 | }
16 | ```
17 |
18 | ## Podman 使用方法:
19 |
20 | 新建`/etc/containers/registries.conf.d/050-sjtug-docker-mirror.conf`文件(或在`/etc/containers/registries.conf`文件末尾),写入以下内容:
21 | ```toml
22 | unqualified-search-registries = ["docker.io"]
23 |
24 | [[registry]]
25 | location = "docker.io"
26 |
27 | [[registry.mirror]]
28 | location = "docker.mirrors.sjtug.sjtu.edu.cn"
29 | ```
30 |
--------------------------------------------------------------------------------
/content/post/mirror-help/dragonflybsd.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "dragonflybsd/dports"
3 | tags = ["mirror-help"]
4 | author = "liweitianux"
5 | +++
6 |
7 | ## 项目简介
8 |
9 | [DragonFly BSD](https://www.dragonflybsd.org/) 隶属于 [BSD 系统家族](https://en.wikipedia.org/wiki/BSD),
10 | 是其中相对小众、但富有特色的一个成员,与 [FreeBSD](https://www.freebsd.org/)、
11 | [OpenBSD](https://www.openbsd.org/)、[NetBSD](https://www.netbsd.org/)
12 | 组成四大 BSD 操作系统。
13 |
14 | 自 2003 年从 FreeBSD 4.8 衍生而来,
15 | DragonFly BSD 对虚拟内存、虚拟文件系统、网络协议栈等关键内核子系统做了大幅修改,
16 | 尽可能地消除了锁和竞争,实现了出色的 SMP 性能。
17 | 项目创始人 Matthew Dillon 自行开发的 [HAMMER2](https://en.wikipedia.org/wiki/HAMMER2)
18 | 文件系统是另一个主要特色,该文件系统拥有可媲美 ZFS 的功能和稳定性,但节省内存等资源。
19 | DragonFly BSD 的其他特色功能还有 vkernel、swapcache、LUKS、TrueCrypt、等等,
20 | 详情可参考:[主要特性列表](https://www.dragonflybsd.org/features/)。
21 |
22 | DragonFly BSD 的内核简洁小巧,代码整洁,在线手册 (man pages) 清晰,适合学习和研究。
23 | 驱动程序和用户空间工具主要继承自 FreeBSD,同时与 FreeBSD 使用相同的包管理工具
24 | [pkg(8)](https://github.com/freebsd/pkg),可利用 FreeBSD 丰富全面的文档资源,
25 | 用户体验良好。
26 | 此外,DragonFly BSD 的社区虽小,但很友好。
27 |
28 | ## 镜像介绍
29 |
30 | SJTUG 镜像是 DragonFly BSD 在中国内地的首个镜像站点,
31 | 依托于华东教育网骨干节点,提供稳定、快速的镜像服务。
32 |
33 | 我们的镜像服务目前提供了如下内容:
34 |
35 | * [安装镜像 (ISO/IMG)](https://mirror.sjtu.edu.cn/dragonflybsd/iso-images/)
36 | * [预编译软件包](https://mirror.sjtu.edu.cn/dragonflybsd/dports/)
37 | (收录了 3 个版本:当前开发版本、当前发布版本、上一发布版本)
38 |
39 | ## 使用方法
40 |
41 | 创建 pkg(8) 仓库配置文件 `/usr/local/etc/pkg/repos/sjtug.conf`,添加以下内容:
42 |
43 | ```conf
44 | # China, Shanghai
45 | SJTUG: {
46 | url: https://mirror.sjtu.edu.cn/dragonflybsd/dports/${ABI}/LATEST,
47 | priority: 10,
48 | enabled: yes
49 | }
50 | ```
51 |
52 | 然后执行 `pkg update -f` 更新索引即可开始使用了。
53 |
54 | 注:仓库的优先级 (`priority`) 默认为 0,此处通过设置 `priority: 10`
55 | 提高优先级来优先使用 SJTUG 镜像服务。
56 |
57 | ## 相关链接
58 |
59 | * 官方主页: [https://www.dragonflybsd.org/](https://www.dragonflybsd.org/)
60 | * 镜像列表: [https://www.dragonflybsd.org/mirrors/](https://www.dragonflybsd.org/mirrors/)
61 | * 系统源码: [官方 Gitweb](https://gitweb.dragonflybsd.org/dragonfly.git), [GitHub](https://github.com/DragonFlyBSD/DragonFlyBSD)
62 | * GitHub: [https://github.com/DragonFlyBSD](https://github.com/DragonFlyBSD/DragonFlyBSD)
63 |
--------------------------------------------------------------------------------
/content/post/mirror-help/elan.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "elan"
3 | tags = ["mirror-help"]
4 | author = "alissa-tung, timechess"
5 | +++
6 |
7 | # `glean`: Lean 4 镜像适配工具
8 |
9 | 使用上海交通大学的 https://mirror.sjtu.edu.cn 镜像服务,软件源镜像托管在 `elan`
10 | 和 `git/lean4-packages` 下。
11 |
12 | 请自行修改命令中的版本号,可用版本参见:
13 | http://mirror.sjtu.edu.cn/elan/?mirror_intel_list
14 |
15 | 也可以通过这个链接下载 glean。
16 |
17 | ## 安装 Elan
18 |
19 | Elan 是 Lean 的版本管理工具,在 Lake 调用时根据项目 `lean-toolchain` 文件下载安装 Lean 并切换到对应的版本。
20 |
21 | 例如要阅读 Mathematics in Lean,可以运行
22 |
23 | ```sh
24 | git clone --depth 1 https://mirror.sjtu.edu.cn/git/lean4-packages/mathematics_in_lean/
25 | ```
26 |
27 | 然后通过 `cat lean-toolchain` 获取需要安装的版本。
28 |
29 | ```sh
30 | glean -install elan -version 3.1.1
31 | ```
32 |
33 | ## 安装 Lean
34 |
35 | 以下操作会安装 Lean 与 Lean 工具链,包含语言服务器、构建工具等。
36 |
37 | ```sh
38 | glean -install lean --version 4.5.0
39 | ```
40 |
41 | 如需安装 nightly 版本,请以如下例子中的格式编辑命令。
42 |
43 | ```sh
44 | glean -install lean --version 4.4.0-nightly-2023-11-12
45 | ```
46 |
47 | nightly 可用版本参见 [lean4_nightly](http://mirror.sjtu.edu.cn/elan/leanprover/lean4_nightly/releases/download?mirror_intel_list)
48 |
49 | ## 在构建项目前下载依赖
50 |
51 | 每当下载完一个 Lean 项目后,在启动 VSCode 或命令行运行 `lake build` 前,可以提前通过镜像下载依赖。
52 |
53 | ```sh
54 | glean -lake-manifest-path ~/EG/lake-manifest.json
55 | ```
56 |
57 | 此处使用选项 `-lake-manifest-path ~/EG/lake-manifest.json` 来手动指定了 `lake-manifest.json` 文件的位置。
58 | 也可以在进入一个 Lean4 Lake 项目后,直接运行
59 |
60 | ```sh
61 | glean
62 | ```
63 |
64 | 命令。这样,glean 会自动找到当前项目中 `lake-manifest.json` 文件的位置。
65 |
66 | ### 如何判断自己是否在在一个 Lean4 Lake 项目路径工作?
67 |
68 | 运行 `ls` 命令,如果能找到 `lakefile.lean`,即代表正在 Lean4 Lake 项目路径工作。
69 |
70 | 使用 `code .` 启动 VSCode 来使用 Lean 时,也需要确保正在 Lean4 Lake 项目路径工作。
--------------------------------------------------------------------------------
/content/post/mirror-help/emacs-elpa.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "emacs-elpa"
3 | tags = ["mirror-help"]
4 | author = "skyzh"
5 | date = "2020-08-14T14:55:00+08:00"
6 | +++
7 |
8 | emacs-elpa 包含了 GNU ELPA, NonGNU ELPA, MELPA, MELPA Stable, Org 这 5 个镜像。
9 |
10 | | ELPA | 镜像地址 |
11 | | ------------------------------------------------------------- | ------------------------------------------------------------ |
12 | | [GNU ELPA](https://elpa.gnu.org/) | https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/gnu/ |
13 | | [NonGNU ELPA](https://elpa.gnu.org/nongnu/) | https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/nongnu/ |
14 | | [MELPA](https://melpa.org/) | https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/melpa/ |
15 | | [MELPA Stable](https://stable.melpa.org/#/) | https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/stable-melpa/ |
16 | | [Org](https://orgmode.org/elpa.html) | https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/org/ |
17 |
18 | ## 使用方法
19 |
20 |
21 |
22 | 根据你的需求,设置 `package-archives` ,比如用 GNU ELPA 和 MELPA:
23 | ```lisp
24 | (setq package-archives '(("gnu" . "https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/gnu/")
25 | ("melpa" . "https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/melpa/")))
26 |
27 | ```
28 |
29 | ### Spacemacs 用户
30 |
31 |
32 |
33 | #### master 分支
34 |
35 |
36 |
37 | 添加下面的代码到 `.spacemacs` 的 `dotspacemacs/user-init()`
38 |
39 | ```lisp
40 | (setq configuration-layer--elpa-archives
41 | '(("melpa-cn" . "https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/melpa/")
42 | ("org-cn" . "https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/org/")
43 | ("gnu-cn" . "https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/gnu/")))
44 | ```
45 |
46 | #### develop 分支
47 |
48 |
49 |
50 | 使用 `configuration-layer-elpa-archives` 代替原来的 `configuration-layer--elpa-archives` ( `--` 换成 `-` )
51 |
52 | ```lisp
53 | (setq configuration-layer-elpa-archives
54 | '(("melpa-cn" . "https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/melpa/")
55 | ("org-cn" . "https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/org/")
56 | ("gnu-cn" . "https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/gnu/")))
57 | ```
58 |
59 | ### Cask 用户
60 |
61 |
62 |
63 | [Cask](https://github.com/cask/cask) 是一个 Emacs Lisp 的项目管理工具。这里还是以 GNU ELPA 和 MELPA 为例,在添加下面的代码到 Cask
64 |
65 | ```lisp
66 | (source "gnu" "https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/gnu/")
67 | (source "melpa" "https://mirrors.sjtug.sjtu.edu.cn/emacs-elpa/melpa/")
68 | ```
69 |
70 | 本镜像上游为 [https://elpa.emacs-china.org](https://elpa.emacs-china.org) 。
71 |
72 | SJTUG 不提供 rsync 镜像。
73 |
--------------------------------------------------------------------------------
/content/post/mirror-help/fedora-ostree.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "fedora-ostree"
3 | tags = ["mirror-help"]
4 | author = "skyzh"
5 | date = "2021-01-04T22:00:00+08:00"
6 | +++
7 |
8 | fedora-ostree 是 Fedora Silverblue (原 Atomic Workstation) 的智能缓存。
9 | Fedora Silverblue 通过 rpm-ostree 管理整个系统。
10 | 当您第一次请求镜像中的资源时,如果文件没有被镜像服务器缓存,我们会将您重定向回原站,
11 | 并在后台进行缓存。目前镜像服务器上已经预先缓存了所有 fedora-ostree 仓库的分支。
12 |
13 | 使用方法:编辑 `/etc/ostree/remotes.d/fedora.conf`
14 |
15 | ```plain
16 | [remote "fedora"]
17 | url=https://mirror.sjtu.edu.cn/fedora-ostree
18 | gpg-verify=true
19 | gpgkeypath=/etc/pki/rpm-gpg/
20 | # contenturl=mirrorlist=https://ostree.fedoraproject.org/mirrorlist
21 | ```
22 |
--------------------------------------------------------------------------------
/content/post/mirror-help/fedora.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "fedora/linux"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | Fedora 项目是一个由红帽公司所赞助,以统筹 Fedora Linux 操作系统开发的社区。
8 | Fedora 项目在建设开源软件社区的同时构建了一个被称为"Fedora"的 GNU/Linux 发行版。
9 |
10 | 使用方法:运行下面的指令一键替换并备份。
11 |
12 | ```bash
13 | sed -e 's/^metalink=/#metalink=/g' -e 's|^#baseurl=http://download.example/pub/|baseurl=https://mirror.sjtu.edu.cn/|g' -i.bak /etc/yum.repos.d/<需要替换的文件>
14 | ```
15 |
16 | 最后运行 `dnf makecache` 生成缓存
17 |
--------------------------------------------------------------------------------
/content/post/mirror-help/flathub.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "flathub"
3 | tags = ["mirror-help"]
4 | author = "skyzh"
5 | date = "2021-01-04T22:00:00+08:00"
6 | +++
7 |
8 | Flathub 镜像是 [flathub.org](https://flathub.org) 的智能缓存。当您请求镜像中的资源时,
9 | 如果文件没有被镜像服务器缓存,我们会将您重定向回原站,并在后台进行缓存。
10 | 目前镜像服务器上已经预先缓存了所有 Flathub 软件的分支。
11 |
12 | 使用方法:
13 |
14 | ```bash
15 | sudo flatpak remote-modify flathub --url=https://mirror.sjtu.edu.cn/flathub
16 | ```
17 |
18 | 如果出现错误可尝试:
19 |
20 | ```bash
21 | wget https://mirror.sjtu.edu.cn/flathub/flathub.gpg
22 | sudo flatpak remote-modify --gpg-import=flathub.gpg flathub
23 | ```
24 |
25 | 目前 sel.flathub.org 已经重定向到 SJTUG 镜像站。如果您原先使用该服务器作为 Flathub 上游,
26 | 无需做任何设置即可使用。
27 |
28 | Flathub 中部分软件由于重分发授权问题,需要从官方服务器下载,无法使用镜像站加速。比如
29 | NVIDIA 驱动、JetBrains 系列软件等。如果您的使用体验不佳,请及时通过 GitHub 或邮件向我们反馈。
30 |
31 | 如果您中断了某次安装,重新下载可能会出现找不到文件的问题。您可以使用 `flatpak repair` 解决相关的问题。
32 |
--------------------------------------------------------------------------------
/content/post/mirror-help/flutter_infra.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "flutter_infra"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | ## 欢迎使用 SJTUG 镜像设置 Flutter 开发环境
8 |
9 | 作为国内最早提供 Flutter 的镜像站,我们在近期对镜像站的更新中提高了 Flutter
10 | 镜像的稳定性,并解决了部分问题,欢迎大家使用!
11 |
12 | Flutter 是 Google 开源的 UI 工具包,帮助开发者通过一套代码库高效构建多平台精美应用,
13 | 支持移动、Web、桌面和嵌入式平台。
14 |
15 | Flutter 由 Google 主导,全球的开发者共同协作开发。中国的开发者数量占全球的 20%
16 | 以上,也有大量贡献者为 Flutter 的生态提供了很大的帮助和贡献。
17 |
18 | 为了更好帮助国内的开发者、设计师和研究者等使用 Flutter,我们为 Flutter 的使用
19 | 提供了加速访问的服务。您需要将开发设备的如下两个环境变量设置指向 SJTUG 镜像:
20 |
21 | - `PUB_HOSTED_URL`
22 | - `FLUTTER_STORAGE_BASE_URL`
23 |
24 | ### Linux 和 macOS 系统设定 Flutter 镜像
25 |
26 | 执行如下代码:
27 |
28 | ```
29 | export PUB_HOSTED_URL=https://mirror.sjtu.edu.cn/dart-pub
30 | export FLUTTER_STORAGE_BASE_URL=https://mirror.sjtu.edu.cn
31 | ```
32 |
33 | ### Windows 系统设定 Flutter 镜像
34 |
35 | 右键单击“我的电脑”,单击“属性” ——> “高级”选项卡 ——> “环境变量”
36 |
37 | 在 “用户变量” 或 “系统变量” 中:
38 |
39 | 单击“新建”添加新变量:
40 |
41 | - 变量名: `PUB_HOSTED_URL`
42 | - 值: `https://mirror.sjtu.edu.cn/dart-pub`
43 | - 变量名: `FLUTTER_STORAGE_BASE_URL`
44 | - 值: `https://mirror.sjtu.edu.cn`
45 |
46 | 点击确定,保存生效。如果这两个变量名已经存在,点击编辑可修改变量值。
47 |
48 | ### 设置 Flutter SDK 仓库镜像
49 |
50 | 在 `flutter-sdk` 仓库下,执行如下指令即可。
51 |
52 | ```
53 | git remote set-url origin https://git.sjtu.edu.cn/sjtug/flutter-sdk.git
54 | ```
55 |
56 | ### download.flutter.io 镜像
57 |
58 | 访问 [https://mirror.sjtu.edu.cn/download.flutter.io/](https://mirror.sjtu.edu.cn/download.flutter.io/) 即可。
59 |
60 |
61 | ## 更多资源
62 |
63 | 感谢 flutter.cn 对 SJTUG 镜像测试的支持。
64 | 更多 Flutter 资源和中文文档,
65 | 请访问 Flutter 中文资源网站 ([flutter.cn](https://flutter.cn))
66 | 和 Dart 中文文档网站 ([dart.cn](https://dart.cn))。
67 |
--------------------------------------------------------------------------------
/content/post/mirror-help/gcr-io.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "gcr.io"
3 | tags = ["mirror-help"]
4 | author = "skyzh"
5 | date = "2020-10-23T10:00:00+08:00"
6 | +++
7 |
8 | 该镜像是 gcr.io 反代。将所有需要用到 gcr.io 的地址换成 gcr-io.mirrors.sjtug.sjtu.edu.cn 即可。比如:
9 |
10 | ```
11 | docker pull gcr-io.mirrors.sjtug.sjtu.edu.cn/google_containers/echoserver:1.4
12 | ```
13 |
--------------------------------------------------------------------------------
/content/post/mirror-help/ghcup.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "ghcup"
3 | tags = ["mirror-help"]
4 | author = "lightquantum"
5 | date = "2021-03-30T23:50:00+08:00"
6 | +++
7 |
8 | Ghcup 是一种用于安装 Haskell 的工具,它使得用户可以轻易地在 GNU/Linux、macOS 和 FreeBSD 上安装特定版本的 ghc,并从零开始搭建好一个全新的 Haskell 开发环境(包括 cabal 与 HLS 支持)。
9 |
10 | **使用说明**
11 |
12 | 创建 `~/.ghcup/config.yaml` 并输入以下内容
13 |
14 | ```
15 | url-source:
16 | OwnSource: "https://mirror.sjtu.edu.cn/ghcup/yaml/ghcup/data/ghcup-0.0.8.yaml"
17 | ```
18 |
19 | 如果您尚未安装 ghcup,请在完成以上步骤后,于终端中执行以下指令(请不要以 root 用户执行),随后跟随屏幕上的指引完成安装。
20 |
21 | ```
22 | curl --proto '=https' --tlsv1.2 -LsSf https://mirror.sjtu.edu.cn/ghcup/script/install.sh | sh
23 | ```
24 |
25 | 若您希望使用官网的安装器,请执行以下指令
26 |
27 | ```
28 | curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | GHCUP_BASE_URL="https://mirror.sjtu.edu.cn/ghcup/packages/~ghcup" sh
29 | ```
30 |
31 | **故障排除**
32 |
33 | 1. ghcup 出现形如 `[ Error ] JSON decoding failed with: AesonException` 的错误
34 |
35 | 这可能是由于本机 ghcup 版本与配置文件版本不匹配造成。
36 | ghcup 于 0.1.15.1 版本前使用 0.0.4 版本的配置文件,此版本及之后的版本使用 0.0.5+ 版本的配置文件。
37 | 请尝试将 `config.yaml` 中的 `ghcup-0.0.6.yaml` 改为 `ghcup-0.0.4.yaml` (抑或反之)后重试。
38 |
39 | 请注意,ghcup 上游倾向于仅更新最新版本配置文件中的内容,当版本发生变化后请及时更新配置文件版本。
40 |
41 | 2. 通过 ghcup 安装软件包时出现 `Error: Download failed ...` 错误
42 |
43 | 这一错误可能是由于您的 ghcup 版本过老,使用的配置文件已经长久未更新,其中包含的软件包版本过旧所致。我们将尽力保留旧版本的软件包,但当存储空间不足时,可能随时删除旧文件。本镜像站仅保证同步最新版本配置文件中包含的软件包。
44 |
45 | 当出现上述现象时,请首先尝试更新 ghcup 的版本,并根据 `故障排除 1` 的指示修改配置文件。若 ghcup 已无法更新,可以尝试删除 `~/.ghcup` 整个文件夹(这一操作将删除 ghcup 以及所有通过 ghcup 安装的软件),并根据 `使用说明` 重新安装最新版本的 ghcup。
46 |
47 | 若完成以上步骤后问题仍未解决,请至 [此处](https://github.com/sjtug/mirror-requests) 向我们反馈 BUG。
48 |
--------------------------------------------------------------------------------
/content/post/mirror-help/google-fonts.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "google-fonts"
3 | tags = ["mirror-help"]
4 | author = "skyzh"
5 | +++
6 |
7 | 本镜像提供了 Google Fonts 的反向代理。
8 |
9 | **使用方法**
10 |
11 | ```
12 |
13 | ```
14 |
15 | 改为
16 |
17 | ```
18 |
19 | ```
20 |
--------------------------------------------------------------------------------
/content/post/mirror-help/guix.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "guix"
3 | tags = ["mirror-help"]
4 | author = "pengmeiyu"
5 | +++
6 |
7 | [GNU/Guix](https://guix.gnu.org/)是隶属于GNU项目的自由软件发行版。Guix可以作为独立的操作系统发行版安装在计算机上,可以作为软件包管理器安装在别的Linux发行版上。
8 | 它的核心是一个函数式软件包管理器,支持事务性的升级、回滚操作。用户可以通过
9 | [Guile](https://www.gnu.org/software/guile/)语言编写配置文件管理操作系统的服务或者管理用户安装的软件。
10 |
11 |
12 | ## Git 镜像
13 |
14 | Git 镜像的地址为 https://mirror.sjtu.edu.cn/git/guix.git 。修改 `~/.config/guix/channels.scm` 文件即可在 `guix pull` 时使用。
15 |
16 | ```
17 | (list (channel
18 | (inherit (car %default-channels))
19 | (url "https://mirror.sjtu.edu.cn/git/guix.git")))
20 | ```
21 |
22 | ## Substitute 镜像
23 |
24 | 镜像地址为 [https://mirror.sjtu.edu.cn/guix/](https://mirror.sjtu.edu.cn/guix/)。
25 | 镜像实现方式为智能缓存,在镜像站用户首次访问某个 nar 或 narinfo 时,它会被永久缓存在镜像上;
26 | 之后的访问将直接从镜像服务器返回数据。
27 |
28 | * guix命令支持使用 `--substitute-urls` 参数为单个命令的执行临时覆盖substitute服务器,例如:
29 |
30 | ```shell
31 | guix package -i --substitute-urls="https://mirror.sjtu.edu.cn/guix/"
32 | ```
33 |
34 | * 如果您使用 Guix 管理整个操作系统,请修改操作系统配置文件 ,替换
35 | `substitute-urls` 参数。例如:
36 |
37 | ```scheme
38 | (operating-system
39 | (services (modify-services %desktop-services
40 | (guix-service-type
41 | config => (guix-configuration
42 | (inherit config)
43 | (substitute-urls '("https://mirror.sjtu.edu.cn/guix/"
44 | "https://ci.guix.gnu.org"))))))
45 | ...
46 | )
47 | ```
48 |
49 | * 如果您在别的发行版上使用 Guix 包管理器,请修改 `guix-daemon` 的
50 | `--substitute-urls` 参数。比如修改 `guix-daemon.service` 的 `ExecStart` 为:
51 |
52 | ```conf
53 | ExecStart=/var/guix/profiles/per-user/root/current-guix/bin/guix-daemon --build-users-group=guixbuild --substitute-urls="https://mirror.sjtu.edu.cn/guix/"
54 | ```
55 |
56 | 本文档的编写参考了 [https://guixcn.org/wiki/mirror/](https://guixcn.org/wiki/mirror/)
57 |
--------------------------------------------------------------------------------
/content/post/mirror-help/homebrew-bottles.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "homebrew-bottles"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | homebrew-bottles.git镜像了[预编译的 Homebrew 软件包](https://homebrew.bintray.com/)。
8 |
9 | *SJTUG镜像同时也提供了`homebrew-core`和`homebrew-cask`镜像,欢迎大家使用。*
10 |
11 | *若首次安装 homebrew, 请参阅 `brew.git` 的说明。*
12 |
13 | 使用方法:
14 |
15 | 执行以下语句或加入到`~/.bashrc`中:
16 |
17 | ```sh
18 | export HOMEBREW_BOTTLE_DOMAIN=https://mirror.sjtu.edu.cn/homebrew-bottles/bottles
19 | ```
20 |
21 | SJTUG 镜像现已支持 ghcr.io 的 bottles 同步。
22 |
--------------------------------------------------------------------------------
/content/post/mirror-help/homebrew-cask.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "git/homebrew-cask.git"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | homebrew-cask.git镜像了[Homebrew Cask的描述文件,主要包括了较大的二进制文件与macOS应用](https://github.com/Homebrew/homebrew-cask.git)。
8 |
9 | *SJTUG镜像同时也提供了`homebrew-core`和`brew-bottles`镜像,欢迎大家使用。*
10 |
11 | *若首次安装 homebrew, 请参阅 `brew.git` 的说明。*
12 |
13 | 使用方法:
14 |
15 | ```sh
16 | brew tap --custom-remote --force-auto-update homebrew/cask https://mirrors.sjtug.sjtu.edu.cn/git/homebrew-cask.git
17 | ```
18 |
19 | 然后执行:
20 |
21 | ```sh
22 | brew update
23 | ```
24 |
25 | 另外,现 homebrew 版本将默认使用 API 下载,本镜像源尚不支持这种方式,若使用本镜像请手动关闭该开关。
26 |
27 | 执行以下语句或加入到`~/.bashrc`中:
28 |
29 | ```sh
30 | export HOMEBREW_NO_INSTALL_FROM_API=1
31 | ```
32 |
--------------------------------------------------------------------------------
/content/post/mirror-help/homebrew-core.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "git/homebrew-core.git"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | homebrew-core.git镜像了[Homebrew官方的软件包描述文件](https://github.com/Homebrew/homebrew-core.git)。
8 |
9 | *SJTUG镜像同时也提供了`homebrew-cask`和`brew-bottles`镜像,欢迎大家使用。*
10 |
11 | *若首次安装 homebrew, 请参阅 `brew.git` 的说明。*
12 |
13 | 使用方法:
14 |
15 | 执行以下语句或加入到`~/.bashrc`中:
16 |
17 | ```sh
18 | export HOMEBREW_CORE_GIT_REMOTE=https://mirrors.sjtug.sjtu.edu.cn/git/homebrew-core.git
19 | ```
20 |
21 | 然后执行:
22 |
23 | ```sh
24 | brew tap --custom-remote --force-auto-update homebrew/core https://mirrors.sjtug.sjtu.edu.cn/git/homebrew-core.git
25 | brew update
26 | ```
27 |
28 | 另外,现 homebrew 版本将默认使用 API 下载,本镜像源尚不支持这种方式,若使用本镜像请手动关闭该开关。
29 |
30 | 执行以下语句或加入到`~/.bashrc`中:
31 |
32 | ```sh
33 | export HOMEBREW_NO_INSTALL_FROM_API=1
34 | ```
35 |
--------------------------------------------------------------------------------
/content/post/mirror-help/immortalwrt.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "immortalwrt"
3 | tags = ["mirror-help"]
4 | author = "1715173329"
5 | +++
6 |
7 | ImmortalWrt 是 OpenWrt 的一个第三方分支,主要针对国人用户开发,提供更多的本地化软件包和设备支持。
8 |
9 | 使用方法:
10 | 修改 `/etc/opkg/distfeeds.conf` 文件,将源地址 `downloads.immortalwrt.org` / `mirrors.vsean.net/openwrt` 修改为
11 | `mirror.sjtu.edu.cn/immortalwrt`,然后运行 `opkg update` 刷新软件包列表。
12 |
13 | 您也可以登录 LuCI 后台,进入 `系统` -> `软件包` 页面,点击 `配置 opkg` 并按上述说明完成对源地址的更改。
14 |
--------------------------------------------------------------------------------
/content/post/mirror-help/julia-releases.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "julia-releases"
3 | tags = ["mirror-help"]
4 | author = "johnnychen94"
5 | date = "2020-08-05T12:00:00+08:00"
6 | +++
7 |
8 | ## Julia 二进制安装程序
9 |
10 | Julia 是一个全新的以科学计算为核心的通用编程语言,本镜像为其二进制发行程序。关于 Julia 下各种工具包的安装,请使用 `julia` 镜像。
11 |
12 | 这里仅镜像 [JuliaLang Downloads](https://julialang.org/downloads/) 中提供的稳定发行版以及 rc 版本。每日构建的测试版 (nightlies) 以及
13 | [Juno](http://junolab.org/)/[Julia Pro](https://juliacomputing.com/products/juliapro)等 IDE 版本不包括在内。
14 |
15 | 尽管一些包管理工具(例如 `apt`, `pacman`, `conda`, `choco`) 中提供有 Julia,但是这些工具或多或少都存在一些由二进制
16 | 依赖导致的问题,因此官方推荐的方式是根据自己的使用平台下载相应的二进制程序,然后通过解压的方式进行手动安装。
17 |
18 | ## Julia 一键安装
19 |
20 | 对于习惯命令行的用户而言,[jill.py](https://github.com/johnnychen94/jill.py) 是一个社区维护的全平台下一键安装
21 | Julia 的命令行工具。
22 |
23 | 安装/更新 `jill`: `pip install jill --user -U` (需要 Python `3.6` 或更新的版本)
24 |
25 | * 安装 Julia:`jill install [VERSION] [--upstream UPSTREAM] [--confirm]`
26 | * `jill install`:最新的 `x.y.z` 版本
27 | * `jill install --confirm`:无需交互确认直接安装
28 | * `jill install --upstream SJTUG`:从本镜像站下载并安装
29 | * `jill install 1.5`:安装最新的 `1.5.z` 版本
30 | * 查询现存的上游镜像:`jill upstream`
31 | * 帮助文档:`jill [COMMAND] --help`
32 | * `jill --help`:查询存在的 `jill` 命令
33 | * `jill install --help`:查询 `install` 命令的使用方式
34 |
35 | 利用 `jill` 安装完成后即可通过在命令行执行 `julia`/`julia-1`/`julia-1.5` 来启动不同版本的 Julia.
36 |
--------------------------------------------------------------------------------
/content/post/mirror-help/julia.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "julia"
3 | tags = ["mirror-help"]
4 | author = "johnnychen94"
5 | date = "2020-08-05T12:00:00+08:00"
6 | +++
7 |
8 | SJTUG 目前提供了 Julia 的官方包注册表 [General](https://github.com/JuliaRegistries/General) 镜像来加速 Julia 包的安装。
9 |
10 | 关于 Julia 的安装,请使用 `julia-releases` 镜像。
11 |
12 | 注:本镜像的使用需要 Julia `v1.4.0` 或更新的版本。
13 |
14 | ## 使用方式
15 |
16 | 只需要设置环境变量 `JULIA_PKG_SERVER=https://mirrors.sjtug.sjtu.edu.cn/julia` 即可切换镜像。若成功切换镜像,则能通过 `versioninfo()` 查询到相关信息,例如:
17 |
18 | ```julia
19 | julia> versioninfo()
20 | Julia Version 1.5.0
21 | Commit 96786e22cc (2020-08-01 23:44 UTC)
22 | Platform Info:
23 | OS: macOS (x86_64-apple-darwin18.7.0)
24 | CPU: Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
25 | WORD_SIZE: 64
26 | LIBM: libopenlibm
27 | LLVM: libLLVM-9.0.1 (ORCJIT, skylake)
28 | Environment:
29 | JULIA_PKG_SERVER = https://mirrors.sjtug.sjtu.edu.cn/julia
30 | ```
31 |
32 | 若不设置该环境变量则默认使用官方服务器 `pkg.julialang.org` 作为上游。本镜像站是其国内服务器的数据上游之一。
33 |
34 | ### 临时使用
35 |
36 | 不同系统和命令行下设置环境变量的方式各不相同,在命令行下可以通过以下方式来临时修改环境变量
37 |
38 | * Linux Bash: `export JULIA_PKG_SERVER=https://mirrors.sjtug.sjtu.edu.cn/julia`
39 | * Windows Powershell: `$env:JULIA_PKG_SERVER = 'https://mirrors.sjtug.sjtu.edu.cn/julia'`
40 |
41 | 也可以利用 JuliaCN 社区维护的中文本地化工具包 [JuliaZH](https://github.com/JuliaCN/JuliaZH.jl) 来进行切换:
42 |
43 | ```julia
44 | using JuliaZH # 在 using 时会自动切换到国内的镜像站
45 | JuliaZH.set_mirror("SJTUG") # 也可以选择手动切换到 BFSU 镜像
46 | JuliaZH.mirrors # 查询记录的上游信息
47 | ```
48 |
49 | ### 永久使用
50 |
51 | 不同系统和命令行下永久设定环境变量的方式也不相同,例如 Linux Bash 下可以通过修改 `~/.bashrc` 文件实现该目的:
52 |
53 | ```
54 | # ~/.bashrc
55 | export JULIA_PKG_SERVER=https://mirrors.sjtug.sjtu.edu.cn/julia
56 | ```
57 |
58 | 此外,这里再提供一种针对 Julia 的全平台通用的方式:`$JULIA_DEPOT_PATH/config/startup.jl`
59 | ( 默认为 `~/.julia/config/startup.jl` ) 文件定义了每次启动 Julia 时都会执行的命令,编辑该文件,添加以下内容即可:
60 |
61 | ```julia
62 | # ~/.julia/config/startup.jl
63 | ENV["JULIA_PKG_SERVER"] = "https://mirrors.sjtug.sjtu.edu.cn/julia"
64 | ```
65 |
66 | 也可以选择使用 `JuliaZH` 来一键修改/创建 `startup.jl` 文件:
67 |
68 | ```julia
69 | julia> JuliaZH.generate_startup("SJTUG")
70 | ┌ Info: 添加 PkgServer
71 | │ 服务器地址 = "https://mirrors.sjtug.sjtu.edu.cn/julia"
72 | └ 配置文件 = "/root/.julia/config/startup.jl"
73 | ```
74 |
75 | 若要临时禁止,可以通过 `julia --startup-file=no` 来取消执行 `startup.jl` 文件。
76 |
77 |
78 | ## 常见问题
79 |
80 | ### 加快 Conda.jl 相关操作的速度
81 |
82 | `Conda.jl` 的加速分为两部分:
83 |
84 | * `conda` 的安装:如果系统中没有找到 `conda` 的话,`Conda.jl` 会下载并安装一份 miniconda。如果这一步下载非常缓慢的话,你可以提前从 [BFSU 镜像站](https://mirrors.bfsu.edu.cn/anaconda/archive/)下载并安装 anaconda,然后通过设置环境变量 `CONDA_JL_HOME=$HOME/anaconda3` 来指定 `Conda.jl` 所使用的`conda`,这样就避免重复下载 `miniconda`. (`$HOME/anaconda3`是 anaconda3 的默认安装位置,你可能需要根据具体情况进行调整。)
85 | * `conda add` 等操作的加速:这个只需要配置 anaconda 镜像源即可,即修改 `~/.condarc` 文件。具体的配置可以查看镜像站中 anaconda 镜像的使用说明。
86 |
87 | ### 为什么有些包的下载还是很慢?
88 |
89 | 有两类数据不会被镜像:
90 |
91 | * 在 `deps/build.jl` 文件中硬编码的下载地址,例如 [GR](https://github.com/jheinen/GR.jl/blob/70f025d5cb439d036409f1985107cb5e1615097f/deps/build.jl#L116).
92 | * 在 `Artifacts.toml` 中没有给出 `download` 项的资源, 例如 [TestImages](https://github.com/JuliaImages/TestImages.jl/blob/eaa94348df619c65956e8cfb0032ecddb7a29d3a/Artifacts.toml).
93 |
94 | 在安装包含这两类数据的包时,其数据依然是从原始地址进行下载,因此若网络不稳定则可能会在 `build` 阶段报错。
95 |
96 | ### 为什么注册表还是从原地址下载?
97 |
98 | Julia `v1.4.0` 之前的版本采用的是 `git clone` 的方式拉取注册表。为了保持兼容性,如果现有的注册表是一个完整的 git 仓库的话,
99 | 那么即使设置了 PkgServer 作为上游镜像也依然会通过 `git` 来进行更新,换句话说,不会通过镜像站来下载注册表数据。
100 |
101 | 以默认注册表 `General` 为例,只需要手动将其重置到镜像站即可:
102 |
103 | 1. 删除当前注册表:`(@v1.4) pkg> registry rm General`
104 | 2. 从镜像站重新下载数据:`(@v1.4) pkg> registry add General`
105 |
106 | ### 为什么有些包还是从原地址下载?
107 |
108 | 镜像站只镜像注册表中记录的包,因此如果某些包是通过指定 URL 的方式来安装的话,那么该包的更新不会从镜像站进行下载。
109 | 这常见于那些还未注册的包及其版本,例如:
110 |
111 | ```julia
112 | ]add Flux#master
113 | ]add https://github.com/FluxML/Flux.jl.git
114 | Pkg.add(PackageSpec(url="https://github.com/FluxML/Flux.jl.git"))
115 | ```
116 |
--------------------------------------------------------------------------------
/content/post/mirror-help/kali.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "kali"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | Kali Linux 是基于Debian的Linux发行版,设计用于数字鉴识和渗透测试。由 Offensive Security Ltd 维护和资助。
8 |
9 | 使用方法:
10 |
11 | 编辑`/etc/apt/sources.list`,在头部添加:
12 | ```sh
13 | deb https://mirrors.sjtug.sjtu.edu.cn/kali kali-rolling main contrib non-free non-free-firmware
14 | deb-src https://mirrors.sjtug.sjtu.edu.cn/kali kali-rolling main contrib non-free non-free-firmware
15 | ```
16 |
--------------------------------------------------------------------------------
/content/post/mirror-help/leopardsh.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "leopardsh"
3 | tags = ["mirror-help"]
4 | author = "zombie203619"
5 | +++
6 |
7 | leopard.sh / tiger.sh 是一个 PPC Mac OS X 10.4-10.5 上的包管理器,提供了许多常用软件包,节省了 PowerPC Mac 漫长的编译时间
8 |
9 | **使用说明**
10 |
11 | **Mac OS X Tiger:**
12 |
13 | 下载 `tiger.sh`,并运行安装
14 |
15 | ```bash
16 | curl -O http://leopard.sh/tigersh/tiger.sh
17 | chmod +x ./tiger.sh
18 | ./tiger.sh
19 | ```
20 |
21 | 安装完成后,脚本会自己移动到`/usr/local/bin/tiger.sh`,对其进行编辑:
22 |
23 | ```
24 | TIGERSH_MIRROR=${TIGERSH_MIRROR:-https://mirror.sjtu.edu.cn/leopardsh}
25 | ```
26 |
27 | 并在文件开头添加:
28 |
29 | ```
30 | export TIGERSH_MIRROR_NO_HTTP=1
31 | export TIGERSH_MIRROR_NO_HEAD=1
32 | ```
33 |
34 | **Mac OS X Leopard:**
35 |
36 | 下载 `leopard.sh`,并运行安装
37 |
38 | ```bash
39 | curl -O http://leopard.sh/leopardsh/leopard.sh
40 | chmod +x ./leopard.sh
41 | ./leopard.sh
42 | ```
43 |
44 | 安装完成后,脚本会自己移动到`/usr/local/bin/leopard.sh`,对其进行编辑:
45 |
46 | ```
47 | LEOPARDSH_MIRROR=${LEOPARDSH_MIRROR:-https://mirror.sjtu.edu.cn/leopardsh}
48 | ```
49 |
50 | 并在文件开头添加:
51 |
52 | ```
53 | export LEOPARDSH_MIRROR_NO_HTTP=1
54 | export LEOPARDSH_MIRROR_NO_HEAD=1
55 | ```
56 |
57 |
58 |
--------------------------------------------------------------------------------
/content/post/mirror-help/linuxliteos.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "linuxliteos"
3 | tags = ["mirror-help"]
4 | author = "hmsjy2017"
5 | +++
6 |
7 | Linux Lite 是一个基于 Ubuntu 长期支持版本(LTS)的 Linux 发行版,搭载 Xfce 桌面环境。Linux Lite 的目的是将 Windows 用户引入 Linux,对新手比较友好。其旨在提供一套完整的应用程序来帮助用户满足用户日常的计算需求,这包括完整的办公套件、媒体播放器和其他基本的日常软件。
8 |
9 | **使用方式:** 在终端输入`sudo nano /etc/apt/sources.list`,删除原有内容,用以下内容代替。
10 |
11 | ```
12 | deb https://mirrors.sjtug.sjtu.edu.cn/linuxliteos/ emerald main
13 | ```
14 |
15 | 然后
16 |
17 | `sudo apt update`
18 |
--------------------------------------------------------------------------------
/content/post/mirror-help/maven-central.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "maven-central"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | Apache Maven仓库存放了可用于Maven的大量软件包(特别是Java软件)。目前本镜像为 http://repo.maven.apache.org/maven2/ 的反向代理,能够加速安装。
8 |
9 | 使用方法:
10 |
11 | 修改Maven根目录下的`conf/setting.xml`,增加一节``,具体如下:
12 | ```xml
13 |
14 |
15 |
16 | sjtugmaven
17 | sjtug maven
18 | https://mirrors.sjtug.sjtu.edu.cn/maven-central/
19 | central
20 |
21 |
22 | ```
--------------------------------------------------------------------------------
/content/post/mirror-help/mongodb.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "mongodb"
3 | tags = ["mirror-help"]
4 | author = "skyzh"
5 | date = "2020-08-01T23:30:00+08:00"
6 | +++
7 |
8 | mongodb 源是 [repo.mongodb.org](http://repo.mongodb.org) 的全量同步。
9 |
10 | **使用说明**
11 |
12 | 请参照官方教程配置并安装 [https://docs.mongodb.com/manual/administration/install-on-linux/](https://docs.mongodb.com/manual/administration/install-on-linux/)。
13 | 在安装过程中,把 `https://repo.mongodb.org/` 替换为 `https://mirrors.sjtug.sjtu.edu.cn/mongodb/`。比如在 Ubuntu focal 中使用时,可以执行以下指令。
14 |
15 | ```
16 | wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add -
17 | echo "deb [ arch=amd64,arm64 ] https://mirrors.sjtug.sjtu.edu.cn/mongodb/apt/ubuntu/ focal/mongodb-org/4.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.4.list
18 | ```
19 |
--------------------------------------------------------------------------------
/content/post/mirror-help/msys2.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "msys2"
3 | tags = ["mirror-help"]
4 | author = "ricky136973"
5 | +++
6 |
7 | **收录架构**
8 |
9 | - MINGW: i686, x86_64
10 | - MSYS: i686, x86_64
11 |
12 | **获取基本组件包**
13 |
14 | 请访问该镜像目录下的`distrib/`目录([x86_64](http://mirrors.sjtug.sjtu.edu.cn/msys2/distrib/x86_64/)、[i686](http://mirrors.sjtug.sjtu.edu.cn/msys2/distrib/i686/)),找到名为`msys2-<架构>-<日期>.exe`的文件(如`msys2-x86_64-20141113.exe`),下载安装即可。
15 |
16 | **pacman的配置**
17 |
18 | 编辑`/etc/pacman.d/mirrorlist.mingw32`,在文件开头添加:
19 | ```
20 | Server = http://mirrors.sjtug.sjtu.edu.cn/msys2/mingw/i686
21 | ```
22 | 编辑`/etc/pacman.d/mirrorlist.mingw64`,在文件开头添加:
23 | ```
24 | Server = http://mirrors.sjtug.sjtu.edu.cn/msys2/mingw/x86_64
25 | ```
26 | 编辑`/etc/pacman.d/mirrorlist.msys`,在文件开头添加:
27 | ```
28 | Server = http://mirrors.sjtug.sjtu.edu.cn/msys2/msys/$arch
29 | ```
30 | 然后执行`pacman -Sy`刷新软件包数据即可。
31 |
32 | 注:本Help参考自[UTSC镜像](https://lug.ustc.edu.cn/wiki/mirrors/help/msys2)和[清华镜像](https://mirrors.tuna.tsinghua.edu.cn/help/msys2/)
33 |
--------------------------------------------------------------------------------
/content/post/mirror-help/mx-isos.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "mx-isos"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | [MX Linux](https://mxlinux.org/) 是一个基于Debian 稳定分支的面向桌面的Linux发行,它是antiX 及早先的MEPIS 社区合作的产物。它采用Xfce 作为缺省桌面,是一个轻量级操作系统。
8 |
9 | 本Repo镜像了MX Linux和AntiX的安装镜像。具体信息可以参见 https://mxlinux.org/wiki/system/iso-download-mirrors 。
10 |
11 | 本站另有`mx-packages`镜像,包括了MX Linux与AntiX的软件包,欢迎大家使用。
--------------------------------------------------------------------------------
/content/post/mirror-help/mx-packages.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "mx-packages"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | [MX Linux](https://mxlinux.org/) 是一个基于Debian 稳定分支的面向桌面的Linux发行,它是antiX 及早先的MEPIS 社区合作的产物。它采用Xfce 作为缺省桌面,是一个轻量级操作系统。
8 |
9 | 本Repo镜像了MX Linux和AntiX的软件包。
10 |
11 | 使用方法:
12 |
13 | - (推荐)打开MX Repo Manager,选择SJTUG mirror
14 |
15 | - (手动):
16 | 打开` /etc/apt/sources.list`,将
17 | ```
18 | deb http://mxrepo.com/mx/repo/ stretch non-free main
19 | deb http://mxrepo.com/mx/testrepo/ mx7 test
20 | ```
21 |
22 | 替换成
23 |
24 | ```
25 | deb http://mirrors.sjtug.sjtu.edu.cn/mx-packages/mx/repo stretch main non-free
26 | deb http://mirrors.sjtug.sjtu.edu.cn/mx-packages/mx/testrepo test
27 | ```
28 |
--------------------------------------------------------------------------------
/content/post/mirror-help/nix-channels.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "nix-channels/store"
3 | tags = ["mirror-help"]
4 | author = "c4droid"
5 | +++
6 |
7 | Nix 是一个支持 Linux 和 macOS 的函数式包管理器,具有原子更新、依赖隔离、构建尽可能可复现等特点。
8 |
9 | Nixpkgs 是 Nix 包管理器对应的软件发行版,使用 Nix 函数式语言编写,除软件包外提供用于软件定制、构建、开发环境配置的工具。
10 |
11 | 使用方法:
12 |
13 | 单独安装的 Nix:编辑配置文件(系统配置位于 `/etc/nix/nix.conf`,用户配置位于 `~/.config/nix/nix.conf`):
14 |
15 | ```
16 | substituters = https://mirror.sjtu.edu.cn/nix-channels/store https://cache.nixos.org
17 | ```
18 |
19 | 单独安装的 Nix 在更改完配置文件之后需要重启 nix-daemon 才能应用配置。
20 |
21 | NixOS 与 nix-darwin:编辑配置文件(一般来说,NixOS 配置位于 `/etc/nixos/configuration.nix`,nix-darwin 配置位于 `$HOME/.nixpkgs/darwin-configuration.nix`,如果你手动指定了 `NIX_PATH` 或是使用 Flakes 管理系统,请根据具体情况编辑对应的文件):
22 |
23 | 对于 NixOS 21.11(及之前的版本)与 nix-darwin:
24 |
25 | ``` nix
26 | { config, lib, pkgs, ... }:
27 | {
28 | nix.binaryCaches = [ "https://mirror.sjtu.edu.cn/nix-channels/store" ];
29 | }
30 | ```
31 |
32 | 对于 NixOS 22.05(及之后的版本):
33 |
34 | ``` nix
35 | { config, lib, pkgs, ... }:
36 | {
37 | nix.settings.substituters = [ "https://mirror.sjtu.edu.cn/nix-channels/store" ];
38 | }
39 | ```
40 |
41 | NixOS 与 nix-darwin 在更改完配置之后需要 switch 到新配置后生效。
42 |
--------------------------------------------------------------------------------
/content/post/mirror-help/nodejs-release.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "nodejs-release"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | 本链接反代了 https://nodejs.org/dist/ 。可以在此手动下载Nodejs的安装包,也可以配合Nodejs环境使用:
8 |
9 | - `n`:`export NODE_MIRROR=https://mirrors.sjtug.sjtu.edu.cn/nodejs-release/`
10 | - `nvm`:`export NVM_NODEJS_ORG_MIRROR=https://mirrors.sjtug.sjtu.edu.cn/nodejs-release`
--------------------------------------------------------------------------------
/content/post/mirror-help/npm-registry.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "npm-registry"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | npm-registry 源是 NodeJS 的官方包管理 npm 的仓库的反向代理,可以加速`npm install`等需要下载的命令。
8 |
9 | 使用方法:
10 |
11 | - **短期使用**: 在`npm`命令后加上`--registry=https://mirrors.sjtug.sjtu.edu.cn/npm-registry`的参数,即可使用SJTUG源。
12 | - **长期使用**:
13 | - **Xnix**: 打开`$HOME/.npmrc`,添加以下内容:
14 | ```
15 | registry=https://mirrors.sjtug.sjtu.edu.cn/npm-registry
16 | ```
17 | 即可大幅提升下载速度。
18 | - **Windows**: 编辑`%USERPROFILE%\.npmrc`,同样加入以上内容即可使用SJTUG镜像源。
--------------------------------------------------------------------------------
/content/post/mirror-help/ohmyzsh.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "git/ohmyzsh.git"
3 | tags = ["mirror-help"]
4 | author = "AlexaraWu"
5 | +++
6 |
7 | [Oh My Zsh](https://ohmyz.sh/) 是一个由社区驱动的开源框架,用于管理 [zsh](https://www.zsh.org/) 的配置。
8 |
9 | ## 首次安装 Oh My Zsh
10 |
11 | 首先,需要确保系统中安装了 zsh 和 git,然后在终端运行以下命令其中之一:
12 |
13 | | 方法 | 命令 |
14 | |:----------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
15 | | **curl** | `REPO=sjtug/ohmyzsh REMOTE=https://git.sjtu.edu.cn/${REPO}.git sh -c "$(curl -fsSL https://git.sjtu.edu.cn/sjtug/ohmyzsh/-/raw/master/tools/install.sh\?inline\=false)"` |
16 | | **wget** | `REPO=sjtug/ohmyzsh REMOTE=https://git.sjtu.edu.cn/${REPO}.git sh -c "$(wget -O- https://git.sjtu.edu.cn/sjtug/ohmyzsh/-/raw/master/tools/install.sh\?inline\=false)"` |
17 | | **fetch** | `REPO=sjtug/ohmyzsh REMOTE=https://git.sjtu.edu.cn/${REPO}.git sh -c "$(fetch -o - https://git.sjtu.edu.cn/sjtug/ohmyzsh/-/raw/master/tools/install.sh\?inline\=false)"` |
18 |
19 | ## 替换现有仓库上游
20 |
21 | ```sh
22 | git -C $ZSH remote set-url origin https://git.sjtu.edu.cn/sjtug/ohmyzsh.git
23 | ```
24 |
--------------------------------------------------------------------------------
/content/post/mirror-help/opam-git.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "git/opam-repository.git"
3 | tags = ["mirror-help"]
4 | author = "skyzh"
5 | date = "2020-10-13T19:00:00+08:00"
6 | +++
7 |
8 | [opam](https://opam.ocaml.org) 是 OCaml 的包管理器。SJTUG 提供 opam 的反代服务。
9 |
10 | 首次使用 opam,可以使用 SJTUG 镜像源初始化 opam。
11 |
12 | ```
13 | opam init default https://mirrors.sjtug.sjtu.edu.cn/git/opam-repository.git
14 | ```
15 |
16 | 使用下面的指令,可以将默认源替换为 SJTUG 镜像。
17 |
18 | ```
19 | opam repo set-url default https://mirrors.sjtug.sjtu.edu.cn/git/opam-repository.git --all --set-default
20 | ```
21 |
--------------------------------------------------------------------------------
/content/post/mirror-help/openEuler.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "openEuler"
3 | tags = ["mirror-help"]
4 | author = "zhang-jian-jun"
5 | +++
6 |
7 | openEuler 是一个开源、免费的 Linux 发行版,将通过开放的社区形式与全球的开发者共同构建一个开放、
8 | 多元和架构包容的软件生态体系。
9 |
10 | 同时,openEuler 也是一个创新的平台,鼓励任何人在该平台上提出新想法、开拓新思路、实践新方案。
11 |
12 | ## 配置方法
13 |
14 | openEuler 源包含多个版本,假定您需要使用 openEuler-20.09 版本,在 yum 源目录(`/etc/yum.repos.d/`)下新增 openEuler.repo 文件,
15 | 注意文件中的 `openEuler-20.09` 路径:
16 |
17 | ```
18 | [OS]
19 | name=OS
20 | baseurl=https://mirror.sjtu.edu.cn/openeuler/openEuler-20.09/OS/$basearch/
21 | enabled=1
22 | gpgcheck=1
23 | gpgkey=https://mirror.sjtu.edu.cn/openeuler/openEuler-20.09/OS/$basearch/RPM-GPG-KEY-openEuler
24 | [everything]
25 | name=everything
26 | baseurl=https://mirror.sjtu.edu.cn/openeuler/openEuler-20.09/everything/$basearch/
27 | enabled=1
28 | gpgcheck=1
29 | gpgkey=https://mirror.sjtu.edu.cn/openeuler/openEuler-20.09/everything/$basearch/RPM-GPG-KEY-openEuler
30 | [EPOL]
31 | name=EPOL
32 | baseurl=https://mirror.sjtu.edu.cn/openeuler/openEuler-20.09/EPOL/$basearch/
33 | enabled=1
34 | gpgcheck=1
35 | gpgkey=https://mirror.sjtu.edu.cn/openeuler/openEuler-20.09/EPOL/$basearch/RPM-GPG-KEY-openEuler
36 | [debuginfo]
37 | name=debuginfo
38 | baseurl=https://mirror.sjtu.edu.cn/openeuler/openEuler-20.09/debuginfo/$basearch/
39 | enabled=1
40 | gpgcheck=1
41 | gpgkey=https://mirror.sjtu.edu.cn/openeuler/openEuler-20.09/debuginfo/$basearch/RPM-GPG-KEY-openEuler
42 | [source]
43 | name=source
44 | baseurl=https://mirror.sjtu.edu.cn/openeuler/openEuler-20.09/source/
45 | enabled=1
46 | gpgcheck=1
47 | gpgkey=https://mirror.sjtu.edu.cn/openeuler/openEuler-20.09/source/RPM-GPG-KEY-openEuler
48 | ```
49 |
50 | 正常执行 `yum update` 和 `yum install` 即可。如果您在使用的过程中遇到任何问题,可以直接联系 openEuler
51 | 社区 [admin@openeuler.io](mailto:admin@openeuler.io),也可以通过 GitHub 向 SJTUG 反馈 bug。
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/content/post/mirror-help/packagist.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "packagist"
3 | tags = ["mirror-help"]
4 | author = "skyzh"
5 | +++
6 |
7 | Packagist 是 PHP 包管理软件 Composer 的源。本镜像仅包含所有包的 metadata,并非全量同步镜像。
8 |
9 | **使用方法**
10 |
11 | 全局设置
12 |
13 | ```
14 | composer config -g repo.packagist composer https://packagist.mirrors.sjtug.sjtu.edu.cn
15 | ```
16 |
17 | 或者仅对一个项目设置
18 |
19 | ```
20 | composer config repo.packagist composer https://packagist.mirrors.sjtug.sjtu.edu.cn
21 | ```
22 |
--------------------------------------------------------------------------------
/content/post/mirror-help/parrot.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "parrot"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | Parrot Security OS是一个基于Debian的Linux发行版,专注于计算机安全。它专为渗透测试,漏洞评估和缓解,计算机取证和匿名Web浏览而设计。
8 |
9 | **使用方法**
10 |
11 | 修改`etc/apt/sources.list.d/parrot.list`的以下内容:
12 |
13 | ```
14 | #stable repository
15 | deb https://mirrors.sjtug.sjtu.edu.cn/parrot/ parrot main contrib non-free
16 | #deb-src https://mirrors.sjtug.sjtu.edu.cn/parrot/ parrot main contrib non-free
17 | ```
--------------------------------------------------------------------------------
/content/post/mirror-help/pop-os.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "pop-os"
3 | tags = ["mirror-help"]
4 | author = "xiaozhu"
5 | date = "2023-06-08T18:27:00+08:00"
6 | +++
7 |
8 | PopOS 是 system76 公司基于 ubuntu 开发的衍生版,具有称为 COSMIC 的定制 GNOME桌面环境,内置大量的库和开发工具。
9 |
10 | 使用方法:
11 | ```bash
12 | sed -i 's@http://apt.pop-os.org/@https://mirror.sjtu.edu.cn/pop-os/@g' /etc/apt/sources.list.d/pop-os-apps.sources
13 | sed -i 's@http://apt.pop-os.org/@https://mirror.sjtu.edu.cn/pop-os/@g' /etc/apt/sources.list.d/pop-os-release.sources
14 | sed -i 's@http://apt.pop-os.org/@https://mirror.sjtu.edu.cn/@g' /etc/apt/sources.list.d/system.sources
15 | ```
16 |
--------------------------------------------------------------------------------
/content/post/mirror-help/putty.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "putty"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | PuTTY是一个支持Telnet、SSH、rlogin、纯TCP以及串行端口连接软件。
8 |
9 | 使用方法:直接打开点击Download
--------------------------------------------------------------------------------
/content/post/mirror-help/pypi-packages.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "pypi-packages"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | 2019年10月10日起,由于 PyPI 占用过多空间,我们将 PyPI 改为了反代。PyPI 源的服务质量可能有所下降。
8 |
9 | 2020年12月7日起,我们通过智能缓存全量同步了 PyPI。欢迎继续使用。
10 |
11 | PyPI 是 Python 官方的包仓库,可以通过 `pip`, `easy_install` 等方式从 PyPI 安装 `numpy`, `tensorflow` 等常用包。
12 |
13 | 执行指令
14 |
15 | ```bash
16 | pip config set global.index-url https://mirror.sjtu.edu.cn/pypi/web/simple
17 | ```
18 |
19 | 或者创建或编辑 `~/.config/pip/pip.conf` 文件,加入或修改 `index-url` 相关段落为:
20 |
21 | ```conf
22 | [global]
23 | index-url = https://mirror.sjtu.edu.cn/pypi/web/simple
24 | format = columns
25 | ```
26 |
27 | 临时使用:
28 |
29 | ```bash
30 | pip install -i https://mirror.sjtu.edu.cn/pypi/web/simple numpy
31 | ```
32 |
--------------------------------------------------------------------------------
/content/post/mirror-help/pypi.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "pypi/web/simple"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | 2019年10月10日起,由于 PyPI 占用过多空间,我们将 PyPI 改为了反代。PyPI 源的服务质量可能有所下降。
8 |
9 | 2020年12月7日起,我们通过智能缓存全量同步了 PyPI。欢迎继续使用。
10 |
11 | PyPI 是 Python 官方的包仓库,可以通过 `pip`, `easy_install` 等方式从 PyPI 安装 `numpy`, `tensorflow` 等常用包。
12 |
13 | 执行指令
14 |
15 | ```bash
16 | pip config set global.index-url https://mirror.sjtu.edu.cn/pypi/web/simple
17 | ```
18 |
19 | 或者创建或编辑 `~/.config/pip/pip.conf` 文件,加入或修改 `index-url` 相关段落为:
20 |
21 | ```conf
22 | [global]
23 | index-url = https://mirror.sjtu.edu.cn/pypi/web/simple
24 | format = columns
25 | ```
26 |
27 | 临时使用:
28 |
29 | ```bash
30 | pip install -i https://mirror.sjtu.edu.cn/pypi/web/simple numpy
31 | ```
32 |
--------------------------------------------------------------------------------
/content/post/mirror-help/pytorch-wheels.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "pytorch-wheels"
3 | tags = ["mirror-help"]
4 | author = "skyzh"
5 | +++
6 |
7 | pytorch-wheels 是 PyTorch pip 源的镜像。直接将 [PyTorch 安装指引](https://pytorch.org/get-started/locally/)
8 | 中的 `https://download.pytorch.org/whl` 替换为 `https://mirror.sjtu.edu.cn/pytorch-wheels` 即可。
9 |
10 | ```bash
11 | pip install torch===1.7.1 torchvision===0.8.2 torchaudio===0.7.2 -f https://mirror.sjtu.edu.cn/pytorch-wheels/torch_stable.html
12 | ```
13 |
--------------------------------------------------------------------------------
/content/post/mirror-help/qt.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "qt"
3 | tags = ["mirror-help"]
4 | author = "skyzh"
5 | date = "2021-02-22T11:00:00+08:00"
6 | +++
7 |
8 | 通常来说,Qt 在线安装器会自动选择最近的镜像,因此无需做特殊设置即可使用 SJTUG Qt 镜像。
9 |
10 | 你可以通过下面的方法手动指定 Qt 镜像。
11 |
12 | * 使用离线安装器安装:在 [Offline Installers](https://www.qt.io/offline-installers) 页面中找到需要下载的版本,并将链接中的
13 | `http://download.qt.io` 替换为 `https://mirrors.sjtug.sjtu.edu.cn/qt`。
14 | * 使用在线安装器安装:参考 [Qt Wiki](https://wiki.qt.io/Online_Installer_4.x#Selecting_a_mirror_for_opensource),
15 | 在命令行中给安装器提供 `--mirror https://mirrors.sjtug.sjtu.edu.cn/qt` 的参数。比如在 macOS 上:
16 |
17 | ```
18 | ./qt-unified-macOS-x86_64-4.0.1-1-online.app/Contents/MacOS/qt-unified-macOS-x86_64-4.0.1-1-online --mirror https://mirrors.sjtug.sjtu.edu.cn/qt
19 | ```
20 |
--------------------------------------------------------------------------------
/content/post/mirror-help/raspberry-pi-os-images.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "raspberry-pi-os-images"
3 | tags = ["mirror-help"]
4 | author = "danyang685"
5 | +++
6 |
7 | 主仓库地址: http://downloads.raspberrypi.org/
8 |
9 | **使用方法**
10 |
11 | 根据需要的版本进入以下包含 Raspberry Pi OS 系统镜像的目录,选择`.zip`文件下载即可。推荐使用 [balenaEtcher](https://www.balena.io/etcher/) 将镜像写入 SD 卡
12 |
13 | | Raspberry Pi OS 版本 | 存储目录 |
14 | | ------------------------------- | ------------------------------------------------------------ |
15 | | 精简版 Raspberry Pi OS 系统 | [raspios_lite_armhf](https://mirrors.sjtug.sjtu.edu.cn/raspberry-pi-os-images/raspios_lite_armhf/images/) |
16 | | 常规版 Raspberry Pi OS 系统 | [raspios_armhf](https://mirrors.sjtug.sjtu.edu.cn/raspberry-pi-os-images/raspios_armhf/images/) |
17 | | 完整版 Raspberry Pi OS 系统 | [raspios_full_armhf](https://mirrors.sjtug.sjtu.edu.cn/raspberry-pi-os-images/raspios_full_armhf/images/) |
18 | | 精简版 Raspberry Pi OS 64位系统 | [raspios_lite_arm64](https://mirrors.sjtug.sjtu.edu.cn/raspberry-pi-os-images/raspios_lite_arm64/images/) |
19 | | 常规版 Raspberry Pi OS 64位系统 | [raspios_arm64](https://mirrors.sjtug.sjtu.edu.cn/raspberry-pi-os-images/raspios_arm64/images/) |
20 |
21 | **备注**
22 |
23 | - 暂无 Raspberry Pi OS 64位完整版系统
24 | - Raspberry Pi OS 是 Raspbian 的后继者,二者名称不同,但功能和界面相同。首个 Raspberry Pi OS 系统发行于 2020年5月27日
25 | - 2012年7月15日-2020年2月14日期间发行的旧版 Raspbian 系统镜像与 Raspberry Pi OS 位于不同目录,各版本分别位于:[raspbian_lite](https://mirrors.sjtug.sjtu.edu.cn/raspberry-pi-os-images/raspbian_lite/images/)、[raspbian](https://mirrors.sjtug.sjtu.edu.cn/raspberry-pi-os-images/raspbian/images/)、[raspbian_full](https://mirrors.sjtug.sjtu.edu.cn/raspberry-pi-os-images/raspbian_full/images/)。
26 |
27 | **Raspberry Pi OS 常用设置**
28 |
29 | - 无头初始化设置
30 | - 启用 SSH:在 SD 卡 boot 分区中创建名为 `ssh` (不应包括任何扩展名或其他字符)的空白文件
31 |
32 | - 预设 WiFi 信息:在 SD 卡 boot 分区中创建名为 `wpa_supplicant.conf` 的文本文件,按如下格式填写 `YOUR_WiFi_NAME` 和 `YOUR_WiFi_PASSWORD` ,推荐设置为本机 WiFi 热点或拥有管理员权限的无线路由器 WiFi ,以便查找树莓派的 IP 地址
33 |
34 | ```
35 | ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
36 | update_config=1
37 | country=CN
38 |
39 | network={
40 | ssid="YOUR_WiFi_NAME"
41 | psk="YOUR_WiFi_PASSWORD"
42 | }
43 | ```
44 |
45 | - 远程连接:插卡启动树莓派,在 WiFi 热点中查询 IP 分配情况,确认树莓派的 IP 地址,使用 SSH 进行远程连接。树莓派的默认 SSH 端口为 22,用户名为 `pi` ,默认密码为 `raspberry`
46 |
47 | - 命令行下的设置
48 |
49 | - 在终端输入 `sudo raspi-config` 命令进行基本设置。可将时区设置为 `Asia/Shanghai` ,将默认区域更改为 `en_US.UTF-8` (英文)或 `zh_CN.UTF-8` (中文);连接USB键盘时,可将键盘布局修改为美式键盘(Generic 104-key PC -> Other -> English (US) -> English (US));同时还可启用 VNC 以进行远程桌面连接。
50 |
51 | - 图形界面下的设置
52 |
53 | - 首次进入桌面时,根据提示进行鼠标操作设置即可
54 |
55 | - apt 软件源修改
56 |
57 | - Raspberry Pi OS 系统镜像内预置的 apt 软件源在国内访问缓慢,可将 apt 软件源更改为 SJTUG 镜像源
58 |
59 | - 将 `/etc/apt/sources.list` 文件中的 raspbian 存储库由 `http://raspbian.raspberrypi.org/raspbian/` 更改为 `https://mirrors.sjtug.sjtu.edu.cn/raspbian/raspbian/` ,对于64位 Raspberry Pi OS ,将 `http://deb.debian.org/debian/` 更改为 `https://mirrors.sjtug.sjtu.edu.cn/debian/` ,将 `http://deb.debian.org/debian-security/` 更改为 `https://mirrors.sjtug.sjtu.edu.cn/debian-security/`
60 | - 将 `/etc/apt/sources.list.d/raspi.list` 文件中的 raspberrypi 存储库由 `http://archive.raspberrypi.org/debian/` 更改为 `https://mirrors.sjtug.sjtu.edu.cn/raspberrypi/debian/`
61 |
62 | - 可输入以下命令完成 apt 软件源设置(截至 2021-05-28 版仍然适用)
63 |
64 | ```shell
65 | sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
66 | sudo cp /etc/apt/sources.list.d/raspi.list /etc/apt/sources.list.d/raspi.list.bak
67 | sudo sed -i "s|http://raspbian.raspberrypi.org/raspbian/|https://mirrors.sjtug.sjtu.edu.cn/raspbian/raspbian/|g" /etc/apt/sources.list
68 | sudo sed -i "s|http://deb.debian.org/debian|https://mirrors.sjtug.sjtu.edu.cn/debian|g" /etc/apt/sources.list
69 | sudo sed -i "s|http://archive.raspberrypi.org/debian/|https://mirrors.sjtug.sjtu.edu.cn/raspberrypi/debian/|g" /etc/apt/sources.list.d/raspi.list
70 | sudo apt update
71 | ```
72 |
73 |
74 | - 添加 Raspbian 非官方软件源 Raspbian Addons(可选)
75 |
76 | ```shell
77 | wget -qO- https://mirror.sjtu.edu.cn/raspbian-addons/KEY.gpg | sudo apt-key add -
78 | echo "deb https://mirror.sjtu.edu.cn/raspbian-addons/debian precise main" | sudo tee /etc/apt/sources.list.d/raspbian-addons.list
79 | sudo apt update
80 | ```
81 |
82 | - 软件包更新
83 |
84 | ```shell
85 | sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y
86 | ```
87 |
88 |
--------------------------------------------------------------------------------
/content/post/mirror-help/raspberrypi.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "raspberrypi"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | raspberrypi是树莓派基金会提供的软件源,包括 ui 相关程序及部分由树莓派基金会为树莓派编写的软件。
8 |
9 | **使用方法**
10 |
11 | 将`/etc/apt/sources.list.d/raspi.list`中的`http://archive.raspberrypi.org/debian/`更换成`https://mirrors.sjtug.sjtu.edu.cn/raspberrypi/debian/`。
12 |
--------------------------------------------------------------------------------
/content/post/mirror-help/raspbian-addons.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "raspbian-addons"
3 | tags = ["mirror-help"]
4 | author = "hmsjy2017"
5 | +++
6 |
7 | Raspbian Addons 是 Raspbian 非官方软件源,含有许多来自 GitHub 的开源软件,可作为对 Raspbian(Debian) 官方仓库的一个补充。
8 |
9 | - 项目主页:https://raspbian-addons.org
10 | - 官方文档:https://docs.raspbian-addons.org
11 | - GitHub 主页:https://github.com/raspbian-addons
12 |
13 |
14 | 支持架构:armhf、arm64
15 |
16 | ## 使用方法
17 | 信任仓库的 GPG 公钥
18 | ```bash
19 | wget -qO- https://mirror.sjtu.edu.cn/raspbian-addons/KEY.gpg | sudo apt-key add -
20 | ```
21 | 添加该仓库
22 | ```bash
23 | echo "deb https://mirror.sjtu.edu.cn/raspbian-addons/debian precise main" | sudo tee /etc/apt/sources.list.d/raspbian-addons.list
24 | ```
25 | 更新软件包缓存
26 | ```bash
27 | sudo apt update
28 | ```
29 |
--------------------------------------------------------------------------------
/content/post/mirror-help/raspbian.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "raspbian"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | Raspberry Pi OS 是为树莓派设计,基于 Debian 的操作系统。本镜像提供了 Raspberry Pi OS 的官方软件源。
8 |
9 | **使用方法**
10 |
11 | 更换软件源:
12 |
13 | 编辑`/etc/apt/sources.list`,将所有的`deb`与`deb-src`之后的网址替换成`https://mirrors.sjtug.sjtu.edu.cn/raspbian/raspbian/`。
14 |
--------------------------------------------------------------------------------
/content/post/mirror-help/rocky.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "rocky"
3 | tags = ["mirror-help"]
4 | author = "berlin2123"
5 | +++
6 |
7 | 使用方法:运行下面的指令一键替换并备份。
8 |
9 | ```bash
10 | sed -e 's|^mirrorlist=|#mirrorlist=|g' \
11 | -e 's|^#baseurl=http://dl.rockylinux.org/$contentdir|baseurl=https://mirrors.sjtug.sjtu.edu.cn/rocky|g' \
12 | -i.bak \
13 | /etc/yum.repos.d/Rocky-*.repo
14 | ```
15 |
16 | 最后运行 `dnf makecache` 生成缓存
17 |
--------------------------------------------------------------------------------
/content/post/mirror-help/ros.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "ros"
3 | tags = ["mirror-help"]
4 | author = "wdwang"
5 | +++
6 |
7 | 使用方式:
8 |
9 | 可使用`gedit`等文本编辑器修改`/etc/apt/sources.list.d/ros-latest.list`。修改后使用`sudo apt update`更新软件源。
10 |
11 | Ubuntu 18.04 (ROS Melodic)
12 |
13 | ```
14 | deb https://mirrors.sjtug.sjtu.edu.cn/ros/ubuntu bionic main
15 | ```
16 |
17 | Ubuntu 20.04 (ROS Noetic)
18 |
19 | ```
20 | deb https://mirrors.sjtug.sjtu.edu.cn/ros/ubuntu focal main
21 | ```
22 |
--------------------------------------------------------------------------------
/content/post/mirror-help/rust-static.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "rust-static"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 | +++
6 |
7 | rust-static储存了rust的工具链及`rustup`本身的镜像。
8 |
9 | 使用方法:安装`rustup`,将以下环境变量加入`~/.bashrc`或类似文件中:
10 | ```sh
11 | export RUSTUP_DIST_SERVER=https://mirror.sjtu.edu.cn/rust-static
12 | export RUSTUP_UPDATE_ROOT=https://mirror.sjtu.edu.cn/rust-static/rustup
13 | ```
14 |
--------------------------------------------------------------------------------
/content/post/mirror-help/ubuntu-cdimage.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "ubuntu-cdimage"
3 | tags = ["mirror-help"]
4 | author = "LengmoAngel"
5 | +++
6 |
7 | Ubuntu 是一个基于 Debian 的 Linux 发行版。 Ubuntu 的目标在于为一般用户提供一个最新同时又相当稳定,主要以自由软件建构而成的作业系统。 Ubuntu 目前具有庞大的社群力量支持,用户可以方便地从社群获得帮助。
8 |
9 | 本镜像提供现在维护版本的每日构建版本、 Ubuntu 原版的 server 版本和 Ubuntu 衍生版本,提供这些版本的多个架构支持。
10 |
11 | Ubuntu 衍生版现在包括 Kubuntu(KDE) 、 Xubuntu(Xfce) 、 Ubuntu Budgie 、 Ubuntu Studio 、 Lubuntu(LXDE) 、 Ubuntu Kylin (优麒麟)、Ubuntu MATE 、Ubuntu Budgie(Budgie),可以进入相关目录下载衍生版的镜像。
12 |
13 | 你可以查看 [https://wiki.ubuntu.com/UbuntuFlavors](https://wiki.ubuntu.com/UbuntuFlavors) 现在所支持的 Ubuntu 衍生版本和已经不受到支持的 Ubuntu 衍生版本。
14 |
15 | 如果你正在寻找原版的桌面版本,你可以在 [https://mirror.sjtu.edu.cn/ubuntu-cd/](https://mirror.sjtu.edu.cn/ubuntu-cd/) 获取,
16 | 也可以在这查看使用帮助 [https://mirror.sjtu.edu.cn/docs/ubuntu-cd](https://mirror.sjtu.edu.cn/docs/ubuntu-cd)。
17 |
--------------------------------------------------------------------------------
/content/post/mirror-help/ubuntu-cloud-images.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "ubuntu-cloud-images"
3 | tags = ["mirror-help"]
4 | author = "LengmoAngel"
5 | +++
6 |
7 | 本镜像为 OpenStack, LXD 等公有云使用的 Ubuntu 镜像,收录官方的云 Ubuntu 镜像,由 Canonical 定制,提供 Ubuntu 认证镜像,可在 OpenStack, LXD 等公有云上运行。
8 |
9 | 本镜像包含 KVM, Hyper-V, Xen 等虚拟结构的官方定制镜像。
10 |
11 | **使用方法**
12 |
13 | 可以使用 [https://mirror.sjtu.edu.cn/ubuntu-cloud-images/locator/](https://mirror.sjtu.edu.cn/ubuntu-cloud-images/locator) 查找公有云使用的镜像。
14 |
--------------------------------------------------------------------------------
/content/post/mirror-help/ubuntu-ports.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "ubuntu-ports"
3 | tags = ["mirror-help"]
4 | author = "wdwang"
5 | +++
6 |
7 | 使用方式:
8 |
9 | 可使用`gedit`等文本编辑器修改`/etc/apt/sources.list`。修改后使用`sudo apt update`更新软件源。
10 |
11 | 从 Ubuntu 24.04 起,Ubuntu 的软件源配置文件变更为 DEB822 格式,在此格式下使用镜像源时,须注意替换`/etc/apt/sources.list`对应路径为`/etc/apt/sources.list.d/ubuntu.sources`。
12 |
13 | Ubuntu 18.04
14 |
15 | ```
16 | deb https://mirror.sjtu.edu.cn/ubuntu-ports/ bionic main restricted universe multiverse
17 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ bionic main restricted universe multiverse
18 | deb https://mirror.sjtu.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
19 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
20 | deb https://mirror.sjtu.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
21 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
22 | deb https://mirror.sjtu.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse
23 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse
24 |
25 | # deb https://mirror.sjtu.edu.cn/ubuntu-ports/ bionic-proposed main restricted universe multiverse
26 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ bionic-proposed main restricted universe multiverse
27 | ```
28 |
29 | Ubuntu 20.04
30 |
31 | ```
32 | deb https://mirror.sjtu.edu.cn/ubuntu-ports/ focal main restricted universe multiverse
33 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ focal main restricted universe multiverse
34 | deb https://mirror.sjtu.edu.cn/ubuntu-ports/ focal-updates main restricted universe multiverse
35 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ focal-updates main restricted universe multiverse
36 | deb https://mirror.sjtu.edu.cn/ubuntu-ports/ focal-backports main restricted universe multiverse
37 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ focal-backports main restricted universe multiverse
38 | deb https://mirror.sjtu.edu.cn/ubuntu-ports/ focal-security main restricted universe multiverse
39 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ focal-security main restricted universe multiverse
40 |
41 | # deb https://mirror.sjtu.edu.cn/ubuntu-ports/ focal-proposed main restricted universe multiverse
42 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ focal-proposed main restricted universe multiverse
43 | ```
44 |
45 | Ubuntu 22.04
46 |
47 | ```
48 | deb https://mirror.sjtu.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
49 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
50 | deb https://mirror.sjtu.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
51 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
52 | deb https://mirror.sjtu.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
53 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
54 | deb https://mirror.sjtu.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse
55 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse
56 |
57 | # deb https://mirror.sjtu.edu.cn/ubuntu-ports/ jammy-proposed main restricted universe multiverse
58 | # deb-src https://mirror.sjtu.edu.cn/ubuntu-ports/ jammy-proposed main restricted universe multiverse
59 | ```
60 |
61 | Ubuntu 24.04 (DEB822 格式) `/etc/apt/sources.list.d/ubuntu.sources`
62 |
63 | ```
64 | Types: deb
65 | URIs: https://mirror.sjtu.edu.cn/ubuntu/
66 | Suites: noble noble-updates noble-backports
67 | Components: main restricted universe multiverse
68 | Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
69 |
70 | # Types: deb-src
71 | # URIs: https://mirror.sjtu.edu.cn/ubuntu/
72 | # Suites: noble noble-updates noble-backports
73 | # Components: main restricted universe multiverse
74 | # Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
75 |
76 | Types: deb
77 | URIs: https://mirror.sjtu.edu.cn/ubuntu/
78 | Suites: noble-security
79 | Components: main restricted universe multiverse
80 | Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
81 |
82 | # Types: deb-src
83 | # URIs: https://mirror.sjtu.edu.cn/ubuntu/
84 | # Suites: noble-security
85 | # Components: main restricted universe multiverse
86 | # Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
87 |
88 | # Types: deb
89 | # URIs: https://mirror.sjtu.edu.cn/ubuntu/
90 | # Suites: noble-proposed
91 | # Components: main restricted universe multiverse
92 | # Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
93 |
94 | # Types: deb-src
95 | # URIs: https://mirror.sjtu.edu.cn/ubuntu/
96 | # Suites: noble-proposed
97 | # Components: main restricted universe multiverse
98 | # Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
99 | ```
100 |
101 | Ubuntu 24.04 (旧格式,不推荐使用) `/etc/apt/sources.list`
102 |
103 | ```
104 | deb https://mirror.sjtu.edu.cn/ubuntu/ noble main restricted universe multiverse
105 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ noble main restricted universe multiverse
106 | deb https://mirror.sjtu.edu.cn/ubuntu/ noble-updates main restricted universe multiverse
107 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ noble-updates main restricted universe multiverse
108 | deb https://mirror.sjtu.edu.cn/ubuntu/ noble-backports main restricted universe multiverse
109 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ noble-backports main restricted universe multiverse
110 | deb https://mirror.sjtu.edu.cn/ubuntu/ noble-security main restricted universe multiverse
111 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ noble-security main restricted universe multiverse
112 |
113 | # deb https://mirror.sjtu.edu.cn/ubuntu/ noble-proposed main restricted universe multiverse
114 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ noble-proposed main restricted universe multiverse
115 | ```
116 |
117 | 其中`deb-src`为源码镜像,默认注释以提高速度。可将原镜像列表备份后替换为上述内容。
118 |
--------------------------------------------------------------------------------
/content/post/mirror-help/ubuntu-releases.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "ubuntu-releases"
3 | tags = ["mirror-help"]
4 | author = "LengmoAngel"
5 | +++
6 |
7 | Ubuntu 是一个基于 Debian 的 Linux 发行版。 Ubuntu 的目标在于为一般用户提供一个最新同时又相当稳定,主要以自由软件建构而成的作业系统。 Ubuntu 目前具有庞大的社群力量支持,用户可以方便地从社群获得帮助。
8 |
9 | 本镜像主要收录还在生命周期内 x86 和 arm 架构的镜像,包括开发版,不包括超过 End of Standard Support 后进入 ESM 的镜像。
10 |
11 | 您可以通过 [https://wiki.ubuntu.com/Releases](https://wiki.ubuntu.com/Releases) 查看现在还在生命周期内的镜像。
12 |
13 | 更多衍生发行版和其他架构非桌面版本请至 [https://mirror.sjtu.edu.cn/ubuntu-cdimage/](https://mirror.sjtu.edu.cn/ubuntu-cdimage/) 查看,或者在 [https://mirror.sjtu.edu.cn/docs/ubuntu-cdimage](https://mirror.sjtu.edu.cn/docs/ubuntu-cdimage) 获取该镜像使用帮助。
14 |
--------------------------------------------------------------------------------
/content/post/mirror-help/ubuntu.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "ubuntu"
3 | tags = ["mirror-help"]
4 | author = "htfy96"
5 |
6 | +++
7 |
8 | Ubuntu是一个基于Debian的Linux发行版,包含了常用的大量软件包。Ubuntu的目标在于为一般用户提供一个最新同时又相当稳定,主要以自由软件建构而成的作业系统。Ubuntu目前具有庞大的社群力量支持,用户可以方便地从社群获得帮助。
9 |
10 | SJTUG镜像源可以加速软件包的安装。
11 |
12 | 本镜像仅包含 32/64 位 x86 架构处理器的软件包,在 ARM(arm64, armhf)、PowerPC(ppc64el)、RISC-V(riscv64) 和 S390x 等架构的设备上(对应官方源为 ports.ubuntu.com)请使用 ubuntu-ports 镜像。
13 |
14 | 使用方式:
15 |
16 | 使用`sudo nano /etc/apt/sources.list`打开镜像源列表文件。将类似于`http://archive.ubuntu.com/ubuntu`或`http://cn.archive.ubuntu.com/ubuntu`的地址改成`https://mirror.sjtu.edu.cn/ubuntu`,之后按`Ctrl-O 回车`保存,按`Ctrl-X`退出。最后执行`sudo apt update`即可。
17 |
18 | 镜像站一天同步一次 Ubuntu 镜像。为了取得最新的安全更新,我们不建议您将 `security.ubuntu.com` 换成镜像源。
19 |
20 | 您也可使用`sudo sed -i 's/http:\/\/archive.ubuntu.com/https:\/\/mirror.sjtu.edu.cn/g' /etc/apt/sources.list`或`sudo sed -i 's/http:\/\/cn.archive.ubuntu.com/https:\/\/mirror.sjtu.edu.cn/g' /etc/apt/sources.list`指令直接批量修改。
21 |
22 | 以下为修改后的镜像源列表文件的示例。可使用`gedit`等文本编辑器修改`/etc/apt/sources.list`。修改后使用`sudo apt update`更新软件源。
23 |
24 | 从 Ubuntu 24.04 起,Ubuntu 的软件源配置文件变更为 DEB822 格式,在此格式下使用镜像源时,须注意替换`/etc/apt/sources.list`对应路径为`/etc/apt/sources.list.d/ubuntu.sources`。
25 |
26 | Ubuntu 18.04
27 |
28 | ```
29 | deb https://mirror.sjtu.edu.cn/ubuntu/ bionic main restricted universe multiverse
30 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ bionic main restricted universe multiverse
31 | deb https://mirror.sjtu.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
32 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
33 | deb https://mirror.sjtu.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
34 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
35 | deb https://mirror.sjtu.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
36 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
37 |
38 | # deb https://mirror.sjtu.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
39 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
40 | ```
41 |
42 | Ubuntu 20.04
43 |
44 | ```
45 | deb https://mirror.sjtu.edu.cn/ubuntu/ focal main restricted universe multiverse
46 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ focal main restricted universe multiverse
47 | deb https://mirror.sjtu.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
48 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
49 | deb https://mirror.sjtu.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
50 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
51 | deb https://mirror.sjtu.edu.cn/ubuntu/ focal-security main restricted universe multiverse
52 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ focal-security main restricted universe multiverse
53 |
54 | # deb https://mirror.sjtu.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
55 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
56 | ```
57 |
58 | Ubuntu 22.04
59 |
60 | ```
61 | deb https://mirror.sjtu.edu.cn/ubuntu/ jammy main restricted universe multiverse
62 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ jammy main restricted universe multiverse
63 | deb https://mirror.sjtu.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
64 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
65 | deb https://mirror.sjtu.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
66 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
67 | deb https://mirror.sjtu.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
68 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
69 |
70 | # deb https://mirror.sjtu.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
71 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
72 | ```
73 |
74 | Ubuntu 24.04 (DEB822 格式) `/etc/apt/sources.list.d/ubuntu.sources`
75 |
76 | ```
77 | Types: deb
78 | URIs: https://mirror.sjtu.edu.cn/ubuntu/
79 | Suites: noble noble-updates noble-backports
80 | Components: main restricted universe multiverse
81 | Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
82 |
83 | # Types: deb-src
84 | # URIs: https://mirror.sjtu.edu.cn/ubuntu/
85 | # Suites: noble noble-updates noble-backports
86 | # Components: main restricted universe multiverse
87 | # Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
88 |
89 | Types: deb
90 | URIs: https://mirror.sjtu.edu.cn/ubuntu/
91 | Suites: noble-security
92 | Components: main restricted universe multiverse
93 | Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
94 |
95 | # Types: deb-src
96 | # URIs: https://mirror.sjtu.edu.cn/ubuntu/
97 | # Suites: noble-security
98 | # Components: main restricted universe multiverse
99 | # Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
100 |
101 | # Types: deb
102 | # URIs: https://mirror.sjtu.edu.cn/ubuntu/
103 | # Suites: noble-proposed
104 | # Components: main restricted universe multiverse
105 | # Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
106 |
107 | # Types: deb-src
108 | # URIs: https://mirror.sjtu.edu.cn/ubuntu/
109 | # Suites: noble-proposed
110 | # Components: main restricted universe multiverse
111 | # Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
112 | ```
113 |
114 | Ubuntu 24.04 (旧格式,不推荐使用) `/etc/apt/sources.list`
115 |
116 | ```
117 | deb https://mirror.sjtu.edu.cn/ubuntu/ noble main restricted universe multiverse
118 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ noble main restricted universe multiverse
119 | deb https://mirror.sjtu.edu.cn/ubuntu/ noble-updates main restricted universe multiverse
120 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ noble-updates main restricted universe multiverse
121 | deb https://mirror.sjtu.edu.cn/ubuntu/ noble-backports main restricted universe multiverse
122 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ noble-backports main restricted universe multiverse
123 | deb https://mirror.sjtu.edu.cn/ubuntu/ noble-security main restricted universe multiverse
124 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ noble-security main restricted universe multiverse
125 |
126 | # deb https://mirror.sjtu.edu.cn/ubuntu/ noble-proposed main restricted universe multiverse
127 | # deb-src https://mirror.sjtu.edu.cn/ubuntu/ noble-proposed main restricted universe multiverse
128 | ```
129 |
130 | 其中`deb-src`为源码镜像,默认注释以提高速度。可将原镜像列表备份后替换为上述内容。
131 |
--------------------------------------------------------------------------------
/content/post/mirror-help/voidlinux.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "voidlinux"
3 | tags = ["mirror-help"]
4 | author = "ixnij"
5 | +++
6 |
7 | Void linux 是基于 Linux 内核独立开发的通用操作系统。其特色在于一份二进制/源代码混合式包管理系统,这使得用户能快速安装、更新、移除软件,或者是借助 XBPS 源代码集合从源码直接生成软件。该发行的其他特性包括对 Raspberry Pi 单板计算机(armv6 和 armv7)的支持,每日更新的滚动式开发模式,可以选择 glibc 和 musl 作为 C 库,以及名为 runit 的原生 BSD 风格 init 系统。
8 |
9 | 使用方法:
10 |
11 | ```sh
12 | mkdir -p /etc/xbps.d
13 | cp /usr/share/xbps.d/*-repository-*.conf /etc/xbps.d/
14 | sed -i 's|https://alpha.de.repo.voidlinux.org|https://mirror.sjtu.edu.cn/voidlinux|g' /etc/xbps.d/*-repository-*.conf
15 | ```
16 |
17 | 之后可用 `xbps-query -L` 检查是否正确替换。
18 |
19 | 运行 `xbps-install -Su` 刷新镜像并更新系统。
20 |
21 | 请前往[官方教程](https://docs.voidlinux.org/xbps/repositories/mirrors/changing.html)获取更多信息。
22 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2016-03-17-established.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2016-03-17T22:00:00+08:00"
3 | title = "SJTUG Demo镜像源成立"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 |
8 |
9 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2016-04-07-arch-repo.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2016-04-07T22:00:00+08:00"
3 | title = "喜迎校庆 SJTUG Mirrors加入Arch Linux镜像源"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 |
8 |
9 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2018-03-04-v2-beta.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-03-04T22:00:00+08:00"
3 | title = "镜像源v2 Beta版上线!"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
--------------------------------------------------------------------------------
/content/post/mirror-news/2018-05-07-domain-update.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-05-07T15:00:00+08:00"
3 | title = "镜像源域名更换为mirrors.sjtug.sjtu.edu.cn"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 | 欢迎大家之后使用新域名访问
--------------------------------------------------------------------------------
/content/post/mirror-news/2018-05-17-gnu-ctan-repo.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-05-17T21:40:00+08:00"
3 | title = "SJTUG 镜像源加入 GNU、CTAN 官方镜像源列表"
4 | tags = ["mirror-news"]
5 | author="Evensgn"
6 | +++
7 |
8 | SJTUG 软件源镜像站 v2 正式上线后,现已加入 GNU、CTAN 官方镜像源列表:
9 |
10 | * [GNU Mirror List](https://www.gnu.org/prep/ftp.html)
11 | * [CTAN Sites](https://ctan.org/mirrors)
12 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2018-05-29-maintain-complete.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-05-29T23:30:00+08:00"
3 | title = "镜像源维护完成"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 |
8 | SJTUG 镜像源在今天晚上 11:00 ~ 11:21 按计划进行了例行维护,在维护期间服务暂时不可用,目前已经恢复正常。
9 |
10 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2018-05-29-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-05-29T11:55:00+08:00"
3 | title = "镜像站将在05/29 晚11:00 UTC+8维护"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 |
8 | SJTUG 软件源镜像站 将在2018年5月29日晚11:00 UTC+8起进行服务器维护,届时服务将会出现短时间的不可用,希望大家予以谅解。维护时间据估计不会超过30分钟。
--------------------------------------------------------------------------------
/content/post/mirror-news/2018-06-04-ros-failure.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-06-04T19:40:00+08:00"
3 | title = "ROS源上游故障"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 |
8 | 今天中午12:00左右,ROS上游唯一的Rsync源出现故障无法进行同步,大部分国内镜像站都会受到影响。已经同步的包仍然可以正常下载,但12:00以后的更新将无法反馈到用户。目前我们在密切观察这一现象,若短时间内rsync源无法恢复,我们将会尝试切换到apt-cache源。
--------------------------------------------------------------------------------
/content/post/mirror-news/2018-06-15-raspbian-homebrew.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-06-15T15:00:00+08:00"
3 | title = "新增homebrew与raspbian/raspberrypi镜像"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 |
8 | 新增了MacOS的homebrew包管理器与适用于树莓派的raspbian/raspberrypi仓库的镜像。
9 |
10 | 欢迎大家查看`git/homebrew-{core/cask}.git`、`homebrew-bottles`与`raspbian`/`raspberrypi`了解如何使用。
--------------------------------------------------------------------------------
/content/post/mirror-news/2018-11-20-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-11-20T11:55:00+08:00"
3 | title = "镜像站将在 11/22 凌晨3时 UTC+8维护"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 |
8 | SJTUG 软件源镜像站 将在2018年11月22日 凌晨3时 UTC+8起进行服务器维护,届时服务将会出现短时间的不可用,希望大家予以谅解。预计维护时间:1小时。
9 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2018-11-22-outage.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2018-11-22T05:55:00+08:00"
3 | title = "镜像站11/22 6:31开始服务暂时不可用"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 |
8 | 镜像站在11/22早6:31开始,服务暂时不可用,目前我们正在调查原因。
9 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2019-01-04-outage.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2019-01-04T20:30:00-08:00"
3 | title = "镜像站已于01/05恢复正常"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 |
8 | 由于网页服务器异常crash,镜像站于1月4日14时到5日3时期间无法正常访问。目前已经修复,欢迎大家继续使用。
9 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2019-03-06-tls-1.3.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2019-03-06T20:00:00-08:00"
3 | title = "镜像站已支持TLS v1.3访问"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 |
8 | 镜像站现已正式支持TLS 1.3访问。使用 curl >= 7.52.0 的软件会自动采用TLS 1.3以降低访问延时。
9 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2019-06-19-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2019-06-19T13:51:00-07:00"
3 | title = "镜像站将于21日凌晨2点维护"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 |
8 | SJTUG 软件源镜像站 将在 2019年6月21日 凌晨2时 UTC+8起进行服务器维护,届时服务将会出现短时间的不可用,希望大家予以谅解。预计维护时间:2小时。
9 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2019-10-09-remove-pypi.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2019-10-09T22:23:00-07:00"
3 | title = "Pypi镜像源改为反代"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 |
8 | 由于PyPI镜像占用空间过大,经过权衡我们决定放弃PyPI的全量镜像。出于兼容性考虑,https://mirrors.sjtug.sjtu.edu.cn/pypi/web 现在反代 https://pypi.org (与原有URL相同,已有用户不必进行更改)。有需要的用户可以迁移到其他镜像或继续使用反代服务。
--------------------------------------------------------------------------------
/content/post/mirror-news/2019-10-10-data-leak.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2019-10-10T19:37:00-07:00"
3 | title = "关于19年10月软件源日志泄漏的通告"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 |
8 | # 发生了什么
9 |
10 | 由于镜像状态页面的Access Token未被合理限权,未授权外部用户可以查看软件源的所有日志。
11 |
12 | # 范围
13 |
14 | 2018年4月3日2019年10月10日的日志,其中可能会对用户造成影响的内容包括:用户的IP、访问时间与路径
15 |
16 | # 目前采取的措施
17 |
18 | 目前已经此漏洞已被以下措施修复:
19 |
20 | - 注销了之前未被限权的Access Token
21 | - 更换了日志账户的Account Token
22 | - 在完成日志权限模型之前,暂时停止日志上传
23 | - 更换了泄漏的代理后端的IP,并换用了随机性更强的域名
24 |
25 | 之后将会更加审慎处理相关信息的接口,保障数据安全。
--------------------------------------------------------------------------------
/content/post/mirror-news/2020-04-18-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2020-04-18T19:00:00-04:00"
3 | title = "镜像站将于4月20日凌晨2点维护"
4 | tags = ["mirror-news"]
5 | author="htfy96"
6 | +++
7 |
8 | SJTUG 软件源镜像站 将在 2020年4月20日 凌晨2时 UTC+8起进行服务器维护,届时服务将会出现短时间的不可用,希望大家予以谅解。预计维护时间:2小时。
9 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2020-08-05-new-mirrors.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2020-08-05T18:00:00+08:00"
3 | title = "新增 archlinuxarm, julia, mongodb, Qt 镜像"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | SJTUG 镜像源近期迎来了一大批更新。
9 |
10 | * 改变了 archlinux 镜像的同步方式,实时性更强。
11 | * 新增 archlinuxarm 源。
12 | * 在 anaconda 中新增了 PyTorch 源。
13 | * 新增 julia 源。该镜像源将成为中国大陆境内官方 Pkg Server 的上游之一。
14 | * 新增 mongodb 源。
15 | * 新增 Qt 源。我们近期在联系 Qt,希望将镜像加入官方镜像列表中。
16 |
17 | 欢迎大家体验!
18 |
19 | 2019-2020 年我们还新增/修复了下面这些镜像:
20 |
21 | * 增强了 anaconda 同步的稳定性,修复了部分源 404 的问题。
22 | * 修复了 CRAN 的同步问题。
23 | * 修复了 crates.io 的重定向问题。
24 | * 修复了 dart-package 的重定向问题。
25 | * pypi 改为反代。
26 | * 修复了 maven 的访问问题。
27 | * 新增了 google-fonts 反代。
28 | * 新增了 packagist 元数据。
29 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2020-09-28-new-mirrors.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2020-09-28T14:00:00+08:00"
3 | title = "新增 emacs-elpa 与 msys2 镜像"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | SJTUG 镜像在最近两个月中新增了下面两个镜像。
9 |
10 | * emacs-elpa (包含 GNU ELPA, MELPA, MELPA Stable, Marmalade, Org, Sunrise Commander ELPA, user42 ELPA),上游 emacs-china。
11 | * msys2
12 |
13 | 九月中旬,镜像站的反向代理服务出现了一些稳定性问题。我们更换了反向代理方式,提高了 crates.io 等镜像的稳定性。
14 |
15 | 在 @johnnychen94 的帮助下,镜像站解决了 julia 镜像缺失文件的问题。
16 |
17 | Qt 镜像已加入官方源。在使用官方安装器进行安装时,国内用户会自动使用 SJTUG 镜像站下载文件。
18 |
19 | Ubuntu, Debian 等 apt 源禁用了 https 自动跳转,现在可以直接使用 http 协议访问。
20 |
21 | 欢迎大家使用。
22 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2020-12-07-announcing-new-arch.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2020-12-07T12:00:00+08:00"
3 | title = "SJTUG 镜像源智能缓存正式上线"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | SJTUG 镜像在近期进行了一次更新。我们开发了智能缓存工具 [mirror-intel](https://github.com/sjtug/mirror-intel),
9 | 并将部分反向代理软件源移植到了智能缓存系统上。
10 |
11 | 智能缓存的后端是由上海交通大学网络信息中心提供的对象存储服务。
12 |
13 | 当您访问智能缓存软件源时,服务器会先检测文件是否在对象存储中。如果存在,请求会直接被重定向到 [https://s3.jcloud.sjtu.edu.cn](https://s3.jcloud.sjtu.edu.cn) 。
14 | 否则,请求会被重定向到上游;与此同时,智能缓存会将文件同步到对象存储中。
15 |
16 | 目前通过智能缓存提供服务的软件源镜像包括:
17 |
18 | * rust-static (rustup 镜像源)。上游为 [https://static.rust-lang.org](https://static.rust-lang.org) 。近三个月的工具链均已缓存。
19 | * crates.io (cargo 包管理器镜像源)。上游为 [https://static.crates.io](https://static.crates.io) 。所有包都已缓存。
20 | * homebrew-bottles。上游为清华大学开源软件镜像站 (TUNA)。所有包都已缓存。
21 | * pypi-packages。上游为清华大学开源软件镜像站 (TUNA)。正在同步中。
22 | * flathub, fedora-ostree, fedora-iot 均使用官方 ostree 上游。所有分支都已缓存。ostree 镜像还在测试阶段,正式版会在近几个月内发布。
23 |
24 | 欢迎大家的使用~
25 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2020-12-08-add-pypi.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2020-12-10T13:30:00+08:00"
3 | title = "PyPI 全量同步镜像源重新上线"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | 继 SJTUG 镜像源智能缓存上线后,我们从清华大学开源软件镜像站 (TUNA) 全量同步了 PyPI 软件源。感谢上海交通大学网络信息中心和 TUNA 的支持。欢迎大家继续使用 PyPI 镜像源。
9 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2020-12-21-release-guix.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2020-12-21T15:30:00+08:00"
3 | title = "Guix 镜像源正式上线"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | 在 Guix 中文社区的大力支持下,我们上线了 Guix 镜像源。Guix 镜像源的实现方式是智能缓存。当镜像站用户第一次请求某个资源时,它会被永久缓存在镜像站服务器上。
9 |
10 | Guix 镜像源分为 git 镜像和 substitute 镜像,请参考帮助文档进行配置。欢迎大家使用。
11 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2020-12-25-fix-flutter.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2020-12-25T13:15:00+08:00"
3 | title = "Dart 与 Flutter 镜像源已全量同步"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | 在 Flutter 中文社区的大力支持下,我们修复了 Dart 与 Flutter 镜像访问不稳定的问题。请参考帮助文档进行配置。欢迎大家继续使用 SJTUG 镜像源。
9 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2021-01-02-add-github-release-freecad.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2021-01-02T09:55:00+08:00"
3 | title = "新增 FreeCAD 镜像与 GitHub Release 智能缓存"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | FreeCAD 镜像可以在 [这里](https://mirrors.sjtug.sjtu.edu.cn/github-release/FreeCAD/FreeCAD/releases/download/?mirror_intel_list) 访问,我们已经全量同步了近 3 个版本。
9 |
10 | 目前 GitHub Release 智能缓存只开放了 FreeCAD 项目的缓存。您可以在 [mirror-requests](https://github.com/sjtug/mirror-requests/issues) 中通过 issue 的方式请求添加新的 GitHub Release 镜像。
11 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2021-01-04-siyuan-available.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2021-01-04T16:30:00+08:00"
3 | title = "新增 apache, DragonFlyBSD 等镜像"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | SJTUG 的新服务器“思源 (Siyuan)”服务器已经在 [https://mirror.sjtu.edu.cn](https://mirror.sjtu.edu.cn) 上线。
9 | 该服务器兼容原 [ftp.sjtu.edu.cn](https://ftp.sjtu.edu.cn) 服务器提供的服务,并在此基础上增加了许多软件源镜像。
10 | 原先的 [ftp.sjtu.edu.cn](https://ftp.sjtu.edu.cn) 将在近几个月内解析至 SJTUG 思源镜像服务器。
11 |
12 | 新服务器兼容以下 18 个 [ftp.sjtu.edu.cn](https://ftp.sjtu.edu.cn) 上的软件源镜像。
13 |
14 | * centos
15 | * debian
16 | * debian-cd
17 | * debian-security
18 | * deepin
19 | * deepin-cd
20 | * fedora/linux
21 | * fedora/epel
22 | * fedora-secondary
23 | * linuxmint
24 | * linuxmint-cd
25 | * mageia
26 | * opensuse
27 | * openvz
28 | * remi
29 | * scientific
30 | * ubuntu
31 | * ubuntu-cd
32 |
33 | 新服务器新增了以下 8 个镜像。
34 |
35 | * apache
36 | * docker-ce
37 | * ubuntu-cdimage
38 | * ubuntu-ports
39 | * openwrt
40 | * rpmfusion
41 | * dragonflybsd/dports
42 | * dragonflybsd/iso-images
43 |
44 | 与此同时,我们也上线了大量常用 git 仓库镜像。
45 |
46 | 欢迎大家继续使用 SJTUG 镜像站。
47 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2021-02-10-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2021-02-10T13:00:00+08:00"
3 | title = "镜像站将于2月17日上午8时维护"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | SJTUG 软件源镜像站致远镜像服务器将于 2021年2月17日 上午8时 UTC+8 起进行服务器架构升级,届时服务将会出现短时间的不可用,希望大家予以谅解。
9 |
10 | 本次维护的影响范围是 mirrors.sjtug.sjtu.edu.cn 上存储的所有软件源。
11 |
12 | 本次维护将会对服务器上的镜像站软件架构进行升级,以提供更好的使用体验。升级内容包括:
13 |
14 | * 将 ftp.sjtu.edu.cn 的反向代理源更改为思源镜像服务器的对应镜像。
15 | * 解决部分目录重定向到错误路径导致 404 的问题。
16 | * 停止提供 nodejs-release, maven-central, npm-registry, google-fonts 服务,相关服务会重定向到上游。
17 | 技术详情可以参阅 [Zhiyuan Migration Project](https://github.com/sjtug/mirror-docker-siyuan/projects/1)。
18 |
19 | 本次维护的服务不可用时间窗口预计如下。
20 |
21 | * 维护前 24 小时停止 rsync 服务,使得上游不再将用户重定向到本镜像站。
22 | * Web 服务器重启将在 5 分钟内完成。在此期间,所有软件源均不可用。
23 | * 同步服务重启将在 30 分钟内完成。在此期间,前端将无法显示同步状态。
24 | * 涉及到子域名的服务(如 Docker 反代、anaconda)可能无法立即正常提供服务,在 1 小时内可以恢复。
25 |
26 | 在新年来临之际,我谨代表 SJTUG 镜像站维护人员,祝大家在即将到来的一年里,阖家欢乐,万事如意。
27 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2021-03-06-new-mirrors.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2021-03-06T18:40:00+08:00"
3 | title = "新增 Bioconductor, openEuler, Void Linux, Wireshark 镜像"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | 近期,SJTUG 的镜像同步工具 mirror-clone [添加了 Rsync 支持](https://github.com/sjtug/mirror-clone/pull/57)。
9 | 在此基础上,我们增加了 Bioconductor, Void Linux 和 Wireshark 镜像。这三个镜像都存储在 SJTU 对象存储服务上。
10 | 从这些软件源下载软件时,您会被自动重定向到 SJTU 对象存储服务。
11 |
12 | 我们还增加了 openEuler 镜像,存储在思源 (mirror.sjtu.edu.cn) 服务器上。
13 |
14 | 您可以参阅镜像站首页的帮助文档,配置相关软件使用 SJTUG 镜像。
15 |
16 | 与此同时,由于致远服务器压力过大,我们将部分软件源迁移到了其他存储中。您可以调整相关软件的设置,以取得最好的使用体验。
17 |
18 | * manjaro 迁移到了思源服务器。
19 | * archlinux 迁移到了思源服务器。
20 | * ctan 迁移到了思源服务器。
21 | * anaconda 迁移到了 SJTU 对象存储服务。
22 |
23 | 欢迎大家使用。
24 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2021-03-23-new-mirrors.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2021-03-23T14:00:00+08:00"
3 | title = "新增 conda-forge/osx-arm64, GIMP, MacPorts, VSCodium 镜像"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | SJTUG 软件源镜像在本月添加了一批新的镜像源。
9 |
10 | * conda-forge 添加了 Apple M1 平台支持。[PR#222](https://github.com/sjtug/mirror-docker-unified/pull/222)
11 | * GIMP [PR#220](https://github.com/sjtug/mirror-docker-unified/pull/220)
12 | * MacPorts [PR#216](https://github.com/sjtug/mirror-docker-unified/pull/216)
13 | * VSCodium [PR#208](https://github.com/sjtug/mirror-docker-unified/pull/208)
14 |
15 | 与此同时,我们也做了一些功能上的更新:
16 |
17 | * 存储在 SJTU S3 上的软件源现在可以浏览所有文件了。 [PR#212](https://github.com/sjtug/mirror-docker-unified/pull/212)
18 | * Flutter 切换到了新上游。 [PR#209](https://github.com/sjtug/mirror-docker-unified/pull/209)
19 | * openSUSE 添加到了官方源。 [PR#215](https://github.com/sjtug/mirror-docker-unified/pull/215)
20 |
21 | 欢迎大家使用。
22 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2021-05-25-new-mirrors.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2021-05-25T14:00:00+08:00"
3 | title = "新增 AlmaLinux, Armbian, Fedora development, ghcup, Linux kernel, Rocky Linux 镜像"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | SJTUG 软件源镜像在近期添加了一批新的镜像源。
9 |
10 | * 添加 ghcup 镜像。[PR#225](https://github.com/sjtug/mirror-docker-unified/pull/225)
11 | * 添加 Armbian 和 AlmaLinux 镜像 [PR#227](https://github.com/sjtug/mirror-docker-unified/pull/227)
12 | * 添加 Linux kernel 镜像 [PR#228](https://github.com/sjtug/mirror-docker-unified/pull/228)
13 | * 添加了 Fedora development 镜像 [PR#236](https://github.com/sjtug/mirror-docker-unified/pull/236) [PR#238](https://github.com/sjtug/mirror-docker-unified/pull/238)
14 | * 添加了 Rocky Linux 镜像 [PR#246](https://github.com/sjtug/mirror-docker-unified/pull/246)
15 |
16 | 与此同时,我们也做了一些功能上的更新:
17 |
18 | * Homebrew 支持从 ghcr.io 同步。 [PR#245](https://github.com/sjtug/mirror-docker-unified/pull/245)
19 | * Rsync 的磁盘限制大大减小,可以为下游提供文件同步服务了。 [PR#240](https://github.com/sjtug/mirror-docker-unified/pull/240)
20 | * git 源切换到了 git.sjtu.edu.cn 提供服务,用户体验更好。 [PR#249](https://github.com/sjtug/mirror-docker-unified/pull/249)
21 | * Caddy Web Server 升级到了 2.4.0。 [PR#248](https://github.com/sjtug/mirror-docker-unified/pull/248)
22 |
23 | 欢迎大家使用。
24 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2021-08-26-new-mirrors.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2021-08-26T15:00:00+08:00"
3 | title = "新增 DGL, Fedora Rawhide, OpenBSD, Raspbian Addons, Ubuntu Kylin, Ubuntu Cloud Images, Zorinos ISOs 镜像"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | SJTUG 软件源镜像在近期添加了一批新的镜像源。
9 |
10 | * 添加 Raspbian Addons 镜像。[PR#261](https://github.com/sjtug/mirror-docker-unified/pull/261)
11 | * 添加 Fedora Rawhide 镜像 [PR#264](https://github.com/sjtug/mirror-docker-unified/pull/264)
12 | * 添加 DGL (anaconda/cloud/dglteam) 镜像 [PR#268](https://github.com/sjtug/mirror-docker-unified/pull/268)
13 | * 添加 OpenBSD 镜像 [PR#269](https://github.com/sjtug/mirror-docker-unified/pull/269)
14 | * 添加 Ubuntu Kylin 镜像 [PR#270](https://github.com/sjtug/mirror-docker-unified/pull/270)
15 | * 添加 Zorinos ISOs 镜像 [PR#271](https://github.com/sjtug/mirror-docker-unified/pull/271)
16 | * 添加 Ubuntu Cloud Images 镜像 [PR#275](https://github.com/sjtug/mirror-docker-unified/pull/275)
17 |
18 | 与此同时,我们也做了一些功能上的更新:
19 |
20 | * 修复了 ghcup 的同步。 [PR#274](https://github.com/sjtug/mirror-docker-unified/pull/274)
21 | * Caddy Web Server 升级到了 2.4.3。 [PR#271](https://github.com/sjtug/mirror-docker-unified/pull/271)
22 | * Zhiyuan 镜像服务器 (mirrors.sjtug) 支持 IPv6。
23 |
24 | 欢迎大家使用。
25 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2021-09-26-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2021-09-26T13:00:00+08:00"
3 | title = "镜像站将于10月6-7日上午8时维护"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | SJTUG 软件源镜像站的两台服务器将分别于 2021年10月6日 上午8时 UTC+8 和 2021年10月7日 上午8时 UTC+8 起进行服务器架构升级,届时服务将会出现短时间的不可用,希望大家予以谅解。
9 |
10 | 本次维护的影响范围是 mirrors.sjtug.sjtu.edu.cn 和 mirror.sjtu.edu.cn 上存储的所有软件源。
11 |
12 | 本次维护将会对服务器上的镜像站软件架构进行升级,以提供更好的使用体验。升级内容包括:
13 |
14 | * 将致远镜像服务器的操作系统从 Fedora 31 升级到 Fedora 33。
15 | * 将思源镜像服务器的操作系统从 Debian 10 升级到 Debian 11。
16 |
17 |
18 | 本次维护的服务不可用时间窗口预计如下。
19 |
20 | * 2021年10月6日 上午8时起,我们将首先维护思源镜像站 (mirror.sjtu.edu.cn)。Debian 系统升级将在 30 分钟内完成,期间可能会出现服务中断的情况。
21 | * 之后将进行机器重启,思源镜像站的所有服务可能会出现 5 分钟左右的中断。如出现兼容性问题,可能会中断更长时间。
22 | * 2021年10月7日 上午4时起,我们将维护致远镜像站 (mirrors.sjtug.sjtu.edu.cn)。Fedora 系统升级将在 2 小时内完成,期间将停止服务。
23 | * 2021年10月7日 上午8时起,我们将更新配置。Fedora 系统配置将在 30 分钟内完成,期间可能会出现服务中断的情况。
24 |
25 | 感谢您对 SJTUG 镜像站的关注。
26 |
27 | *更新:致远镜像站将升级到 Fedora 33 而非 Fedora 34。*
28 |
29 | *更新:致远镜像站将会在 4 时起停机更新,而非 8 时。*
30 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2021-10-04-cert.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2021-10-04T00:00:00+08:00"
3 | title = "关于近期 HTTPS 证书问题的相关提示 (已更新证书)"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | SJTUG 软件源镜像使用 Let's Encrypt 签发的 HTTPS 证书提供服务。2021 年 9 月 30 日晚上 10 时,用于交叉签名根证书的 [DST Root CA X3 过期](https://letsencrypt.org/docs/dst-root-ca-x3-expiration-september-2021/)。因此,在老版本系统中,您可能会碰到错误的“证书过期”提示。
9 |
10 | 如果您在更新软件包时遇到困难,可以参考对应软件源的帮助文档,先将软件源设置成 HTTP 协议访问;而后参考 [TUNA 的解决方案](https://github.com/tuna/issues/issues/1342#issuecomment-931412628) 更新您的系统,从而从 SJTUG 镜像站获取最新的软件更新。
11 |
12 | * 10月12日0时更新:mirrors.sjtug.sjtu.edu.cn 已经去掉了 DST Root CA X3,证书链仅保留 ISRG Root X1。
13 | * 10月12日0时更新:mirror.sjtu.edu.cn 已经去掉了 DST Root CA X3,证书链仅保留 ISRG Root X1。
14 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2021-10-07-outage.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2021-10-07T09:45:00+08:00"
3 | title = "镜像站10月7日9时起服务不可用 (已恢复)"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | 由于 mirrors.sjtug.sjtu.edu.cn 升级时出现问题,镜像站服务目前处于不完全可用状态。我们正在调查服务器升级失败的原因,并尝试重启服务器。
9 |
10 | * 上午11时更新:初步确定服务器无法启动的原因是意外将三年前的 grub 配置覆盖了最新配置,导致无法正常进入系统。正在尝试重新生成 grub 引导配置。
11 | * 下午3时更新:我们已经进入 Fedora recovery mode 进行修复工作。
12 | * 8日上午9时更新:服务已经恢复。我们还将做一些维护工作,期间可能有服务中断。
13 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2021-11-05-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2021-11-05T13:00:00+08:00"
3 | title = "镜像站将于11月14日周日上午4时维护"
4 | tags = ["mirror-news"]
5 | author="skyzh"
6 | +++
7 |
8 | SJTUG 软件源镜像站的致远服务器 (mirrors.sjtug.sjtu.edu.cn) 将于 2021年11月14日周日 上午4时 UTC+8 进行系统升级。在此期间服务会中断大约半小时。
9 |
10 | 本次维护的影响范围是 mirrors.sjtug.sjtu.edu.cn 上存储的所有软件源。
11 |
12 | 本次维护将会对服务器上的镜像站软件架构进行升级,以提供更好的使用体验。升级内容包括:
13 |
14 | * 将致远镜像服务器的操作系统从 Fedora 33 升级到 Fedora 35。
15 |
16 | 本次维护的服务不可用时间窗口预计如下。
17 |
18 | * 2021年11月12日 (周五) 上午8时:我们将升级服务器上的软件包,并进行重启,为周日的升级做准备。期间服务可能会中断 5 分钟。
19 | * 2021年11月14日 (周日) 上午4时:服务器将重启进行系统升级,在此期间服务会中断大约半小时。
20 |
21 | 感谢您对 SJTUG 镜像站的关注。
22 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2022-06-02-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2022-06-02T21:30:00+08:00"
3 | title = "镜像站于6月2日至6月6日公网服务不可用"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | 接上海交通大学网络信息中心通知,由于上游校园主干网络维护,SJTUG 软件源镜像站 (mirror.sjtu.edu.cn 及 mirrors.sjtug.sjtu.edu.cn) 目前公网服务中断。
9 |
10 | 本次服务中断的影响范围是 mirror.sjtu.edu.cn 及 mirrors.sjtug.sjtu.edu.cn 上存储的所有软件源。
11 |
12 | 本次维护的服务不可用时间窗口预计如下。
13 |
14 | * 2022年6月2日 (周四) 至 2022年6月6日(周一):上游校园主干网络维护
15 |
16 | 感谢您对 SJTUG 镜像站的关注。
17 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2022-10-16-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2022-10-16T00:00:00+08:00"
3 | title = "镜像站于10月16日至10月24日公网服务不可用"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | 接上海交通大学网络信息中心通知,由于上游校园主干网络维护,SJTUG 软件源镜像站 (mirror.sjtu.edu.cn 及 mirrors.sjtug.sjtu.edu.cn) 目前公网服务中断。
9 |
10 | 本次服务中断的影响范围是 mirror.sjtu.edu.cn 及 mirrors.sjtug.sjtu.edu.cn 上存储的所有软件源。
11 |
12 | 本次维护的服务不可用时间窗口预计如下。
13 |
14 | * 2022年10月16日 (周日) 至 2022年10月24日(周一):上游校园主干网络维护
15 |
16 | 感谢您对 SJTUG 镜像站的关注。
17 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2023-02-17-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2023-02-15T17:00:00+08:00"
3 | title = "镜像站将于2月17日上午8时45分维护"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | SJTUG 软件源镜像站的致远服务器 (mirrors.sjtug.sjtu.edu.cn) 将于 2023年2月17日周五 上午8时45分 UTC+8 进行硬件检修。在此期间服务会中断大约一小时。
9 |
10 | 本次维护的影响范围是 mirrors.sjtug.sjtu.edu.cn 上存储的所有软件源。与此同时,思源服务器 (mirror.sjtu.edu.cn) 上的软件源将不受影响。
11 |
12 | 本次维护将会对服务器上的硬件进行维护,以提供更好的使用体验。
13 |
14 | 本次维护的服务不可用时间窗口预计如下。
15 |
16 | * 2023年2月17日 (周五) 上午8时45分:我们将使致远服务器离线并进行硬件维护,在此期间服务会中断约一小时。
17 |
18 | 感谢您对 SJTUG 镜像站的关注。
19 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2023-02-23-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2023-02-20T09:30:00+08:00"
3 | title = "镜像站将于2月22日下午4时及2月23日上午8时15分维护"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | SJTUG 软件源镜像站的致远服务器 (mirrors.sjtug.sjtu.edu.cn) 将于 2023年2月22日周三 至 2023年2月23日周四 UTC+8 部分时段进行服务器架构升级,停机窗口详见下文。届时服务将会出现短时间的不可用,希望大家予以谅解。
9 |
10 | 本次维护的影响范围是 mirrors.sjtug.sjtu.edu.cn 上存储的所有软件源。
11 |
12 | 本次维护将会对服务器上的镜像站软件架构进行升级,以提供更好的使用体验。升级内容包括:
13 |
14 | * 将致远镜像服务器的操作系统从 Fedora 35 升级到 Fedora 37。
15 |
16 | 本次维护的服务不可用时间窗口预计如下。
17 |
18 | * 2023年2月22日 下午4时起,我们将对致远镜像站进行初期升级。初期升级将在 30 分钟内完成,期间可能会出现服务中断的情况。
19 | * 2023年2月23日 上午4时起,我们将对致远镜像站进行主版本升级。系统升级将在 2 小时内完成,期间将停止服务。如出现兼容性问题,可能会中断更长时间。
20 | * 2023年2月23日 上午8时15分起,我们将更新配置。系统配置将在 1 小时内完成,期间可能会出现服务中断的情况。
21 |
22 | 感谢您对 SJTUG 镜像站的关注。
--------------------------------------------------------------------------------
/content/post/mirror-news/2023-06-03-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2023-06-03T16:00:00+08:00"
3 | title = "镜像站自6月3日起公网服务不可用"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | 由于上游校园主干网络临时维护,SJTUG 软件源镜像站 (mirror.sjtu.edu.cn 及 mirrors.sjtug.sjtu.edu.cn) 目前公网服务中断。
9 |
10 | 本次服务中断的影响范围是 mirror.sjtu.edu.cn 及 mirrors.sjtug.sjtu.edu.cn 上存储的所有软件源。
11 |
12 | 本次维护的服务不可用时间窗口预计如下。
13 |
14 | * 2023年6月3日 (周六) 至 2023年6月5日(周一):上游校园主干网络维护
15 |
16 | 感谢您对 SJTUG 镜像站的关注。
17 |
18 | 2023年6月3日 19:00 更新:不可用时间窗口更新
19 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2023-09-19-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2023-09-12T17:30:00-07:00"
3 | title = "镜像站将于9月19-20日上午4时维护"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | SJTUG 软件源镜像站的两台服务器将分别于 2023年9月19日周二 上午4时 UTC+8 及 2023年9月20日周三 上午4时 UTC+8 进行服务器架构升级,停机窗口详见下文。届时服务将会出现短时间的不可用,希望大家予以谅解。
9 |
10 | 本次维护的影响范围是 mirrors.sjtug.sjtu.edu.cn 和 mirror.sjtu.edu.cn 上存储的所有软件源。
11 |
12 | 本次维护将会对服务器上的镜像站软件架构进行升级,以提供更好的使用体验。升级内容包括:
13 |
14 | * 将致远镜像服务器的操作系统从 Fedora 37 升级到 Fedora 38。
15 | * 将思源镜像服务器的操作系统从 Debian 11 升级到 Debian 12。
16 |
17 | 本次维护的服务不可用时间窗口预计如下。
18 |
19 | * 2023年9月19日 上午4时起,我们将对致远镜像站 (mirrors.sjtug.sjtu.edu.cn) 进行主版本升级。系统升级将在 2 小时内完成,期间将停止服务。如出现兼容性问题,可能会中断更长时间。
20 | * 2023年9月20日 上午4时起,我们将对思源镜像站 (mirror.sjtu.edu.cn) 进行主版本升级。系统升级将在 2 小时内完成,期间将停止服务。如出现兼容性问题,可能会中断更长时间。
21 |
22 | 感谢您对 SJTUG 镜像站的关注。
--------------------------------------------------------------------------------
/content/post/mirror-news/2023-11-03-outage.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2023-11-02T12:08:00-07:00"
3 | title = "思源镜像站 11/03 服务异常中断"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | 由于上游交大云服务故障,思源镜像站 (mirror.sjtu.edu.cn) 于 11/03 1:12 至 05:07 服务中断,总故障时间 3 小时 55 分钟。在此过程中,致远镜像站 (mirrors.sjtug.sjtu.edu.cn) 的部分存储服务也受到影响导致无法访问。现在本站所有服务已经恢复正常。
9 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2023-12-19-redirect-julia.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2023-12-19T02:20:00-08:00"
3 | title = "致远服务器失去同步 & 重定向 julia 镜像"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | 由于致远服务器 (mirrors.sjtug.sjtu.edu.cn) 存储盘满,其上所有仓库于 2 天前同步中断。我们正在释放存储空间,受影响的仓库预计会在 12 小时内恢复同步。
9 |
10 | 另,由于 julia 仓库占用空间极大 (6TB),用户量较低,我们正在考虑将其同步方式转换为反向代理+缓存。在转换期间,所有指向 julia 镜像的流量将会被重定向至北京大学开源镜像站 (https://mirrors.pku.edu.cn/)。在此感谢北京大学开源镜像站的协助!
11 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2024-02-08-remove-scientific.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2024-02-08T22:00:00+08:00"
3 | title = "移除 scientific linux"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | 由于 scientific linux 已经停止支持多年,近一个月未见活跃用户,我们决定将其下线。所有指向 scientific 镜像的流量已被重定向至中国科学技术大学开源镜像站 (https://mirrors.ustc.edu.cn/)。在此感谢中科大开源镜像站的协助!
9 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2024-02-16-k8s-registry.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2024-02-16T04:00:00+08:00"
3 | title = "新增 registry.k8s.io & 废弃 k8s.gcr.io"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | kubernetes 官方在约一年前退役了 k8s.gcr.io,并将仓库迁移至 registry.k8s.io。如今,我们开始对 registry.k8s.io 的同步,并在 mirrors.sjtug.sjtu.edu.cn/registry.k8s.io 及 registry-k8s-io.mirrors.sjtug.sjtu.edu.cn 两个位置提供服务。
9 |
10 | 为兼容现有用户,mirrors.sjtug.sjtu.edu.cn/k8s.gcr.io 及 k8s-gcr-io.mirrors.sjtug.sjtu.edu.cn 将被重定向至新位置,旧仓库的使用将不会受到影响。
11 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2024-03-13-new-mirrors.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2024-03-13T15:30:00+08:00"
3 | title = "新增若干新镜像"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | 近两年来,我站添加了若干新的仓库,以更好地满足老师与同学们的学术、工作及生活需求
9 |
10 | Aug 2021 - 2022:
11 | * debian-ports ([PR #281](https://github.com/sjtug/mirror-docker-unified/pull/281))
12 | * homebrew-bundle.git ([PR #288](https://github.com/sjtug/mirror-docker-unified/pull/288))
13 |
14 | 2023 - 2024:
15 | * crates.io sparse index ([PR #358](https://github.com/sjtug/mirror-docker-unified/pull/358))
16 | * opencloudos
17 | * termux ([PR #386](https://github.com/sjtug/mirror-docker-unified/pull/386))
18 | * openkylin ([PR #385](https://github.com/sjtug/mirror-docker-unified/pull/385))
19 | * immortalwrt ([PR #392](https://github.com/sjtug/mirror-docker-unified/pull/392))
20 | * pop-os ([PR #394](https://github.com/sjtug/mirror-docker-unified/pull/394))
21 | * packman ([PR #398](https://github.com/sjtug/mirror-docker-unified/pull/398))
22 | * debian-cdimage ([PR #403](https://github.com/sjtug/mirror-docker-unified/pull/403))
23 | * leopard.sh ([PR #414](https://github.com/sjtug/mirror-docker-unified/pull/414))
24 | * anthon ([PR #419](https://github.com/sjtug/mirror-docker-unified/pull/419))
25 | * endeavouros ([PR #426](https://github.com/sjtug/mirror-docker-unified/pull/426))
26 | * elan ([PR #427](https://github.com/sjtug/mirror-docker-unified/pull/427)) & lean4 ([PR #428](https://github.com/sjtug/mirror-docker-unified/pull/428), 在此感谢 [@alissa-tung](https://github.com/alissa-tung) ([@timechess](https://github.com/timechess) 的协助!)
27 | * Office Tool Plus ([PR #444](https://github.com/sjtug/mirror-docker-unified/pull/444))
28 | * nspawn ([PR #446](https://github.com/sjtug/mirror-docker-unified/pull/446))
29 |
30 | 2024 -:
31 | * alhp ([PR #459](https://github.com/sjtug/mirror-docker-unified/pull/459))
32 | * registry.k8s.io ([PR #461](https://github.com/sjtug/mirror-docker-unified/pull/461))
33 | * bmclapi ([PR #462](https://github.com/sjtug/mirror-docker-unified/pull/462))
34 |
35 | 同时,我们也适当下架了一些利用率较低或已被废弃的镜像
36 |
37 | 2022 - 2023:
38 | - linuxbrew-bottles ([PR #311](https://github.com/sjtug/mirror-docker-unified/pull/311))
39 | - download.flutter.io ([PR #332](https://github.com/sjtug/mirror-docker-unified/pull/332))
40 | - mageia ([PR #333](https://github.com/sjtug/mirror-docker-unified/pull/333))
41 |
42 | 2024 -:
43 | - k8s.gcr.io ([PR #461](https://github.com/sjtug/mirror-docker-unified/pull/461))
44 | - scientificlinux ([PR #457](https://github.com/sjtug/mirror-docker-unified/pull/457))
45 |
46 | 此外,我们也对架构进行了综合升级
47 | - 将更多仓库接入对象存储,依托交大云对象存储实现扩容与更灵活高效的服务 ([rsync-sjtug](https://github.com/sjtug/rsync-sjtug))
48 | - 支持 mirrorz,为用户提供更智能的分流及更友好的帮助服务 ([mirrorz](https://mirrorz.org/) 及 [mirrorz-help](https://help.mirrors.cernet.edu.cn/),在此感谢 [@ZenithalHourlyRate](https://github.com/ZenithalHourlyRate) 及 [@taoky](https://github.com/taoky) 的协助)
49 | - Siyuan 镜像服务器升级至 Debian 12,Zhiyuan 镜像服务器升级至 Fedora 38
50 |
51 | 欢迎大家使用。
52 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2024-05-30-remove-linuxbrew-core.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2024-05-30T04:30:00+08:00"
3 | title = "移除 Linuxbrew Core"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | 由于 Linuxbrew Core 在 2021 年已经被合并入 Homebrew Core,且上游仓库在 3 个月前已经删除,我们决定移除 Linuxbrew Core 镜像。若您的 Linuxbrew 在近 3 年内未更新过,可能会受到影响。
9 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2024-06-03-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2024-06-03T00:00:00+08:00"
3 | title = "镜像站自6月3日起公网服务不可用"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | 由于上游校园主干网络临时维护,SJTUG 软件源镜像站 (mirror.sjtu.edu.cn 及 mirrors.sjtug.sjtu.edu.cn) 目前公网服务中断。
9 |
10 | 本次服务中断的影响范围是 mirror.sjtu.edu.cn 及 mirrors.sjtug.sjtu.edu.cn 上存储的所有软件源。
11 |
12 | 本次维护的服务不可用时间窗口预计如下。
13 |
14 | * 2024年6月3日 (周一) 至 2024年6月6日(周四):上游校园主干网络维护
15 |
16 | 感谢您对 SJTUG 镜像站的关注。
17 |
18 | 2024年6月6日更新:维护已完成,镜像站已恢复服务。
19 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2024-07-04-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2024-07-02T04:30:00+08:00"
3 | title = "镜像站将于7月4日上午4时维护"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | SJTUG 软件源镜像站的两台服务器将于 2024年7月4日周二 上午1时 UTC+8 进行服务器架构升级,停机窗口详见下文。届时服务将会出现短时间的不可用,希望大家予以谅解。
9 |
10 | 本次维护的影响范围是 mirrors.sjtug.sjtu.edu.cn 和 mirror.sjtu.edu.cn 上存储的所有软件源。
11 |
12 | 本次维护将会对服务器上的镜像站软件架构进行升级,以提供更好的使用体验。升级内容包括:
13 |
14 | * 将致远镜像服务器的操作系统从 Fedora 38 升级到 Fedora 40。
15 | * 对思源镜像服务器的 Debian 12 操作系统应用内核更新。
16 |
17 | 本次维护的服务不可用时间窗口预计如下。
18 |
19 | * 2024年7月4日 上午1时起,我们将对致远镜像站 (mirrors.sjtug.sjtu.edu.cn) 进行主版本升级。系统升级将在 2 小时内完成,期间将停止服务。如出现兼容性问题,可能会中断更长时间。
20 | * 2023年7月4日 上午1时起,我们将对思源镜像站 (mirror.sjtu.edu.cn) 进行内核升级。系统升级将在 30 分钟内完成,期间将停止服务。如出现兼容性问题,可能会中断更长时间。
21 |
22 | 感谢您对 SJTUG 镜像站的关注。
23 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2024-07-10-remove-deprecated-brew-casks.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2024-07-10T03:00:00+08:00"
3 | title = "移除废弃的 Homebrew 分支镜像 & 维护简报"
4 | tags = ["mirror-news"]
5 | author="lightquantum"
6 | +++
7 |
8 | 在 5 月我们曾通知您,我们将移除 Linuxbrew Core 镜像。现在由于 Homebrew Cask Drivers, Homebrew Cask Fonts 及 Homebrew Cask Versions 已经被合并入 Homebrew Cask,我们决定同时移除这些镜像。若您的 Linuxbrew 在近 1 年内未更新过,可能会受到影响。
9 |
10 | 另,近期我们对镜像进行了以下维护操作:
11 | - 修复了 CVE-2024-6387
12 | - 将 Zhiyuan 服务器从 Fedora 38 升级至 Fedora 40
13 | - 新增 [racket 安装器镜像](https://mirror.sjtu.edu.cn/racket/)
14 | - 新增 [intel-extension-for-pytorch](https://mirror.sjtu.edu.cn/github/intel-extension-for-pytorch) 镜像 ([mirror-requests#364](https://github.com/sjtug/mirror-requests/issues/364))
15 | - 修复 ghcup 签名问题 ([mirror-requests#365](https://github.com/sjtug/mirror-requests/issues/365))
16 |
17 | 如有任何问题或建议,请随时联系我们。感谢您的支持与关注!
18 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2024-11-28-maintain.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2024-11-27T04:00:00+08:00"
3 | title = "镜像站将于11月28日凌晨0时维护"
4 | tags = ["mirror-news"]
5 | author="truc0"
6 | +++
7 |
8 | 各位 SJTUG 镜像站用户,
9 |
10 | 由于思源镜像站存储架构变化,SJTUG 镜像站预计于 2024年11月28日凌晨0时至4时 UTC+8 进行架构迁移,届时服务将可能出现短时间的不可用,希望大家予以谅解。
11 |
12 | 本次维护的影响范围是 mirror.sjtu.edu.cn 上存储的所有软件源。
13 |
14 | 感谢您对 SJTUG 镜像站的关注。
15 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2025-03-25-storage-fault.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2025-03-25T18:00:00+08:00"
3 | title = "思源镜像站存储故障"
4 | tags = ["mirror-news"]
5 | author="truc0"
6 | +++
7 |
8 | 各位 SJTUG 镜像站用户,
9 |
10 | 由于思源镜像站主要存储发生故障,SJTUG 思源站点上的所有软件源处于不可用状态。镜像站维护团队正积极调查故障原因,目前判断需要明天(2025年3月26日 UTC+8)进入机房行进一步排查,最早需要16个小时后恢复。
11 |
12 | 我们正采取临时措施,将部分镜像源重定向到 [mirrorz.org](https://mirrorz.org) 处理,感谢 [mirrorz](https://mirrorz.org) 的协助。
13 |
14 | 本次故障的影响范围是 mirror.sjtu.edu.cn 上存储的所有软件源。
15 |
16 | 我们对给您带来的不便表示歉意,感谢您的理解与支持。
17 |
--------------------------------------------------------------------------------
/content/post/mirror-news/2025-05-10-storage-fault.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2025-05-10T18:00:00+08:00"
3 | title = "思源镜像站存储故障"
4 | tags = ["mirror-news"]
5 | author="truc0"
6 | +++
7 |
8 | 各位 SJTUG 镜像站用户,
9 |
10 | 由于思源镜像站主要存储发生故障,SJTUG 思源站点上的所有软件源处于不可用状态。镜像站维护团队正积极调查故障原因,目前判断需要下周一(2025年5月12日 UTC+8)进入机房行进一步排查,最早需要40个小时后恢复。
11 |
12 | 我们正采取临时措施,将部分镜像源重定向到 [mirrorz.org](https://mirrorz.org) 处理,感谢 [mirrorz](https://mirrorz.org) 的协助。
13 |
14 | 本次故障的影响范围是 mirror.sjtu.edu.cn 上存储于 `data55T` 磁盘中的所有软件源。
15 |
16 | 我们对给您带来的不便表示歉意,感谢您的理解与支持。
17 |
--------------------------------------------------------------------------------
/data/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/data/.gitkeep
--------------------------------------------------------------------------------
/deploy.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | set -o errexit #abort if any command fails
3 | me=$(basename "$0")
4 |
5 | help_message="\
6 | Usage: $me [-c FILE] []
7 | Deploy generated files to a git branch.
8 |
9 | Options:
10 |
11 | -h, --help Show this help information.
12 | -v, --verbose Increase verbosity. Useful for debugging.
13 | -e, --allow-empty Allow deployment of an empty directory.
14 | -m, --message MESSAGE Specify the message used when committing on the
15 | deploy branch.
16 | -n, --no-hash Don't append the source commit's hash to the deploy
17 | commit's message.
18 | -c, --config-file PATH Override default & environment variables' values
19 | with those in set in the file at 'PATH'. Must be the
20 | first option specified.
21 |
22 | Variables:
23 |
24 | GIT_DEPLOY_DIR Folder path containing the files to deploy.
25 | GIT_DEPLOY_BRANCH Commit deployable files to this branch.
26 | GIT_DEPLOY_REPO Push the deploy branch to this repository.
27 |
28 | These variables have default values defined in the script. The defaults can be
29 | overridden by environment variables. Any environment variables are overridden
30 | by values set in a '.env' file (if it exists), and in turn by those set in a
31 | file specified by the '--config-file' option."
32 |
33 | parse_args() {
34 | # Set args from a local environment file.
35 | if [ -e ".env" ]; then
36 | source .env
37 | fi
38 |
39 | # Set args from file specified on the command-line.
40 | if [[ $1 = "-c" || $1 = "--config-file" ]]; then
41 | source "$2"
42 | shift 2
43 | fi
44 |
45 | # Parse arg flags
46 | # If something is exposed as an environment variable, set/overwrite it
47 | # here. Otherwise, set/overwrite the internal variable instead.
48 | while : ; do
49 | if [[ $1 = "-h" || $1 = "--help" ]]; then
50 | echo "$help_message"
51 | return 0
52 | elif [[ $1 = "-v" || $1 = "--verbose" ]]; then
53 | verbose=true
54 | shift
55 | elif [[ $1 = "-e" || $1 = "--allow-empty" ]]; then
56 | allow_empty=true
57 | shift
58 | elif [[ ( $1 = "-m" || $1 = "--message" ) && -n $2 ]]; then
59 | commit_message=$2
60 | shift 2
61 | elif [[ $1 = "-n" || $1 = "--no-hash" ]]; then
62 | GIT_DEPLOY_APPEND_HASH=false
63 | shift
64 | else
65 | break
66 | fi
67 | done
68 |
69 | # Set internal option vars from the environment and arg flags. All internal
70 | # vars should be declared here, with sane defaults if applicable.
71 |
72 | # Source directory & target branch.
73 | deploy_directory=${GIT_DEPLOY_DIR:-dist}
74 | deploy_branch=${GIT_DEPLOY_BRANCH:-gh-pages}
75 |
76 | #if no user identity is already set in the current git environment, use this:
77 | default_username=${GIT_DEPLOY_USERNAME:-deploy.sh}
78 | default_email=${GIT_DEPLOY_EMAIL:-}
79 |
80 | #repository to deploy to. must be readable and writable.
81 | repo=${GIT_DEPLOY_REPO:-origin}
82 |
83 | #append commit hash to the end of message by default
84 | append_hash=${GIT_DEPLOY_APPEND_HASH:-true}
85 | }
86 |
87 | main() {
88 | parse_args "$@"
89 |
90 | enable_expanded_output
91 |
92 | if ! git diff --exit-code --quiet --cached; then
93 | echo Aborting due to uncommitted changes in the index >&2
94 | return 1
95 | fi
96 |
97 | commit_title=`git log -n 1 --format="%s" HEAD`
98 | commit_hash=` git log -n 1 --format="%H" HEAD`
99 |
100 | #default commit message uses last title if a custom one is not supplied
101 | if [[ -z $commit_message ]]; then
102 | commit_message="publish: $commit_title"
103 | fi
104 |
105 | #append hash to commit message unless no hash flag was found
106 | if [ $append_hash = true ]; then
107 | commit_message="$commit_message"$'\n\n'"generated from commit $commit_hash"
108 | fi
109 |
110 | previous_branch=`git rev-parse --abbrev-ref HEAD`
111 |
112 | if [ ! -d "$deploy_directory" ]; then
113 | echo "Deploy directory '$deploy_directory' does not exist. Aborting." >&2
114 | return 1
115 | fi
116 |
117 | # must use short form of flag in ls for compatibility with OS X and BSD
118 | if [[ -z `ls -A "$deploy_directory" 2> /dev/null` && -z $allow_empty ]]; then
119 | echo "Deploy directory '$deploy_directory' is empty. Aborting. If you're sure you want to deploy an empty tree, use the --allow-empty / -e flag." >&2
120 | return 1
121 | fi
122 |
123 | if git ls-remote --exit-code $repo "refs/heads/$deploy_branch" ; then
124 | # deploy_branch exists in $repo; make sure we have the latest version
125 |
126 | disable_expanded_output
127 | git fetch --force $repo $deploy_branch:$deploy_branch
128 | enable_expanded_output
129 | fi
130 |
131 | # check if deploy_branch exists locally
132 | if git show-ref --verify --quiet "refs/heads/$deploy_branch"
133 | then incremental_deploy
134 | else initial_deploy
135 | fi
136 |
137 | restore_head
138 | }
139 |
140 | initial_deploy() {
141 | git --work-tree "$deploy_directory" checkout --orphan $deploy_branch
142 | git --work-tree "$deploy_directory" add --all
143 | commit+push
144 | }
145 |
146 | incremental_deploy() {
147 | #make deploy_branch the current branch
148 | git symbolic-ref HEAD refs/heads/$deploy_branch
149 | #put the previously committed contents of deploy_branch into the index
150 | git --work-tree "$deploy_directory" reset --mixed --quiet
151 | git --work-tree "$deploy_directory" add --all
152 |
153 | set +o errexit
154 | diff=$(git --work-tree "$deploy_directory" diff --exit-code --quiet HEAD --)$?
155 | set -o errexit
156 | case $diff in
157 | 0) echo No changes to files in $deploy_directory. Skipping commit.;;
158 | 1) commit+push;;
159 | *)
160 | echo git diff exited with code $diff. Aborting. Staying on branch $deploy_branch so you can debug. To switch back to master, use: git symbolic-ref HEAD refs/heads/master && git reset --mixed >&2
161 | return $diff
162 | ;;
163 | esac
164 | }
165 |
166 | commit+push() {
167 | set_user_id
168 | git --work-tree "$deploy_directory" commit -m "$commit_message"
169 |
170 | disable_expanded_output
171 | #--quiet is important here to avoid outputting the repo URL, which may contain a secret token
172 | git push --quiet $repo $deploy_branch
173 | enable_expanded_output
174 | }
175 |
176 | #echo expanded commands as they are executed (for debugging)
177 | enable_expanded_output() {
178 | if [ $verbose ]; then
179 | set -o xtrace
180 | set +o verbose
181 | fi
182 | }
183 |
184 | #this is used to avoid outputting the repo URL, which may contain a secret token
185 | disable_expanded_output() {
186 | if [ $verbose ]; then
187 | set +o xtrace
188 | set -o verbose
189 | fi
190 | }
191 |
192 | set_user_id() {
193 | if [[ -z `git config user.name` ]]; then
194 | git config user.name "$default_username"
195 | fi
196 | if [[ -z `git config user.email` ]]; then
197 | git config user.email "$default_email"
198 | fi
199 | }
200 |
201 | restore_head() {
202 | if [[ $previous_branch = "HEAD" ]]; then
203 | #we weren't on any branch before, so just set HEAD back to the commit it was on
204 | git update-ref --no-deref HEAD $commit_hash $deploy_branch
205 | else
206 | git symbolic-ref HEAD refs/heads/$previous_branch
207 | fi
208 |
209 | git reset --mixed
210 | }
211 |
212 | filter() {
213 | sed -e "s|$repo|\$repo|g"
214 | }
215 |
216 | sanitize() {
217 | "$@" 2> >(filter 1>&2) | filter
218 | }
219 |
220 | [[ $1 = --source-only ]] || main "$@"
221 |
--------------------------------------------------------------------------------
/layouts/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/layouts/.gitkeep
--------------------------------------------------------------------------------
/static/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/static/.gitkeep
--------------------------------------------------------------------------------
/static/images/2018-01.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/static/images/2018-01.jpg
--------------------------------------------------------------------------------
/static/images/2021-11.cover.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/static/images/2021-11.cover.jpeg
--------------------------------------------------------------------------------
/static/images/2021-11.in-event.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/static/images/2021-11.in-event.jpeg
--------------------------------------------------------------------------------
/static/images/2023-06.cover.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/static/images/2023-06.cover.jpeg
--------------------------------------------------------------------------------
/static/images/2023-06.in-event.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/static/images/2023-06.in-event.jpeg
--------------------------------------------------------------------------------
/static/images/act.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/static/images/act.jpeg
--------------------------------------------------------------------------------
/static/images/dependent-type.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/static/images/dependent-type.jpg
--------------------------------------------------------------------------------
/static/images/halvm.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/static/images/halvm.jpg
--------------------------------------------------------------------------------
/static/images/life-of-a-packet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/static/images/life-of-a-packet.png
--------------------------------------------------------------------------------
/static/images/memory-model.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/static/images/memory-model.png
--------------------------------------------------------------------------------
/static/images/physics-engine.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/static/images/physics-engine.png
--------------------------------------------------------------------------------
/static/images/wechat_qrcode.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/static/images/wechat_qrcode.jpg
--------------------------------------------------------------------------------
/themes/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/themes/.gitkeep
--------------------------------------------------------------------------------
/themes/sjtug/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 | ### 2016/04/01
4 |
5 | #### Fontawesome as option for social icons in footer
6 |
7 | You can now use Fontawesome as alternative to the Mono social icons. Look [here](https://github.com/digitalcraftsman/hugo-cactus-theme/tree/dev#social-link-icons) for more instructions.
8 |
9 | [Show me the diff](https://github.com/digitalcraftsman/hugo-cactus-theme/commit/79e5435d6be25ae882ab5ae8455f17834f109a32)
10 |
11 | #### Hide pages
12 |
13 | Pages can now be hidden by adding `hidden = true` to the frontmatter. The pages are still built but they will not appear in the post in on the homepage.
14 |
15 | [Show me the diff](https://github.com/digitalcraftsman/hugo-cactus-theme/commit/cf93e42859280b04703cd6ca96062db9a4adb65e)
16 |
17 |
18 | ### 2015/07/12
19 |
20 | #### Social link icons
21 |
22 | Social links with icons can be enabled replacing the copyright field in footer. Configure the style and links in `config.toml`.
23 |
24 | ### 2015/26/11
25 |
26 | Hugo v0.15 is required in order to run the theme with the changes listed below:
27 |
28 | #### Google Analytics
29 |
30 | The setup of Google Analytics changed slighty due to the switch to Hugo's built-in template. In order to update the theme you need to relocate the `google_analytics` variable in the configs and rename it to `googleAnalytics`. Take a look in the example [`config.toml`](https://github.com/digitalcraftsman/hugo-cactus-theme/blob/dev/exampleSite/config.toml).
31 |
32 | [Show me the diff](https://github.com/digitalcraftsman/hugo-cactus-theme/commit/c2cdd9a02a968738438c48d246ae3949a4e032fc)
33 |
34 |
35 | #### Disqus
36 |
37 | Now the theme uses the built-in template of Hugo to enable the comments section with Disqus. This change requires to relocate the `disqusShortname` variable in the configs.
38 |
39 | [Show me the diff](https://github.com/digitalcraftsman/hugo-cactus-theme/commit/9ebf05f5b03b3a60fc11cc47775234b7fc2616f0)
40 |
--------------------------------------------------------------------------------
/themes/sjtug/LICENSE.md:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2015 [Cactus Authors](//github.com/koenbok/Cactus/blob/master/AUTHORS), [Nick Balestra](//github.com/nickbalestra) and [digitalcraftsman](//github.com/digitalcraftsman)
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/themes/sjtug/README.md:
--------------------------------------------------------------------------------
1 | # Cactus Theme
2 |
3 | Cactus is a minimalistic theme for bloggers based on the default theme of the same-named [Cactus static site generator](//github.com/koenbok/Cactus) written in Python and [Nick Balestra](//github.com/nickbalestra/kactus)'s Jekyll port. Noteworthy features of this Hugo theme are the integration of a comment-system powered by Disqus, a customizable about page, support for RSS feeds, syntax highlighting for source code and sharing options for blog posts.
4 |
5 |
6 | 
7 |
8 |
9 | ## Installation
10 |
11 | Inside the folder of your Hugo site run:
12 |
13 | $ cd themes
14 | $ git clone https://github.com/digitalcraftsman/hugo-cactus-theme.git
15 |
16 | For more information read the official [setup guide](//gohugo.io/overview/installing/) of Hugo.
17 |
18 | ### The config file
19 |
20 | Take a look inside the [`exampleSite`](//github.com/digitalcraftsman/hugo-cactus-theme/tree/dev/exampleSite) folder of this theme. You'll find a file called [`config.toml`](//github.com/digitalcraftsman/hugo-cactus-theme/blob/dev/exampleSite/config.toml).
21 |
22 | To use it, copy the [`config.toml`](//github.com/digitalcraftsman/hugo-cactus-theme/blob/dev/exampleSite/config.toml) in the root folder of your Hugo site. Feel free to change strings as you like to customize your website.
23 |
24 | ## About page
25 |
26 | Use the about page to introduce yourself to your visitors. You can customize the content as you like in the [`config.toml`](//github.com/digitalcraftsman/hugo-cactus-theme/blob/dev/exampleSite/config.toml). Furthermore, you should replace the [avatar placeholder](//github.com/digitalcraftsman/hugo-cactus-theme/blob/master/static/images/avatar.png) with a great image of yourself.
27 |
28 | ## Hide pages
29 |
30 | Pages can be hidden and don't appear in the post list on the homepage if you add the variable `hidden = true` to the frontmatter. This allows you to link from elsewhere, i.e. just the menu.
31 |
32 | ## Disqus
33 |
34 | This theme features a comment system powered by Disqus too. Just add your Disqus-shortname to the [`config.toml`](//github.com/digitalcraftsman/hugo-cactus-theme/blob/dev/exampleSite/config.toml) and let readers respond to your blog posts.
35 |
36 | ## Social link icons
37 |
38 | You can add a social link panel in the footer by adding entries to the `social` block in the [`config.toml`](//github.com/digitalcraftsman/hugo-cactus-theme/blob/dev/exampleSite/config.toml). You can choose between two icon fonts:
39 |
40 | - [Font awesome](https://fortawesome.github.io/Font-Awesome/) or
41 | - [Mono social icons](https://github.com/drinchev/monosocialiconsfont)
42 |
43 | Assign either `font-awesome` or `mono-social` to the `iconFont` variable. The Mono social icons offer three styles of icons: -circle, rounded, or default (empty).
44 |
45 | ## Nearly finished
46 |
47 | In order to see your site in action, run Hugo's built-in local server.
48 |
49 | $ hugo server
50 |
51 | Now enter [`localhost:1313`](http://localhost:1313) in the address bar of your browser.
52 |
53 |
54 | ## Contributing
55 |
56 | Did you found a bug or got an idea for a new feature? Feel free to use the [issue tracker](//github.com/digitalcraftsman/hugo-cactus-theme/issues) to let me know. Or make directly a [pull request](//github.com/digitalcraftsman/hugo-cactus-theme/pulls).
57 |
58 | Please create a separate branch for your pull request.
59 |
60 |
61 | ## License
62 |
63 | This theme is released under the MIT license. For more information read the [license](//github.com/digitalcraftsman/hugo-cactus-theme/blob/dev/LICENSE.md).
64 |
65 |
66 | ## Acknowledgements
67 |
68 | Thanks to
69 |
70 | - [Nick Balestra](//github.com/nickbalestra/kactus) for creating the original theme
71 | - [Steve Francia](//github.com/spf13) for creating Hugo and the awesome community around the project.
72 |
73 |
--------------------------------------------------------------------------------
/themes/sjtug/archetypes/default.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = ""
3 | description = ""
4 | +++
5 |
--------------------------------------------------------------------------------
/themes/sjtug/content/about/index.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2015-06-20T14:02:37+02:00"
3 | title = "About"
4 | hidden = true
5 | +++
6 |
7 | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ipsa ullam earum dolorum! Sed, perspiciatis.
8 |
9 | Lorem ipsum dolor sit amet, consectetur adipisicing elit.
10 |
11 | ***
12 |
13 | ### Lorem ipsum dolor.
14 |
15 | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ea dicta corporis ad inventore itaque impedit dolor atque amet exercitationem! Veniam qui voluptas maiores vel laudantium necessitatibus, velit ducimus! Iste hic facere, accusamus fugiat enim facilis.
--------------------------------------------------------------------------------
/themes/sjtug/content/post/hugoisforlovers.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "Getting Started with Hugo"
3 | description = ""
4 | tags = [
5 | "go",
6 | "golang",
7 | "hugo",
8 | "development",
9 | ]
10 | date = "2014-04-02"
11 | categories = [
12 | "Development",
13 | "golang",
14 | ]
15 | menu = "main"
16 | +++
17 |
18 | ## Step 1. Install Hugo
19 |
20 | Goto [hugo releases](https://github.com/spf13/hugo/releases) and download the
21 | appropriate version for your os and architecture.
22 |
23 | Save it somewhere specific as we will be using it in the next step.
24 |
25 | More complete instructions are available at [installing hugo](/overview/installing/)
26 |
27 | ## Step 2. Build the Docs
28 |
29 | Hugo has its own example site which happens to also be the documentation site
30 | you are reading right now.
31 |
32 | Follow the following steps:
33 |
34 | 1. Clone the [hugo repository](http://github.com/spf13/hugo)
35 | 2. Go into the repo
36 | 3. Run hugo in server mode and build the docs
37 | 4. Open your browser to http://localhost:1313
38 |
39 | Corresponding pseudo commands:
40 |
41 | git clone https://github.com/spf13/hugo
42 | cd hugo
43 | /path/to/where/you/installed/hugo server --source=./docs
44 | > 29 pages created
45 | > 0 tags index created
46 | > in 27 ms
47 | > Web Server is available at http://localhost:1313
48 | > Press ctrl+c to stop
49 |
50 | Once you've gotten here, follow along the rest of this page on your local build.
51 |
52 | ## Step 3. Change the docs site
53 |
54 | Stop the Hugo process by hitting ctrl+c.
55 |
56 | Now we are going to run hugo again, but this time with hugo in watch mode.
57 |
58 | /path/to/hugo/from/step/1/hugo server --source=./docs --watch
59 | > 29 pages created
60 | > 0 tags index created
61 | > in 27 ms
62 | > Web Server is available at http://localhost:1313
63 | > Watching for changes in /Users/spf13/Code/hugo/docs/content
64 | > Press ctrl+c to stop
65 |
66 |
67 | Open your [favorite editor](http://vim.spf13.com) and change one of the source
68 | content pages. How about changing this very file to *fix the typo*. How about changing this very file to *fix the typo*.
69 |
70 | Content files are found in `docs/content/`. Unless otherwise specified, files
71 | are located at the same relative location as the url, in our case
72 | `docs/content/overview/quickstart.md`.
73 |
74 | Change and save this file.. Notice what happened in your terminal.
75 |
76 | > Change detected, rebuilding site
77 |
78 | > 29 pages created
79 | > 0 tags index created
80 | > in 26 ms
81 |
82 | Refresh the browser and observe that the typo is now fixed.
83 |
84 | Notice how quick that was. Try to refresh the site before it's finished building.. I double dare you.
85 | Having nearly instant feedback enables you to have your creativity flow without waiting for long builds.
86 |
87 | ## Step 4. Have fun
88 |
89 | The best way to learn something is to play with it.
90 |
--------------------------------------------------------------------------------
/themes/sjtug/exampleSite/.gitignore:
--------------------------------------------------------------------------------
1 | public/
2 | themes
--------------------------------------------------------------------------------
/themes/sjtug/exampleSite/config.toml:
--------------------------------------------------------------------------------
1 | # Site settings
2 | baseurl = "https://example.org/"
3 | languageCode = "en-us"
4 | title = "Hugo Cactus Theme"
5 | theme = "hugo-cactus-theme"
6 | # Enter your tracking code to enable Google Analytics
7 | googleAnalytics = ""
8 | # Disable comments by leaving disqusShortname empty
9 | disqusShortname = "spf13"
10 |
11 | [params]
12 | name = "John Doe"
13 | description = "Describe your website"
14 | bio = "Blogger - Programmer - Gopher"
15 | # Enter optionally your twitter account
16 | twitter = "Your Twitter account"
17 | enableRSS = true
18 |
19 | # Add custom assets with their paths relative to the static folder
20 | customCSS = []
21 | customJS = []
22 |
23 | # The variables below are optionally too and can be used to
24 | # translate or customize each string of the theme.
25 |
26 | # Navigation links
27 | home = ""
28 | about = ""
29 | subscribe = ""
30 | # Pagination links
31 | olderPosts = ""
32 | newerPosts = ""
33 | readMore = ""
34 | copyright = ""
35 | # Sharing options and author information in posts
36 | aboutAuthor = "I'm an enthusiastic gopher."
37 | tweet = ""
38 | share = ""
39 | # 404 page
40 | title404 = ""
41 | subtitle404 = ""
42 |
43 | # Choose a font for the social icons in the footer. Either "mono-social" or "font-awesome"
44 | iconFont = "mono-social"
45 | # The social icons can be styled differently if you use mono as font - circle, rounded, or empty
46 | socialIconStyle = "circle"
47 |
48 | # Add additional social link entries underneath
49 | [social]
50 | twitter = "https://www.twitter.com/"
51 | facebook = "https://www.facebook.com/"
52 | github = "https://www.github.com/"
53 | dribble = "https://www.dribbble.com/"
54 |
--------------------------------------------------------------------------------
/themes/sjtug/exampleSite/content/about/index.md:
--------------------------------------------------------------------------------
1 | +++
2 | date = "2015-06-20T14:02:37+02:00"
3 | title = "About"
4 | hidden = true
5 | +++
6 |
7 | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ipsa ullam earum dolorum! Sed, perspiciatis.
8 |
9 | Lorem ipsum dolor sit amet, consectetur adipisicing elit.
10 |
11 | ***
12 |
13 | ### Lorem ipsum dolor.
14 |
15 | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ea dicta corporis ad inventore itaque impedit dolor atque amet exercitationem! Veniam qui voluptas maiores vel laudantium necessitatibus, velit ducimus! Iste hic facere, accusamus fugiat enim facilis.
--------------------------------------------------------------------------------
/themes/sjtug/exampleSite/content/post/hugoisforlovers.md:
--------------------------------------------------------------------------------
1 | +++
2 | title = "Getting Started with Hugo"
3 | description = ""
4 | tags = [
5 | "go",
6 | "golang",
7 | "hugo",
8 | "development",
9 | ]
10 | date = "2014-04-02"
11 | categories = [
12 | "Development",
13 | "golang",
14 | ]
15 | menu = "main"
16 | +++
17 |
18 | ## Step 1. Install Hugo
19 |
20 | Goto [hugo releases](https://github.com/spf13/hugo/releases) and download the
21 | appropriate version for your os and architecture.
22 |
23 | Save it somewhere specific as we will be using it in the next step.
24 |
25 | More complete instructions are available at [installing hugo](/overview/installing/)
26 |
27 | ## Step 2. Build the Docs
28 |
29 | Hugo has its own example site which happens to also be the documentation site
30 | you are reading right now.
31 |
32 | Follow the following steps:
33 |
34 | 1. Clone the [hugo repository](http://github.com/spf13/hugo)
35 | 2. Go into the repo
36 | 3. Run hugo in server mode and build the docs
37 | 4. Open your browser to http://localhost:1313
38 |
39 | Corresponding pseudo commands:
40 |
41 | git clone https://github.com/spf13/hugo
42 | cd hugo
43 | /path/to/where/you/installed/hugo server --source=./docs
44 | > 29 pages created
45 | > 0 tags index created
46 | > in 27 ms
47 | > Web Server is available at http://localhost:1313
48 | > Press ctrl+c to stop
49 |
50 | Once you've gotten here, follow along the rest of this page on your local build.
51 |
52 | ## Step 3. Change the docs site
53 |
54 | Stop the Hugo process by hitting ctrl+c.
55 |
56 | Now we are going to run hugo again, but this time with hugo in watch mode.
57 |
58 | /path/to/hugo/from/step/1/hugo server --source=./docs --watch
59 | > 29 pages created
60 | > 0 tags index created
61 | > in 27 ms
62 | > Web Server is available at http://localhost:1313
63 | > Watching for changes in /Users/spf13/Code/hugo/docs/content
64 | > Press ctrl+c to stop
65 |
66 |
67 | Open your [favorite editor](http://vim.spf13.com) and change one of the source
68 | content pages. How about changing this very file to *fix the typo*. How about changing this very file to *fix the typo*.
69 |
70 | Content files are found in `docs/content/`. Unless otherwise specified, files
71 | are located at the same relative location as the url, in our case
72 | `docs/content/overview/quickstart.md`.
73 |
74 | Change and save this file.. Notice what happened in your terminal.
75 |
76 | > Change detected, rebuilding site
77 |
78 | > 29 pages created
79 | > 0 tags index created
80 | > in 26 ms
81 |
82 | Refresh the browser and observe that the typo is now fixed.
83 |
84 | Notice how quick that was. Try to refresh the site before it's finished building.. I double dare you.
85 | Having nearly instant feedback enables you to have your creativity flow without waiting for long builds.
86 |
87 | ## Step 4. Have fun
88 |
89 | The best way to learn something is to play with it.
90 |
--------------------------------------------------------------------------------
/themes/sjtug/exampleSite/static/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/themes/sjtug/exampleSite/static/.gitkeep
--------------------------------------------------------------------------------
/themes/sjtug/images/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/themes/sjtug/images/screenshot.png
--------------------------------------------------------------------------------
/themes/sjtug/images/tn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sjtug/portal/3c9ab9378a983718c21865ba73e80d9d818e5f38/themes/sjtug/images/tn.png
--------------------------------------------------------------------------------
/themes/sjtug/layouts/404.html:
--------------------------------------------------------------------------------
1 | {{ partial "head.html" . }}
2 |
3 | {{ partial "nav.html" . }}
4 |
5 |
6 |
7 |
8 | {{ with .Site.Params.title404 }}{{ . }}{{ else }}404 - Page not found{{ end }}
9 | {{ with .Site.Params.subtitle404 }}{{ . }}{{ else }}The content you're looking for doesn't seem to exist.{{ end }}
10 |
11 |
12 | {{ partial "latest-posts.html" . }}
13 |
14 |
15 | {{ partial "footer.html" . }}
16 |
17 |
18 |