diff --git a/documentation/content/en/books/handbook/mirrors/_index.adoc b/documentation/content/en/books/handbook/mirrors/_index.adoc index e921ce156e..9c308e1dbf 100644 --- a/documentation/content/en/books/handbook/mirrors/_index.adoc +++ b/documentation/content/en/books/handbook/mirrors/_index.adoc @@ -1,469 +1,471 @@ --- title: Appendix A. Obtaining FreeBSD part: Part V. Appendices prev: books/handbook/partv next: books/handbook/bibliography description: "How to get FreeBSD: CD and DVD sets, FTP sites and how to install and use Git" tags: ["Obtaining", "CD", "DVD", "FTP", "Git"] showBookMenu: true weight: 41 params: path: "/books/handbook/mirrors/" --- [appendix] = Obtaining FreeBSD :doctype: book :toc: macro :toclevels: 1 :icons: font :sectnums: :sectnumlevels: 6 :sectnumoffset: A :partnums: :source-highlighter: rouge :experimental: :images-path: books/handbook/mirrors/ ifdef::env-beastie[] ifdef::backend-html5[] :imagesdir: ../../../../images/{images-path} endif::[] ifndef::book[] include::shared/authors.adoc[] include::shared/mirrors.adoc[] include::shared/releases.adoc[] include::shared/attributes/attributes-{{% lang %}}.adoc[] include::shared/{{% lang %}}/teams.adoc[] include::shared/{{% lang %}}/mailing-lists.adoc[] include::shared/{{% lang %}}/urls.adoc[] toc::[] endif::[] ifdef::backend-pdf,backend-epub3[] include::../../../../../shared/asciidoctor.adoc[] endif::[] endif::[] ifndef::env-beastie[] toc::[] include::../../../../../shared/asciidoctor.adoc[] endif::[] [[mirrors]] == Mirrors The official mirrors of the FreeBSD project are made up of many machines operated by the project cluster administrators and behind GeoDNS to direct users to the closest available mirror. Current locations are Australia, Brazil, Japan (two sites), Malaysia, South Africa, Sweden, Taiwan, United States of America (California, Illinois - two sites, New Jersey, and Washington). Official mirrors service: [cols="1,1,3"] |=== | Service Name | Protocols | More information | **cgit.FreeBSD.org** | link:https://cgit.FreeBSD.org/[https] | Web interface for the FreeBSD Git repositories. | **docs.FreeBSD.org** | link:https://docs.FreeBSD.org/[https] | FreeBSD Documentation Portal. | **download.FreeBSD.org** | link:https://download.FreeBSD.org/[https] link:ftp://download.FreeBSD.org/pub/FreeBSD/[ftp] | Same content as `ftp.FreeBSD.org`, `ftp` is a legacy name; `download.FreeBSD.org` is recommended. | **git.FreeBSD.org** | git over `https` and `ssh` | More details on link:https://docs.freebsd.org/en/books/handbook/mirrors/#git[using git] section. | **pkg.FreeBSD.org** | man:pkg[8] over `http` and `https` | Official FreeBSD package repositories used by the man:pkg[8] program. | **vuxml.FreeBSD.org** / **www.VuXML.org** | link:https://www.vuxml.org/[https] | FreeBSD Project VuXML web page. `pkg audit` fetches the list of vulnerabilities from this service. | **www.FreeBSD.org** | link:https://www.FreeBSD.org/[https] | FreeBSD Website. |=== All official mirrors support IPv4 and IPv6. http://ftp-archive.FreeBSD.org is not in the GeoDNS Infrastructure, hosted in only one location (US). The project is looking for new locations; those willing to sponsor, please reach out to the Cluster Administrators team for more information. +There is an ongoing project to provide **download.FreeBSD.org** and **pkg.FreeBSD.org** through link:https://www.fastly.com[Fastly], using its CDN acceleration, caching, and bandwidth to bring FreeBSD images and packages to our globally distributed community. + Mirror list maintained by the community and other companies: [cols="1,1,3"] |=== |Country | Hostname | Protocols | Australia icon:envelope[link=mailto:{mirrors-australia-email}, title="mirror contact"] | ftp.au.FreeBSD.org | link:http://ftp.au.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.au.FreeBSD.org/pub/FreeBSD[http_v6] link:rsync://ftp.au.FreeBSD.org[rsync] link:rsync://ftp.au.FreeBSD.org[rsync_v6] | | ftp3.au.FreeBSD.org | link:http://ftp3.au.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp3.au.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp3.au.FreeBSD.org[rsync] | Austria icon:envelope[link=mailto:{mirrors-austria-email}, title="mirror contact"] | ftp.at.FreeBSD.org | link:http://ftp.at.FreeBSD.org/pub/FreeBSD/[http] link:http://ftp.at.FreeBSD.org/pub/FreeBSD/[http_v6] link:ftp://ftp.at.FreeBSD.org/pub/FreeBSD/[ftp] link:ftp://ftp.at.FreeBSD.org/pub/FreeBSD/[ftp_v6] link:rsync://ftp.at.FreeBSD.org/pub/FreeBSD/[rsync] link:rsync://ftp.at.FreeBSD.org/pub/FreeBSD/[rsync_v6] | Brazil icon:envelope[link=mailto:{mirrors-brazil-email}, title="mirror contact"] | ftp2.br.FreeBSD.org | link:http://ftp2.br.FreeBSD.org/FreeBSD[http] link:rsync://ftp2.br.FreeBSD.org[rsync] link:rsync://ftp2.br.FreeBSD.org[rsync_v6] | | ftp3.br.FreeBSD.org | link:http://ftp3.br.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp3.br.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp3.br.FreeBSD.org[rsync] | Bulgaria icon:envelope[link=mailto:{mirrors-bulgaria-email}, title="mirror contact"] | ftp.bg.FreeBSD.org | link:ftp://ftp.bg.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.bg.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.bg.FreeBSD.org[rsync] link:rsync://ftp.bg.FreeBSD.org[rsync_v6] | Czech Republic icon:envelope[link=mailto:{mirrors-czech-email}, title="mirror contact"] | ftp.cz.FreeBSD.org | link:http://ftp.cz.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.cz.FreeBSD.org/pub/FreeBSD[http_v6] link:rsync://ftp.cz.FreeBSD.org[rsync] link:rsync://ftp.cz.FreeBSD.org[rsync_v6] | Denmark icon:envelope[link=mailto:{mirrors-denmark-email}, title="mirror contact"] | ftp.dk.FreeBSD.org | link:http://ftp.dk.FreeBSD.org/FreeBSD/[http] link:http://ftp.dk.FreeBSD.org/FreeBSD/[http_v6] link:ftp://ftp.dk.FreeBSD.org/FreeBSD/[ftp] link:ftp://ftp.dk.FreeBSD.org/FreeBSD/[ftp_v6] link:rsync://ftp.dk.FreeBSD.org/FreeBSD/[rsync] link:rsync://ftp.dk.FreeBSD.org/FreeBSD/[rsync_v6] | Finland icon:envelope[link=mailto:{mirrors-finland-email}, title="mirror contact"] | ftp.fi.FreeBSD.org | link:ftp://ftp.fi.FreeBSD.org/pub/FreeBSD[ftp] | France icon:envelope[link=mailto:{mirrors-france-email}, title="mirror contact"] | ftp.fr.FreeBSD.org | link:http://ftp.fr.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.fr.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.fr.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.fr.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.fr.FreeBSD.org[rsync] link:rsync://ftp.fr.FreeBSD.org[rsync_v6] | | ftp3.fr.FreeBSD.org | link:ftp://ftp3.fr.FreeBSD.org/pub/FreeBSD[ftp] | | ftp6.fr.FreeBSD.org | link:http://ftp6.fr.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp6.fr.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp6.fr.FreeBSD.org[rsync] | Germany icon:envelope[link=mailto:{mirrors-germany-email}, title="mirror contact"] | ftp.de.FreeBSD.org | link:http://ftp.de.FreeBSD.org/FreeBSD[http] link:http://ftp.de.FreeBSD.org/FreeBSD[http_v6] link:https://ftp.de.FreeBSD.org/FreeBSD[https] link:https://ftp.de.FreeBSD.org/FreeBSD[https_v6] link:ftp://ftp.de.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.de.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.de.FreeBSD.org/FreeBSD[rsync] link:rsync://ftp.de.FreeBSD.org/FreeBSD[rsync_v6] | | ftp1.de.FreeBSD.org | link:http://ftp1.de.FreeBSD.org/pub/FreeBSD[http] link:http://ftp1.de.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp1.de.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp1.de.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp1.de.FreeBSD.org[rsync] link:rsync://ftp1.de.FreeBSD.org[rsync_v6] | | ftp2.de.FreeBSD.org | link:http://ftp2.de.FreeBSD.org/pub/FreeBSD[http] link:http://ftp2.de.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp2.de.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp2.de.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp2.de.FreeBSD.org[rsync] link:rsync://ftp2.de.FreeBSD.org[rsync_v6] | | ftp5.de.FreeBSD.org | link:ftp://ftp5.de.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp5.de.FreeBSD.org/pub/FreeBSD[ftp_v6] | | ftp7.de.FreeBSD.org | link:http://ftp7.de.FreeBSD.org/pub/FreeBSD[http] link:http://ftp7.de.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp7.de.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp7.de.FreeBSD.org/pub/FreeBSD[ftp_v6] | Greece icon:envelope[link=mailto:{mirrors-greece-email}, title="mirror contact"] | ftp.gr.FreeBSD.org | link:http://ftp.gr.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.gr.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.gr.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.gr.FreeBSD.org/pub/FreeBSD[ftp_v6] | | ftp2.gr.FreeBSD.org | link:http://ftp2.gr.FreeBSD.org/pub/FreeBSD[http] link:http://ftp2.gr.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp2.gr.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp2.gr.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp2.gr.FreeBSD.org[rsync] | Japan icon:envelope[link=mailto:{mirrors-japan-email}, title="mirror contact"] | ftp.jp.FreeBSD.org | link:http://ftp.jp.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.jp.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.jp.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.jp.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.jp.FreeBSD.org[rsync] link:rsync://ftp.jp.FreeBSD.org[rsync_v6] | | ftp2.jp.FreeBSD.org | link:ftp://ftp2.jp.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp2.jp.FreeBSD.org[rsync] link:rsync://ftp2.jp.FreeBSD.org[rsync_v6] | | ftp3.jp.FreeBSD.org | link:http://ftp3.jp.FreeBSD.org/pub/FreeBSD[http] link:rsync://ftp3.jp.FreeBSD.org[rsync] | | ftp4.jp.FreeBSD.org | link:ftp://ftp4.jp.FreeBSD.org/pub/FreeBSD[ftp] | | ftp6.jp.FreeBSD.org | link:http://ftp6.jp.FreeBSD.org/pub/FreeBSD[http] link:http://ftp6.jp.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp6.jp.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp6.jp.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp6.jp.FreeBSD.org[rsync] link:rsync://ftp6.jp.FreeBSD.org[rsync_v6] | Kazakhstan icon:envelope[link=mailto:support@ps.kz, title="mirror contact"] | mirror.ps.kz | http://mirror.ps.kz/freebsd[http] link:ftp://mirror.ps.kz/freebsd[ftp] | | mirror.neolabs.kz | link:http://mirror.neolabs.kz/freebsd[http] link:ftp://mirror.neolabs.kz/freebsd[ftp] | Korea icon:envelope[link=mailto:{mirrors-korea-email}, title="mirror contact"] | ftp.kr.FreeBSD.org | link:http://ftp.kr.FreeBSD.org/pub/FreeBSD[http] link:https://ftp.kr.FreeBSD.org/pub/FreeBSD[https] link:ftp://ftp.kr.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp.kr.FreeBSD.org[rsync] | | ftp2.kr.FreeBSD.org | link:rsync://ftp2.kr.FreeBSD.org[rsync] | Latvia icon:envelope[link=mailto:{mirrors-latvia-email}, title="mirror contact"] | ftp.lv.FreeBSD.org | link:http://ftp.lv.FreeBSD.org/freebsd[http] link:ftp://ftp.lv.FreeBSD.org/freebsd[ftp] | Netherlands icon:envelope[link=mailto:{mirrors-netherlands-email}, title="mirror contact"] | ftp.nl.FreeBSD.org | link:http://ftp.nl.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.nl.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.nl.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.nl.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.nl.FreeBSD.org[rsync] link:rsync://ftp.nl.FreeBSD.org[rsync_v6] | | ftp2.nl.FreeBSD.org | link:http://ftp2.nl.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp2.nl.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp2.nl.FreeBSD.org[rsync] | | mirror.nl.altushost.com | link:https://mirror.nl.altushost.com/FreeBSD[https] | New Zealand icon:envelope[link=mailto:{mirrors-new-zealand-email}, title="mirror contact"] | ftp.nz.FreeBSD.org | link:http://ftp.nz.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp.nz.FreeBSD.org/pub/FreeBSD[ftp] | Norway icon:envelope[link=mailto:{mirrors-norway-email}, title="mirror contact"] | ftp.no.FreeBSD.org | link:ftp://ftp.no.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.no.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.no.FreeBSD.org[rsync] link:rsync://ftp.no.FreeBSD.org[rsync_v6] | Poland icon:envelope[link=mailto:{mirrors-poland-email}, title="mirror contact"] | ftp.pl.FreeBSD.org | link:http://ftp.pl.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.pl.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.pl.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp.pl.FreeBSD.org[rsync] link:rsync://ftp.pl.FreeBSD.org[rsync_v6] | Russia icon:envelope[link=mailto:{mirrors-russia-email}, title="mirror contact"] | ftp.ru.FreeBSD.org | link:http://ftp.ru.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.ru.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.ru.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.ru.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.ru.FreeBSD.org[rsync] link:rsync://ftp.ru.FreeBSD.org[rsync_v6] | | ftp2.ru.FreeBSD.org | link:https://ftp2.ru.FreeBSD.org/pub/FreeBSD[https] link:ftp://ftp2.ru.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp2.ru.FreeBSD.org[rsync] | Slovenia icon:envelope[link=mailto:{mirrors-slovenia-email}, title="mirror contact"] | ftp.si.FreeBSD.org | link:http://ftp.si.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.si.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.si.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.si.FreeBSD.org/pub/FreeBSD[ftp_v6] | South Africa icon:envelope[link=mailto:{mirrors-south-africa-email}, title="mirror contact"] | ftp.za.FreeBSD.org | link:https://ftp.za.FreeBSD.org/pub/FreeBSD[https] link:https://ftp.za.FreeBSD.org/pub/FreeBSD[https_v6] link:rsync://ftp.za.FreeBSD.org[rsync] link:rsync://ftp.za.FreeBSD.org[rsync_v6] | | ftp2.za.FreeBSD.org | link:http://ftp2.za.FreeBSD.org/pub/FreeBSD[http] link:http://ftp2.za.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp2.za.FreeBSD.org/pub/FreeBSD[ftp_v6] | | ftp4.za.FreeBSD.org | link:http://ftp4.za.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp4.za.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp4.za.FreeBSD.org[rsync] | Sweden icon:envelope[link=mailto:{mirrors-sweden-email}, title="mirror contact"] | ftp.se.FreeBSD.org | link:http://ftp.se.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.se.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.se.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.se.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.se.FreeBSD.org[rsync] link:rsync://ftp.se.FreeBSD.org[rsync_v6] | | mirror.se.altushost.com | link:https://mirror.se.altushost.com/FreeBSD[https] | Taiwan icon:envelope[link=mailto:{mirrors-taiwan-email}, title="mirror contact"] | ftp4.tw.FreeBSD.org | link:https://ftp4.tw.FreeBSD.org/pub/FreeBSD[https] link:ftp://ftp4.tw.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp4.tw.FreeBSD.org[rsync] | | ftp5.tw.FreeBSD.org | link:http://ftp5.tw.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp5.tw.FreeBSD.org/pub/FreeBSD[ftp] | Ukraine icon:envelope[link=mailto:{mirrors-ukraine-email}, title="mirror contact"] | ftp.ua.FreeBSD.org | link:http://ftp.ua.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp.ua.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.ua.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.ua.FreeBSD.org[rsync] link:rsync://ftp.ua.FreeBSD.org[rsync_v6] | United Kingdom icon:envelope[link=mailto:{mirrors-uk-email}, title="mirror contact"] | ftp.uk.FreeBSD.org | link:http://ftp.uk.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.uk.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.uk.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.uk.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.uk.FreeBSD.org[rsync] link:rsync://ftp.uk.FreeBSD.org[rsync_v6] | | ftp2.uk.FreeBSD.org | link:http://ftp2.uk.FreeBSD.org/pub/FreeBSD[http] link:http://ftp2.uk.FreeBSD.org/pub/FreeBSD[http_v6] link:https://ftp2.uk.FreeBSD.org/pub/FreeBSD[https] link:https://ftp2.uk.FreeBSD.org/pub/FreeBSD[https_v6] link:ftp://ftp2.uk.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp2.uk.FreeBSD.org/pub/FreeBSD[ftp_v6] | United States of America icon:envelope[link=mailto:{mirrors-us-email}, title="mirror contact"] | ftp11.FreeBSD.org | link:http://ftp11.FreeBSD.org/pub/FreeBSD[http] link:http://ftp11.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp11.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp11.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp11.FreeBSD.org[rsync] link:rsync://ftp11.FreeBSD.org[rsync_v6] | | ftp14.FreeBSD.org | link:ftp://ftp14.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp14.FreeBSD.org[rsync] (Former official tier 1) | | ftp5.FreeBSD.org | link:http://ftp5.FreeBSD.org/pub/FreeBSD[http] link:http://ftp5.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp5.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp5.FreeBSD.org/pub/FreeBSD[ftp_v6] |=== The current list of protocols supported by the community mirrors was last updated on 2022-01-31, and it's not guaranteed. [[git]] == Using Git [[git-intro]] === Introduction As of December 2020, FreeBSD uses git as the primary version control system for storing all of FreeBSD's base source code and documentation. As of April 2021, FreeBSD uses git as the only version control system for storing all of FreeBSD's Ports Collection. [NOTE] ==== Git is generally a developer tool. Users may prefer to use `freebsd-update` (crossref:cutting-edge[updating-upgrading-freebsdupdate,“FreeBSD Update”]) to update the FreeBSD base system. ==== This section demonstrates how to install Git on a FreeBSD system and use it to create a local copy of a FreeBSD source code repository. [[git-install]] === Installation Git can be installed from the Ports Collection, or as a package: [source,shell] .... # pkg install git .... [[git-usage]] === Running Git To fetch a clean copy of the sources into a local directory, use `git clone`. This directory of files is called the _working tree_. Git uses URLs to designate a repository. There are three different repositories, `src` for the FreeBSD system source code, `doc` for documentation, and `ports` for the FreeBSD Ports Collection. All three are reachable over two different protocols: HTTPS and SSH. For example, the URL `https://git.FreeBSD.org/src.git` specifies the main branch of the `src` repository, using the `https` protocol. [[git-url-table]] .FreeBSD Git Repository URL Table [options="header,footer"] |======================================================= |Item | Git URL | Read-only src repo via HTTPS | `https://git.FreeBSD.org/src.git` | Read-only src repo via anon-ssh | `ssh://anongit@git.FreeBSD.org/src.git` | Read-only doc repo via HTTPS | `https://git.FreeBSD.org/doc.git` | Read-only doc repo via anon-ssh | `ssh://anongit@git.FreeBSD.org/doc.git` | Read-only ports repo via HTTPS | `https://git.FreeBSD.org/ports.git` | Read-only ports repo via anon-ssh | `ssh://anongit@git.FreeBSD.org/ports.git` |======================================================= External mirrors maintained by project members are also available; please refer to the crossref:mirrors[external-mirrors, External mirrors] section. To clone a copy of the FreeBSD system source code repository: [source,shell] .... # git clone -o freebsd https://git.FreeBSD.org/src.git /usr/src .... The `-o freebsd` option specifies the origin; by convention in the FreeBSD documentation, the origin is assumed to be `freebsd`. Because the initial checkout must download the full branch of the remote repository, it can take a while. Please be patient. Initially, the working tree contains source code for the `main` branch, which corresponds to CURRENT. To switch to 13-STABLE instead: [source,shell] .... # cd /usr/src # git checkout stable/13 .... The working tree can be updated with `git pull`. To update [.filename]#/usr/src# created in the example above, use: [source,shell] .... # cd /usr/src # git pull --rebase .... The update is much quicker than a checkout, only transferring files that have changed. === Web-based repository browser The FreeBSD project uses cgit as the web-based repository browser: link:https://cgit.FreeBSD.org/[https://cgit.FreeBSD.org/]. === For Developers For information about write access to repositories see the extref:{committers-guide}[Committer's Guide, git-mini-primer]. [[external-mirrors]] === External mirrors Those mirrors are not hosted in FreeBSD.org but still maintained by the project members. Users and developers are welcome to pull or browse repositories on those mirrors. Pull requests for the `doc` and `src` GitHub repositories are being accepted; otherwise, the project workflow with those mirrors is still under discussion. Codeberg:: - doc: https://codeberg.org/FreeBSD/freebsd-doc - ports: https://codeberg.org/FreeBSD/freebsd-ports - src: https://codeberg.org/FreeBSD/freebsd-src GitHub:: - doc: https://github.com/freebsd/freebsd-doc - ports: https://github.com/freebsd/freebsd-ports - src: https://github.com/freebsd/freebsd-src GitLab:: - doc: https://gitlab.com/FreeBSD/freebsd-doc - ports: https://gitlab.com/FreeBSD/freebsd-ports - src: https://gitlab.com/FreeBSD/freebsd-src === Mailing lists The main mailing list for general usage and questions about git in the FreeBSD project is https://lists.freebsd.org/subscription/freebsd-git[freebsd-git]. For more details, including commit messages lists, see the crossref:handbook/eresources[eresources-mail, Mailing Lists] chapter. === SSH host keys * gitrepo.FreeBSD.org host key fingerprints: ** ECDSA key fingerprint is `SHA256:seWO5D27ySURcx4bknTNKlC1mgai0whP443PAKEvvZA` ** ED25519 key fingerprint is `SHA256:lNR6i4BEOaaUhmDHBA1WJsO7H3KtvjE2r5q4sOxtIWo` ** RSA key fingerprint is `SHA256:f453CUEFXEJAXlKeEHV+ajJfeEfx9MdKQUD7lIscnQI` * git.FreeBSD.org host key fingerprints: ** ECDSA key fingerprint is `SHA256:/UlirUAsGiitupxmtsn7f9b7zCWd0vCs4Yo/tpVWP9w` ** ED25519 key fingerprint is `SHA256:y1ljKrKMD3lDObRUG3xJ9gXwEIuqnh306tSyFd1tuZE` ** RSA key fingerprint is `SHA256:jBe6FQGoH4HjvrIVM23dcnLZk9kmpdezR/CvQzm7rJM` These are also published as SSHFP records in DNS. [[mirrors-disc]] == Disc Copies FreeBSD disc copies are available from several online retailers: * FreeBSD Mall, Inc. + 1164 Claremont Dr + Brentwood, CA + 94513 + USA + Phone: +1 925 240-6652 + Fax: +1 925 674-0821 + Email: info@freebsdmall.com + Website: https://www.freebsdmall.com * Getlinux + Website: https://www.getlinux.fr/ * Dr. Hinner EDV + Schäftlarnstr. 10 // 4. Stock + D-81371 München + Germany + Phone: +49 171 417 544 6 + Email: infow@hinner.de + Website: http://www.hinner.de/linux/freebsd.html diff --git a/website/content/en/where.adoc b/website/content/en/where.adoc index 1e9e3f59a3..735e094e2d 100644 --- a/website/content/en/where.adoc +++ b/website/content/en/where.adoc @@ -1,295 +1,304 @@ --- title: "Get FreeBSD" sidenav: download --- :url-rel: https://download.FreeBSD.org/releases :url-snapshot: https://download.freebsd.org/snapshots include::shared/releases.adoc[] include::shared/en/urls.adoc[] = Get FreeBSD For general information about past, present and future releases, see link:../releases/[Release Information]. [[choose-version]] [[choose-arch]] == Choosing an Architecture Most users of FreeBSD will have hardware for **amd64** or **aarch64**. These architectures are well-supported. Most modern PCs, including those with Intel(R) processors, use **amd64**. Embedded devices and single-board computers (SBCs) such as the Raspberry Pi 3 and 4, ESPRESSObin, as well as many Allwinner and Rockchip boards, use **aarch64**. For all other architectures, please see the link:../platforms/#_supported_platforms[table of supported platforms]. [[choose-image]] == Choosing an Image For the FreeBSD installer: formats include DVD (disc1, dvd1), and network install (bootonly) sized ISO, plus regular and mini USB memory sticks. For virtual machines: virtual disk images have FreeBSD preinstalled. For embedded platforms: SD card images are available. [[download]] == Production Quality `RELEASE` versions of FreeBSD are the end result of _release engineering_ and are recommended for most users. [[download-rel143]] === FreeBSD {rel143-current}-RELEASE [.tblbasic] [.tblDownload] [width="100%",cols="25%,25%,25%,25%",options="header",] |=== |Installer |VM |SD Card |Documentation a| * link:{url-rel}/amd64/amd64/ISO-IMAGES/{rel143-current}/[amd64] * link:{url-rel}/i386/i386/ISO-IMAGES/{rel143-current}/[i386] * link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel143-current}/[aarch64] * link:{url-rel}/arm/armv7/ISO-IMAGES/{rel143-current}/[armv7] * link:{url-rel}/powerpc/powerpc/ISO-IMAGES/{rel143-current}/[powerpc] * link:{url-rel}/powerpc/powerpc64/ISO-IMAGES/{rel143-current}/[powerpc64] * link:{url-rel}/powerpc/powerpc64le/ISO-IMAGES/{rel143-current}/[powerpc64le] * link:{url-rel}/powerpc/powerpcspe/ISO-IMAGES/{rel143-current}/[powerpcspe] * link:{url-rel}/riscv/riscv64/ISO-IMAGES/{rel143-current}/[riscv64] a| * link:{url-rel}/VM-IMAGES/README.txt[README] * link:{url-rel}/VM-IMAGES/{rel143-current}-RELEASE/amd64/Latest/[amd64] * link:{url-rel}/VM-IMAGES/{rel143-current}-RELEASE/i386/Latest/[i386] * link:{url-rel}/VM-IMAGES/{rel143-current}-RELEASE/aarch64/Latest/[aarch64] * link:{url-rel}/VM-IMAGES/{rel143-current}-RELEASE/riscv64/Latest/[riscv64] * link:{url-rel}/CI-IMAGES/{rel143-current}-RELEASE/amd64/Latest/[amd64] (BASIC-CI) * link:{url-rel}/CI-IMAGES/{rel143-current}-RELEASE/aarch64/Latest/[aarch64] (BASIC-CI) a| * aarch64 * {blank} ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel143-current}/[PINE64] ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel143-current}/[PINE64-LTS] ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel143-current}/[ROCK64] ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel143-current}/[ROCKPRO64] ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel143-current}/[RPI] (3/4) * armv7 * {blank} ** link:{url-rel}/arm/armv7/ISO-IMAGES/{rel143-current}/[GENERICSD] * riscv64 * {blank} ** link:{url-rel}/riscv/riscv64/ISO-IMAGES/{rel143-current}/[GENERICSD] a| * {blank} * link:../releases/#current[Released]: {rel143-current-date} * link:{u-rel143-notes}[Release Notes] * link:{u-rel143-readme}[Readme] * link:{u-rel143-hardware}[Hardware Compatibility List] * link:{u-rel143-installation}[Installation Instructions] * link:{u-rel143-errata}[Errata] * link:{u-rel143-signatures}[Signed Checksums] |=== == Production Quality (legacy) Some FreeBSD `RELEASEs` are supported but are older or built from older `STABLE` branches; these are considered "legacy" and are probably only of interest to people maintaining existing systems on FreeBSD. [[download-rel142]] === FreeBSD {rel142-current}-RELEASE [.tblbasic] [.tblDownload] [width="100%",cols="25%,25%,25%,25%",options="header",] |=== |Installer |VM |SD Card |Documentation a| * link:{url-rel}/amd64/amd64/ISO-IMAGES/{rel142-current}/[amd64] * link:{url-rel}/i386/i386/ISO-IMAGES/{rel142-current}/[i386] * link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel142-current}/[aarch64] * link:{url-rel}/arm/armv7/ISO-IMAGES/{rel142-current}/[armv7] * link:{url-rel}/powerpc/powerpc/ISO-IMAGES/{rel142-current}/[powerpc] * link:{url-rel}/powerpc/powerpc64/ISO-IMAGES/{rel142-current}/[powerpc64] * link:{url-rel}/powerpc/powerpc64le/ISO-IMAGES/{rel142-current}/[powerpc64le] * link:{url-rel}/powerpc/powerpcspe/ISO-IMAGES/{rel142-current}/[powerpcspe] * link:{url-rel}/riscv/riscv64/ISO-IMAGES/{rel142-current}/[riscv64] a| * link:{url-rel}/VM-IMAGES/README.txt[README] * link:{url-rel}/VM-IMAGES/{rel142-current}-RELEASE/amd64/Latest/[amd64] * link:{url-rel}/VM-IMAGES/{rel142-current}-RELEASE/i386/Latest/[i386] * link:{url-rel}/VM-IMAGES/{rel142-current}-RELEASE/aarch64/Latest/[aarch64] * link:{url-rel}/VM-IMAGES/{rel142-current}-RELEASE/riscv64/Latest/[riscv64] * link:{url-rel}/CI-IMAGES/{rel142-current}-RELEASE/amd64/Latest/[amd64] (BASIC-CI) * link:{url-rel}/CI-IMAGES/{rel142-current}-RELEASE/aarch64/Latest/[aarch64] (BASIC-CI) a| * aarch64 * {blank} ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel142-current}/[PINE64] ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel142-current}/[PINE64-LTS] ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel142-current}/[ROCK64] ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel142-current}/[ROCKPRO64] ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel142-current}/[RPI] (3/4) * armv7 * {blank} ** link:{url-rel}/arm/armv7/ISO-IMAGES/{rel142-current}/[GENERICSD] * riscv64 * {blank} ** link:{url-rel}/riscv/riscv64/ISO-IMAGES/{rel142-current}/[GENERICSD] a| * {blank} * link:../releases/#current[Released]: {rel142-current-date} * link:{u-rel142-notes}[Release Notes] * link:{u-rel142-readme}[Readme] * link:{u-rel142-hardware}[Hardware Compatibility List] * link:{u-rel142-installation}[Installation Instructions] * link:{u-rel142-errata}[Errata] * link:{u-rel142-signatures}[Signed Checksums] |=== [[download-rel135]] === FreeBSD {rel135-current}-RELEASE [.tblbasic] [.tblDownload] [width="100%",cols="25%,25%,25%,25%",options="header",] |=== |Installer |VM |SD Card |Documentation a| * link:{url-rel}/amd64/amd64/ISO-IMAGES/{rel135-current}/[amd64] * link:{url-rel}/i386/i386/ISO-IMAGES/{rel135-current}/[i386] * link:{url-rel}/powerpc/powerpc/ISO-IMAGES/{rel135-current}/[powerpc] * link:{url-rel}/powerpc/powerpc64/ISO-IMAGES/{rel135-current}/[powerpc64] * link:{url-rel}/powerpc/powerpc64le/ISO-IMAGES/{rel135-current}/[powerpc64le] * link:{url-rel}/powerpc/powerpcspe/ISO-IMAGES/{rel135-current}/[powerpcspe] * link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel135-current}/[aarch64] * link:{url-rel}/riscv/riscv64/ISO-IMAGES/{rel135-current}/[riscv64] a| * link:{url-rel}/VM-IMAGES/README.txt[README] * link:{url-rel}/VM-IMAGES/{rel135-current}-RELEASE/amd64/Latest/[amd64] * link:{url-rel}/VM-IMAGES/{rel135-current}-RELEASE/i386/Latest/[i386] * link:{url-rel}/VM-IMAGES/{rel135-current}-RELEASE/aarch64/Latest/[aarch64] * link:{url-rel}/VM-IMAGES/{rel135-current}-RELEASE/riscv64/Latest/[riscv64] * link:{url-rel}/CI-IMAGES/{rel135-current}-RELEASE/amd64/Latest/[amd64] (BASIC-CI) * link:{url-rel}/CI-IMAGES/{rel135-current}-RELEASE/aarch64/Latest/[aarch64] (BASIC-CI) a| * aarch64 * {blank} ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel135-current}/[PINE64] ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel135-current}/[PINE64-LTS] ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel135-current}/[PINEBOOK] ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel135-current}/[ROCK64] ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel135-current}/[ROCKPRO64] ** link:{url-rel}/arm64/aarch64/ISO-IMAGES/{rel135-current}/[RPI] (3/4) * armv6/armv7 * {blank} ** link:{url-rel}/arm/armv7/ISO-IMAGES/{rel135-current}/[GENERICSD] ** link:{url-rel}/arm/armv6/ISO-IMAGES/{rel135-current}/[RPI-B] * riscv64 * {blank} ** link:{url-rel}/riscv/riscv64/ISO-IMAGES/{rel135-current}/[GENERICSD] a| * link:../releases/#current[Released]: {rel135-current-date} * link:{u-rel135-notes}[Release Notes] * link:{u-rel135-readme}[Readme] * link:{u-rel135-hardware}[Hardware Compatibility List] * link:{u-rel135-installation}[Installation Instructions] * link:{u-rel135-errata}[Errata] * link:{u-rel135-signatures}[Signed Checksums] |=== [[helptest]] == Development and Testing Pre-`RELEASE` versions of FreeBSD, not intended for use in production environments: * `CURRENT` – the main branch, the core of development * `STABLE` – branched from `CURRENT`, long-term preparations for release engineering * release engineering – `ALPHA`, `BETA`, release candidates (`RC`) – branched from `STABLE`. Uppercase has special meaning. For example: * a first _beta release_ is not a (production) `RELEASE`. The word `CURRENT` is sometimes a source of confusion: * if you are looking for the _current version_ of FreeBSD, you most likely want a `RELEASE` version (see above) – **not** `CURRENT` – `CURRENT` has special meaning in the development process. [[download-snapshots]] === Development Snapshots See link:../snapshots/[FreeBSD Snapshot Releases]. === FreeBSD {rel-head}-CURRENT Installer and SD card images are available for link:{url-snapshot}/amd64/amd64/ISO-IMAGES/{rel-head}/[amd64], link:{url-snapshot}/i386/i386/ISO-IMAGES/{rel-head}/[i386], link:{url-snapshot}/powerpc/powerpc/ISO-IMAGES/{rel-head}/[powerpc], link:{url-snapshot}/powerpc/powerpc64/ISO-IMAGES/{rel-head}/[powerpc64], link:{url-snapshot}/powerpc/powerpc64le/ISO-IMAGES/{rel-head}/[powerpc64le], link:{url-snapshot}/powerpc/powerpcspe/ISO-IMAGES/{rel-head}/[powerpcspe], link:{url-snapshot}/arm/armv7/ISO-IMAGES/{rel-head}/[armv7], link:{url-snapshot}/arm64/aarch64/ISO-IMAGES/{rel-head}/[aarch64], and link:{url-snapshot}/riscv/riscv64/ISO-IMAGES/{rel-head}/[riscv64]. VM images are available for link:{url-snapshot}/VM-IMAGES/{rel-head}-CURRENT/amd64/Latest/[amd64], link:{url-snapshot}/VM-IMAGES/{rel-head}-CURRENT/i386/Latest/[i386], link:{url-snapshot}/VM-IMAGES/{rel-head}-CURRENT/aarch64/Latest/[aarch64], and link:{url-snapshot}/VM-IMAGES/{rel-head}-CURRENT/riscv64/Latest/[riscv64]. === FreeBSD {rel143-current}-STABLE Installer and SD card images are available for link:{url-snapshot}/amd64/amd64/ISO-IMAGES/{rel143-current}/[amd64], link:{url-snapshot}/i386/i386/ISO-IMAGES/{rel143-current}/[i386], link:{url-snapshot}/powerpc/powerpc/ISO-IMAGES/{rel143-current}/[powerpc], link:{url-snapshot}/powerpc/powerpc64/ISO-IMAGES/{rel143-current}/[powerpc64], link:{url-snapshot}/powerpc/powerpc64le/ISO-IMAGES/{rel143-current}/[powerpc64le], link:{url-snapshot}/powerpc/powerpcspe/ISO-IMAGES/{rel143-current}/[powerpcspe], link:{url-snapshot}/arm/armv7/ISO-IMAGES/{rel143-current}/[armv7], link:{url-snapshot}/arm64/aarch64/ISO-IMAGES/{rel143-current}/[aarch64], and link:{url-snapshot}/riscv/riscv64/ISO-IMAGES/{rel143-current}/[riscv64]. VM images are available for link:{url-snapshot}/VM-IMAGES/{rel143-current}-STABLE/amd64/Latest/[amd64], link:{url-snapshot}/VM-IMAGES/{rel143-current}-STABLE/i386/Latest/[i386], link:{url-snapshot}/VM-IMAGES/{rel143-current}-STABLE/aarch64/Latest/[aarch64], and link:{url-snapshot}/VM-IMAGES/{rel143-current}-STABLE/riscv64/Latest/[riscv64]. === FreeBSD {rel135-current}-STABLE Installer and SD card images are available for link:{url-snapshot}/amd64/amd64/ISO-IMAGES/{rel135-current}/[amd64], link:{url-snapshot}/i386/i386/ISO-IMAGES/{rel135-current}/[i386], link:{url-snapshot}/powerpc/powerpc/ISO-IMAGES/{rel135-current}/[powerpc], link:{url-snapshot}/powerpc/powerpc64/ISO-IMAGES/{rel135-current}/[powerpc64], link:{url-snapshot}/powerpc/powerpc64le/ISO-IMAGES/{rel135-current}/[powerpc64le], link:{url-snapshot}/powerpc/powerpcspe/ISO-IMAGES/{rel135-current}/[powerpcspe], link:{url-snapshot}/arm/armv6/ISO-IMAGES/{rel135-current}/[armv6], link:{url-snapshot}/arm/armv7/ISO-IMAGES/{rel135-current}/[armv7], link:{url-snapshot}/arm64/aarch64/ISO-IMAGES/{rel135-current}/[aarch64], and link:{url-snapshot}/riscv/riscv64/ISO-IMAGES/{rel135-current}/[riscv64]. VM images are available for link:{url-snapshot}/VM-IMAGES/{rel135-current}-STABLE/amd64/Latest/[amd64], link:{url-snapshot}/VM-IMAGES/{rel135-current}-STABLE/i386/Latest/[i386], link:{url-snapshot}/VM-IMAGES/{rel135-current}-STABLE/aarch64/Latest/[aarch64], and link:{url-snapshot}/VM-IMAGES/{rel135-current}-STABLE/riscv64/Latest/[riscv64]. [[install]] == Installation Options include: * images * direct download (anonymous FTP, and HTTPS). Before downloading an entire distribution, please read the link:{handbook}bsdinstall/[installation guide]. If you plan to get FreeBSD via FTP or HTTPS, check the FreeBSD Handbook for link:{handbook}mirrors/#mirrors[suitable mirrors] for your region. [[distribution]] == Purchase FreeBSD Media FreeBSD can be acquired on DVD from https://www.freebsdmall.com/[FreeBSD Mall], and other link:{handbook}mirrors/#mirrors-disc[DVD publishers]. [[apps]] == Applications and Utility Software === The Ports Collection A diverse collection of utility and application software that has been _ported_ to FreeBSD. * link:../ports/[About FreeBSD Ports] * https://www.freshports.org/[FreshPorts - a more advanced web interface to the Collection] * link:{handbook}ports/[Installing Applications: Packages and Ports] in the FreeBSD Handbook * Browse the Collection: https://cgit.freebsd.org/ports/tree/[FreeBSD ports Git repository] | https://download.freebsd.org/ports/[web]. For information about how _you_ can contribute _your_ favorite piece of software to the Collection, have a look at _link:{porters-handbook}[The Porter's Handbook]_ and _link:{contributing}[Contributing to FreeBSD]_. [[derived]] == FreeBSD-derived Operating System Distributions FreeBSD is widely used as a building block for other commercial and open-source operating systems. The projects below are of particular interest. * https://www.truenas.com/[TrueNAS] is network attached storage (NAS) software that shares and protects data from modern-day threats like ransomware and malware. TrueNAS makes it easy for users and client devices to access shared data through virtually any sharing protocol. * https://www.ghostbsd.org[GhostBSD] is derived from FreeBSD, and uses the GTK environment to provide a beautiful look and a comfortable experience on a modern BSD platform offering a natural and native UNIX(R)-like work environment. * https://www.midnightbsd.org[MidnightBSD] was forked from FreeBSD 6.1 beta, and continues to use parts of more recent FreeBSD code bases. Developed with desktop users in mind, MidnightBSD includes everything that you would expect for your daily tasks: mail, web browsing, word processing, gaming, and much more. * https://www.nomadbsd.org[NomadBSD] is a persistent live system for USB flash drives, based on FreeBSD. Together with automatic hardware detection and setup, it is configured to be used as a desktop system that works out of the box, but can also be used for data recovery, for educational purposes, or to test FreeBSD hardware compatibility. * https://www.pfsense.org/[pfSense] is a FreeBSD-based customized distribution tailored for use as a firewall and router. [[past]] == Archives http://ftp-archive.FreeBSD.org/pub/FreeBSD-Archive/old-releases/[Past releases] of FreeBSD. + +[[fastly]] +== Fastly CDN + +The FreeBSD project gratefully acknowledges the support of https://www.fastly.com[Fastly], providing CDN acceleration, caching, and bandwidth to bring FreeBSD images and packages to our globally distributed community. + +image::../gifs/fastlyLogo-red-SVG.svg[Fastly Logo,120] + +See also the link:{handbook}mirrors[FreeBSD project mirrors]. diff --git a/website/static/gifs/fastlyLogo-red-SVG.svg b/website/static/gifs/fastlyLogo-red-SVG.svg new file mode 100644 index 0000000000..c372d52649 --- /dev/null +++ b/website/static/gifs/fastlyLogo-red-SVG.svg @@ -0,0 +1 @@ + \ No newline at end of file