0
0
Fork 0
mirror of https://codeberg.org/forgejo/docs.git synced 2024-12-24 22:32:43 -05:00
forgejo-docs/docs/user/packages/index.md
2023-08-15 00:19:15 +01:00

93 lines
4.3 KiB
Markdown

---
title: 'Package Registry'
---
## Supported package managers
The following package managers are currently supported:
| Name | Language | Package client |
| ------------------------- | ---------- | -------------------------- |
| [Alpine](./alpine/) | - | `apk` |
| [Cargo](./cargo/) | Rust | `cargo` |
| [Chef](./chef/) | - | `knife` |
| [Composer](./composer/) | PHP | `composer` |
| [Conan](./conan/) | C++ | `conan` |
| [Conda](./conda/) | - | `conda` |
| [Container](./container/) | - | any OCI compliant client |
| [CRAN](./cran/) | R | |
| [Debian](./debian/) | - | `apt` |
| [Generic](./generic/) | - | any HTTP client |
| [Go](./go/) | Go | `go` |
| [Helm](./helm/) | - | any HTTP client, `cm-push` |
| [Maven](./maven/) | Java | `mvn`, `gradle` |
| [npm](./npm/) | JavaScript | `npm`, `yarn`, `pnpm` |
| [NuGet](./nuget/) | .NET | `nuget` |
| [Pub](./pub/) | Dart | `dart`, `flutter` |
| [PyPI](./pypi/) | Python | `pip`, `twine` |
| [RPM](./rpm/) | - | `yum`, `dnf` |
| [RubyGems](./rubygems/) | Ruby | `gem`, `Bundler` |
| [Swift](./swift/) | Swift | `swift` |
| [Vagrant](./vagrant/) | - | `vagrant` |
**The following paragraphs only apply if Packages are not globally disabled!**
## Repository-Packages
A package always belongs to an owner (a user or organisation), not a repository.
To link an (already uploaded) package to a repository, open the settings page
on that package and choose a repository to link this package to.
The entire package will be linked, not just a single version.
Linking a package results in showing that package in the repository's package list,
and shows a link to the repository on the package site (as well as a link to the repository issues).
## Access Restrictions
| Package owner type | User | Organization |
| ------------------ | ----------------------------------------------------------- | -------------------------------------------------------- |
| **read** access | public, if user is public too; otherwise for this user only | public, if org is public, otherwise for org members only |
| **write** access | owner only | org members with admin or write access to the org |
N.B.: These access restrictions are subject to change, where more finegrained control will be added via a dedicated organization team permission.
## Create or upload a package
Depending on the type of package, use the respective package-manager for that. Check out the sub-page of a specific package manager for instructions.
## View packages
You can view the packages of a repository on the repository page.
1. Go to the repository.
1. Go to **Packages** in the navigation bar.
To view more details about a package, select the name of the package.
## Download a package
To download a package from your repository:
1. Go to **Packages** in the navigation bar.
1. Select the name of the package to view the details.
1. In the **Assets** section, select the name of the package file you want to download.
## Delete a package
You cannot edit a package after you have published it in the Package Registry. Instead, you
must delete and recreate it.
To delete a package from your repository:
1. Go to **Packages** in the navigation bar.
1. Select the name of the package to view the details.
1. Click **Delete package** to permanently delete the package.
## Disable the Package Registry
The Package Registry is automatically enabled. To disable it for a single repository:
1. Go to **Settings** in the navigation bar.
1. Disable **Enable Repository Packages Registry**.
Previously published packages are not deleted by disabling the Package Registry.