add caddy
add caddy-git
This commit is contained in:
parent
285e832bda
commit
6e40671010
1
repo/caddy-git/Caddyfile
Symbolic link
1
repo/caddy-git/Caddyfile
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
../caddy/Caddyfile
|
108
repo/caddy-git/PKGBUILD
Normal file
108
repo/caddy-git/PKGBUILD
Normal file
|
@ -0,0 +1,108 @@
|
||||||
|
# Base on https://github.com/archlinux/svntogit-packages/tree/packages/bash/trunk
|
||||||
|
# Contributor: Levente Polyak <anthraxx[at]archlinux[dot]org>
|
||||||
|
# Contributor: Christian Rebischke <chris.rebischke@archlinux.org>
|
||||||
|
# Contributor: Wei Congrui < crvv.mail at gmail dot com >
|
||||||
|
# Contributor: Carl George < arch at cgtx dot us >
|
||||||
|
# Contributor: Eric Engeström <eric at engestrom dot ch>
|
||||||
|
# Contributor: Andreas Linz <klingt.net at gmail dot com>
|
||||||
|
# Contributor: Akshay S Dinesh <asdofindia at gmail dot com>
|
||||||
|
|
||||||
|
pkgname=caddy-git
|
||||||
|
pkgver=2.7.0.beta.1
|
||||||
|
pkgrel=3
|
||||||
|
pkgdesc='Fast web server with automatic HTTPS'
|
||||||
|
url='https://caddyserver.com'
|
||||||
|
arch=('x86_64')
|
||||||
|
license=('Apache')
|
||||||
|
depends=('glibc')
|
||||||
|
makedepends=('go' 'git' 'gzip')
|
||||||
|
conflicts=('caddy')
|
||||||
|
provides=('caddy')
|
||||||
|
backup=('etc/caddy/Caddyfile')
|
||||||
|
source=(
|
||||||
|
caddy-git::"git+https://github.com/caddyserver/caddy.git"
|
||||||
|
caddy-dist::"git+https://github.com/caddyserver/dist.git"
|
||||||
|
forwardproxy::"git+https://github.com/klzgrad/forwardproxy.git"
|
||||||
|
main.go
|
||||||
|
caddy.sysusers
|
||||||
|
caddy.tmpfiles
|
||||||
|
Caddyfile
|
||||||
|
)
|
||||||
|
sha512sums=(
|
||||||
|
'SKIP'
|
||||||
|
'SKIP'
|
||||||
|
'SKIP'
|
||||||
|
'aa9fefd87c87e3a120af66fcd745448831b99baab9b795a35544a752147422920d200e4c0ea9d0ceb0880f80e01c351522209fbcfce0d5b7d7cac940565755a3'
|
||||||
|
'c893d88fec89e37da6596030c8dce7103e7e575371e8542a24d2a0741e877358d85219f2d8ade9d6aa0f515efe1156a4badd9fef5f65f553a5b0c72330c4728f'
|
||||||
|
'55ee8d3f8b14f9adddc7a1026addcea4f85b4bae4cd512fd4da2a5e8adaae4b6fd0f486d2e3847f75518f4710a897b4fca84e48ee15700b968bad762125c4742'
|
||||||
|
'716da3f4edeb3561243aeaf5c32b01ff7a4ac810b6deba8364fb12a1f71b6a5278c34a97b289bcfdc48784679b942bf780f1f36d416a575791168c94b0d59fe0'
|
||||||
|
)
|
||||||
|
|
||||||
|
pkgver() {
|
||||||
|
cd "${pkgname}-git"
|
||||||
|
git describe --tags --long | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-\([^-]*\)-\([^-]*\)$/.\1.\2/;s/-//'
|
||||||
|
}
|
||||||
|
|
||||||
|
prepare() {
|
||||||
|
pushd "${pkgname}-git"
|
||||||
|
_gitcommit=$(git rev-parse HEAD)
|
||||||
|
popd
|
||||||
|
|
||||||
|
mkdir ${pkgname}
|
||||||
|
cd ${pkgname}
|
||||||
|
cp ../main.go .
|
||||||
|
go mod init caddy
|
||||||
|
sed -i -e '$a replace github.com/caddyserver/forwardproxy => ../forwardproxy' go.mod
|
||||||
|
go get github.com/caddyserver/caddy/v2@${_gitcommit}
|
||||||
|
go mod tidy
|
||||||
|
|
||||||
|
# welcome page
|
||||||
|
cp ../caddy-dist/welcome/index.html .
|
||||||
|
sed 's|/var/www/html|/srv/http|g' -i index.html
|
||||||
|
}
|
||||||
|
|
||||||
|
build() {
|
||||||
|
cd ${pkgname}
|
||||||
|
export CGO_LDFLAGS="${LDFLAGS}"
|
||||||
|
export CGO_CPPFLAGS="${CPPFLAGS}"
|
||||||
|
export CGO_CFLAGS="${CFLAGS}"
|
||||||
|
export CGO_CXXFLAGS="${CXXFLAGS}"
|
||||||
|
export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw"
|
||||||
|
go build .
|
||||||
|
|
||||||
|
for i in zsh bash fish; do
|
||||||
|
./caddy completion $i >caddy.$i
|
||||||
|
done
|
||||||
|
|
||||||
|
./caddy manpage --directory manpages
|
||||||
|
gzip manpages/*
|
||||||
|
}
|
||||||
|
|
||||||
|
check() {
|
||||||
|
cd "${pkgname}"
|
||||||
|
./caddy version
|
||||||
|
./caddy build-info
|
||||||
|
./caddy list-modules
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
cd "${pkgname}"
|
||||||
|
install -Dm 755 caddy -t "${pkgdir}/usr/bin"
|
||||||
|
|
||||||
|
install -Dm 644 "${srcdir}/caddy-dist/init/caddy.service" "${srcdir}/caddy-dist/init/caddy-api.service" -t "${pkgdir}/usr/lib/systemd/system"
|
||||||
|
install -Dm 644 "${srcdir}/caddy.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/caddy.conf"
|
||||||
|
install -Dm 644 "${srcdir}/caddy.sysusers" "${pkgdir}/usr/lib/sysusers.d/caddy.conf"
|
||||||
|
|
||||||
|
install -Dm 644 "${srcdir}/Caddyfile" -t "${pkgdir}/etc/caddy"
|
||||||
|
install -d "${pkgdir}/etc/caddy/conf.d"
|
||||||
|
|
||||||
|
install -Dm 644 index.html "${pkgdir}/usr/share/caddy/index.html"
|
||||||
|
|
||||||
|
install -Dm 644 caddy.zsh "${pkgdir}/usr/share/zsh/site-functions/_caddy"
|
||||||
|
install -Dm 644 caddy.bash "${pkgdir}/usr/share/bash-completion/completions/caddy"
|
||||||
|
install -Dm 644 caddy.fish -t "${pkgdir}/usr/share/fish/vendor_completions.d"
|
||||||
|
|
||||||
|
install -Dm 644 manpages/* -t "${pkgdir}/usr/share/man/man8"
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: ts=2 sw=2 et:
|
1
repo/caddy-git/caddy.sysusers
Symbolic link
1
repo/caddy-git/caddy.sysusers
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
../caddy/caddy.sysusers
|
1
repo/caddy-git/caddy.tmpfiles
Symbolic link
1
repo/caddy-git/caddy.tmpfiles
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
../caddy/caddy.tmpfiles
|
14
repo/caddy-git/lilac.yaml
Normal file
14
repo/caddy-git/lilac.yaml
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
maintainers:
|
||||||
|
- github: yingziwu
|
||||||
|
email: i@bgme.me
|
||||||
|
|
||||||
|
build_prefix: extra-x86_64
|
||||||
|
|
||||||
|
pre_build: vcs_update
|
||||||
|
|
||||||
|
post_build: git_pkgbuild_commit
|
||||||
|
|
||||||
|
update_on:
|
||||||
|
- source: github
|
||||||
|
github: caddyserver/caddy
|
||||||
|
- source: vcs
|
1
repo/caddy-git/main.go
Symbolic link
1
repo/caddy-git/main.go
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
../caddy/main.go
|
40
repo/caddy/Caddyfile
Normal file
40
repo/caddy/Caddyfile
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
# The Caddyfile is an easy way to configure your Caddy web server.
|
||||||
|
#
|
||||||
|
# https://caddyserver.com/docs/caddyfile
|
||||||
|
#
|
||||||
|
# The configuration below serves a welcome page over HTTP on port 80.
|
||||||
|
# To use your own domain name (with automatic HTTPS), first make
|
||||||
|
# sure your domain's A/AAAA DNS records are properly pointed to
|
||||||
|
# this machine's public IP, then replace the line below with your
|
||||||
|
# domain name.
|
||||||
|
#
|
||||||
|
# https://caddyserver.com/docs/caddyfile/concepts#addresses
|
||||||
|
|
||||||
|
{
|
||||||
|
# Restrict the admin interface to a local unix file socket whose directory
|
||||||
|
# is restricted to caddy:caddy. By default the TCP socket allows arbitrary
|
||||||
|
# modification for any process and user that has access to the local
|
||||||
|
# interface. If admin over TCP is turned on one should make sure
|
||||||
|
# implications are well understood.
|
||||||
|
admin "unix//run/caddy/admin.socket"
|
||||||
|
}
|
||||||
|
|
||||||
|
http:// {
|
||||||
|
# Set this path to your site's directory.
|
||||||
|
root * /usr/share/caddy
|
||||||
|
|
||||||
|
# Enable the static file server.
|
||||||
|
file_server
|
||||||
|
|
||||||
|
# Another common task is to set up a reverse proxy:
|
||||||
|
# reverse_proxy localhost:8080
|
||||||
|
|
||||||
|
# Or serve a PHP site through php-fpm:
|
||||||
|
# php_fastcgi localhost:9000
|
||||||
|
|
||||||
|
# Refer to the directive documentation for more options.
|
||||||
|
# https://caddyserver.com/docs/caddyfile/directives
|
||||||
|
}
|
||||||
|
|
||||||
|
# Import additional caddy config files in /etc/caddy/conf.d/
|
||||||
|
import /etc/caddy/conf.d/*
|
106
repo/caddy/PKGBUILD
Normal file
106
repo/caddy/PKGBUILD
Normal file
|
@ -0,0 +1,106 @@
|
||||||
|
# Base on https://github.com/archlinux/svntogit-packages/tree/packages/bash/trunk
|
||||||
|
# Contributor: Levente Polyak <anthraxx[at]archlinux[dot]org>
|
||||||
|
# Contributor: Christian Rebischke <chris.rebischke@archlinux.org>
|
||||||
|
# Contributor: Wei Congrui < crvv.mail at gmail dot com >
|
||||||
|
# Contributor: Carl George < arch at cgtx dot us >
|
||||||
|
# Contributor: Eric Engeström <eric at engestrom dot ch>
|
||||||
|
# Contributor: Andreas Linz <klingt.net at gmail dot com>
|
||||||
|
# Contributor: Akshay S Dinesh <asdofindia at gmail dot com>
|
||||||
|
|
||||||
|
pkgname=caddy
|
||||||
|
pkgver=2.7.0.beta.1
|
||||||
|
_gitcommit=v2.7.0-beta.1
|
||||||
|
_distcommit=5ded5351fc9f6f35286e38c4552fc2d8b37f4df3
|
||||||
|
pkgrel=3
|
||||||
|
pkgdesc='Fast web server with automatic HTTPS'
|
||||||
|
url='https://caddyserver.com'
|
||||||
|
arch=('x86_64')
|
||||||
|
license=('Apache')
|
||||||
|
depends=('glibc')
|
||||||
|
makedepends=('go' 'git' 'gzip')
|
||||||
|
conflicts=('caddy-git')
|
||||||
|
provides=('caddy')
|
||||||
|
backup=('etc/caddy/Caddyfile')
|
||||||
|
source=(
|
||||||
|
caddy-git::"git+https://github.com/caddyserver/caddy#tag=${_gitcommit}"
|
||||||
|
caddy-dist::"git+https://github.com/caddyserver/dist#commit=${_distcommit}"
|
||||||
|
forwardproxy::"git+https://github.com/klzgrad/forwardproxy.git"
|
||||||
|
main.go
|
||||||
|
caddy.sysusers
|
||||||
|
caddy.tmpfiles
|
||||||
|
Caddyfile
|
||||||
|
)
|
||||||
|
sha512sums=(
|
||||||
|
'SKIP'
|
||||||
|
'SKIP'
|
||||||
|
'SKIP'
|
||||||
|
'aa9fefd87c87e3a120af66fcd745448831b99baab9b795a35544a752147422920d200e4c0ea9d0ceb0880f80e01c351522209fbcfce0d5b7d7cac940565755a3'
|
||||||
|
'c893d88fec89e37da6596030c8dce7103e7e575371e8542a24d2a0741e877358d85219f2d8ade9d6aa0f515efe1156a4badd9fef5f65f553a5b0c72330c4728f'
|
||||||
|
'55ee8d3f8b14f9adddc7a1026addcea4f85b4bae4cd512fd4da2a5e8adaae4b6fd0f486d2e3847f75518f4710a897b4fca84e48ee15700b968bad762125c4742'
|
||||||
|
'716da3f4edeb3561243aeaf5c32b01ff7a4ac810b6deba8364fb12a1f71b6a5278c34a97b289bcfdc48784679b942bf780f1f36d416a575791168c94b0d59fe0'
|
||||||
|
)
|
||||||
|
|
||||||
|
pkgver() {
|
||||||
|
cd "${pkgname}-git"
|
||||||
|
git describe --tags --match 'v*' | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g'
|
||||||
|
}
|
||||||
|
|
||||||
|
prepare() {
|
||||||
|
mkdir ${pkgname}
|
||||||
|
cd ${pkgname}
|
||||||
|
cp ../main.go .
|
||||||
|
go mod init caddy
|
||||||
|
sed -i -e '$a replace github.com/caddyserver/forwardproxy => ../forwardproxy' go.mod
|
||||||
|
go get github.com/caddyserver/caddy/v2@${_gitcommit}
|
||||||
|
go mod tidy
|
||||||
|
|
||||||
|
# welcome page
|
||||||
|
cp ../caddy-dist/welcome/index.html .
|
||||||
|
sed 's|/var/www/html|/srv/http|g' -i index.html
|
||||||
|
}
|
||||||
|
|
||||||
|
build() {
|
||||||
|
cd ${pkgname}
|
||||||
|
export CGO_LDFLAGS="${LDFLAGS}"
|
||||||
|
export CGO_CPPFLAGS="${CPPFLAGS}"
|
||||||
|
export CGO_CFLAGS="${CFLAGS}"
|
||||||
|
export CGO_CXXFLAGS="${CXXFLAGS}"
|
||||||
|
export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw"
|
||||||
|
go build .
|
||||||
|
|
||||||
|
for i in zsh bash fish; do
|
||||||
|
./caddy completion $i >caddy.$i
|
||||||
|
done
|
||||||
|
|
||||||
|
./caddy manpage --directory manpages
|
||||||
|
gzip manpages/*
|
||||||
|
}
|
||||||
|
|
||||||
|
check() {
|
||||||
|
cd "${pkgname}"
|
||||||
|
./caddy version
|
||||||
|
./caddy build-info
|
||||||
|
./caddy list-modules
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
cd "${pkgname}"
|
||||||
|
install -Dm 755 caddy -t "${pkgdir}/usr/bin"
|
||||||
|
|
||||||
|
install -Dm 644 "${srcdir}/caddy-dist/init/caddy.service" "${srcdir}/caddy-dist/init/caddy-api.service" -t "${pkgdir}/usr/lib/systemd/system"
|
||||||
|
install -Dm 644 "${srcdir}/caddy.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/caddy.conf"
|
||||||
|
install -Dm 644 "${srcdir}/caddy.sysusers" "${pkgdir}/usr/lib/sysusers.d/caddy.conf"
|
||||||
|
|
||||||
|
install -Dm 644 "${srcdir}/Caddyfile" -t "${pkgdir}/etc/caddy"
|
||||||
|
install -d "${pkgdir}/etc/caddy/conf.d"
|
||||||
|
|
||||||
|
install -Dm 644 index.html "${pkgdir}/usr/share/caddy/index.html"
|
||||||
|
|
||||||
|
install -Dm 644 caddy.zsh "${pkgdir}/usr/share/zsh/site-functions/_caddy"
|
||||||
|
install -Dm 644 caddy.bash "${pkgdir}/usr/share/bash-completion/completions/caddy"
|
||||||
|
install -Dm 644 caddy.fish -t "${pkgdir}/usr/share/fish/vendor_completions.d"
|
||||||
|
|
||||||
|
install -Dm 644 manpages/* -t "${pkgdir}/usr/share/man/man8"
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: ts=2 sw=2 et:
|
1
repo/caddy/caddy.sysusers
Normal file
1
repo/caddy/caddy.sysusers
Normal file
|
@ -0,0 +1 @@
|
||||||
|
u caddy - "caddy daemon" /var/lib/caddy
|
3
repo/caddy/caddy.tmpfiles
Normal file
3
repo/caddy/caddy.tmpfiles
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
d /var/lib/caddy 0750 caddy caddy
|
||||||
|
d /var/log/caddy 0750 caddy caddy
|
||||||
|
d /run/caddy 0750 caddy caddy
|
12
repo/caddy/lilac.yaml
Normal file
12
repo/caddy/lilac.yaml
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
maintainers:
|
||||||
|
- github: yingziwu
|
||||||
|
email: i@bgme.me
|
||||||
|
|
||||||
|
build_prefix: extra-x86_64
|
||||||
|
|
||||||
|
pre_build: vcs_update
|
||||||
|
|
||||||
|
post_build: git_pkgbuild_commit
|
||||||
|
|
||||||
|
update_on:
|
||||||
|
- source: vcs
|
52
repo/caddy/main.go
Normal file
52
repo/caddy/main.go
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
// Copyright 2015 Matthew Holt and The Caddy Authors
|
||||||
|
//
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
|
// Package main is the entry point of the Caddy application.
|
||||||
|
// Most of Caddy's functionality is provided through modules,
|
||||||
|
// which can be plugged in by adding their import below.
|
||||||
|
//
|
||||||
|
// There is no need to modify the Caddy source code to customize your
|
||||||
|
// builds. You can easily build a custom Caddy with these simple steps:
|
||||||
|
//
|
||||||
|
// 1. Copy this file (main.go) into a new folder
|
||||||
|
// 2. Edit the imports below to include the modules you want plugged in
|
||||||
|
// 3. Run `go mod init caddy`
|
||||||
|
// 4. Run `go install` or `go build` - you now have a custom binary!
|
||||||
|
//
|
||||||
|
// Or you can use xcaddy which does it all for you as a command:
|
||||||
|
// https://github.com/caddyserver/xcaddy
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
caddycmd "github.com/caddyserver/caddy/v2/cmd"
|
||||||
|
|
||||||
|
// plug in Caddy modules here
|
||||||
|
_ "github.com/caddyserver/caddy/v2/modules/standard"
|
||||||
|
|
||||||
|
_ "github.com/caddyserver/forwardproxy"
|
||||||
|
|
||||||
|
_ "github.com/mholt/caddy-ratelimit"
|
||||||
|
_ "github.com/caddyserver/replace-response"
|
||||||
|
_ "github.com/silinternational/certmagic-storage-dynamodb/v3"
|
||||||
|
_ "github.com/abiosoft/caddy-json-schema"
|
||||||
|
_ "github.com/fvbommel/caddy-combine-ip-ranges"
|
||||||
|
_ "github.com/fvbommel/caddy-dns-ip-range"
|
||||||
|
_ "github.com/WeidiDeng/caddy-cloudflare-ip"
|
||||||
|
_ "github.com/zhangjiayin/caddy-geoip2"
|
||||||
|
_ "github.com/corazawaf/coraza-caddy"
|
||||||
|
)
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
caddycmd.Main()
|
||||||
|
}
|
Loading…
Reference in a new issue