mirror of
https://github.com/go-gitea/gitea
synced 2024-12-23 09:04:26 +00:00
0c3c041c88
Close #25037 Close #31037 This PR adds a Arch package registry usable with pacman. ![grafik](https://github.com/user-attachments/assets/81cdb0c2-02f9-4733-bee2-e48af6b45224) Rewrite of #25396 and #31037. You can follow [this tutorial](https://wiki.archlinux.org/title/Creating_packages) to build a package for testing. Docs PR: https://gitea.com/gitea/docs/pulls/111 Co-authored-by: [d1nch8g@ion.lc](mailto:d1nch8g@ion.lc) Co-authored-by: @ExplodingDragon --------- Co-authored-by: dancheg97 <dancheg97@fmnx.su> Co-authored-by: dragon <ExplodingFKL@gmail.com> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
39 lines
1006 B
Go
39 lines
1006 B
Go
// Copyright 2024 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package arch
|
|
|
|
import (
|
|
"context"
|
|
|
|
packages_model "code.gitea.io/gitea/models/packages"
|
|
arch_module "code.gitea.io/gitea/modules/packages/arch"
|
|
)
|
|
|
|
// GetRepositories gets all available repositories
|
|
func GetRepositories(ctx context.Context, ownerID int64) ([]string, error) {
|
|
return packages_model.GetDistinctPropertyValues(
|
|
ctx,
|
|
packages_model.TypeArch,
|
|
ownerID,
|
|
packages_model.PropertyTypeFile,
|
|
arch_module.PropertyRepository,
|
|
nil,
|
|
)
|
|
}
|
|
|
|
// GetArchitectures gets all available architectures for the given repository
|
|
func GetArchitectures(ctx context.Context, ownerID int64, repository string) ([]string, error) {
|
|
return packages_model.GetDistinctPropertyValues(
|
|
ctx,
|
|
packages_model.TypeArch,
|
|
ownerID,
|
|
packages_model.PropertyTypeFile,
|
|
arch_module.PropertyArchitecture,
|
|
&packages_model.DistinctPropertyDependency{
|
|
Name: arch_module.PropertyRepository,
|
|
Value: repository,
|
|
},
|
|
)
|
|
}
|