feat: add 'generate_go_deps' step (#4)
This commit is contained in:
parent
2b36e5c04a
commit
834d8d985e
9 changed files with 121 additions and 109 deletions
|
@ -52,6 +52,9 @@ dev-util/mise:
|
||||||
| Key | Description |
|
| Key | Description |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| `url` | The URL where the git repository lives. HTTPS is recommended. |
|
| `url` | The URL where the git repository lives. HTTPS is recommended. |
|
||||||
|
| `tags` | Denote if we should consider tags or commits as the version |
|
||||||
|
| `disable_semver` | Disables parsing/sorting versions based on semver |
|
||||||
|
| `consider_pre_releases` | Denotes if we should consider semver pre-releases or not |
|
||||||
|
|
||||||
### **apt** `options`
|
### **apt** `options`
|
||||||
|
|
||||||
|
@ -59,14 +62,18 @@ dev-util/mise:
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| `repository` | Sources list entry for the APT repository |
|
| `repository` | Sources list entry for the APT repository |
|
||||||
| `package` | The package name as it appears in the repository |
|
| `package` | The package name as it appears in the repository |
|
||||||
|
| `strip_release` | Strips semver release information from the calculated version |
|
||||||
|
|
||||||
### `steps`
|
### `steps`
|
||||||
|
|
||||||
| Key | Description |
|
| Key | Description |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| `command` | A command to be ran. |
|
| `command` | A command to be ran. |
|
||||||
| `original_ebuild` | Path to write an ebuild |
|
| `checkout` | Checkout the Git repository at the detected version |
|
||||||
| `ebuild` | Path to read modified ebuild from |
|
| `ebuild` | Path to read modified ebuild from |
|
||||||
|
| `generate_go_deps` | Generate a `deps.tar.xz` for the current Go project |
|
||||||
|
| `original_ebuild` | Path to write an ebuild |
|
||||||
|
| `upload_artifact` | Upload a built artifact to a predictable path for usage in `SRC_URI` |
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
|
|
38
.tools/internal/steps/embed/generate-go-deps.sh
Normal file
38
.tools/internal/steps/embed/generate-go-deps.sh
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
# Copyright (C) 2024 Jared Allard
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
MODE="${1:-"slim"}"
|
||||||
|
|
||||||
|
GO_VERSION=$(grep "^go" go.mod | awk '{ print $2 }' | awk -F '.' '{ print $1"."$2}')
|
||||||
|
mise use -g golang@"${GO_VERSION}"
|
||||||
|
|
||||||
|
# Create the dependency tar.
|
||||||
|
echo "Creating dependency tarball"
|
||||||
|
if [[ "$MODE" == "full" ]]; then
|
||||||
|
tarDir="go-mod"
|
||||||
|
GOMODCACHE="${PWD}"/go-mod go mod download -modcacherw
|
||||||
|
else
|
||||||
|
go mod vendor
|
||||||
|
tarDir="vendor"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Creating tarball (compressing with xz, this may take a while...)"
|
||||||
|
XZ_OPT=-e9T0 tar cJf deps.tar.xz "$tarDir"
|
||||||
|
ls -alh deps.tar.xz
|
||||||
|
|
||||||
|
echo "Changing Go version to ${GO_VERSION}"
|
||||||
|
sed -i 's|dev-lang\/go-.*|dev-lang\/go-'"${GO_VERSION}"'"|' new.ebuild
|
63
.tools/internal/steps/generate_go_deps.go
Normal file
63
.tools/internal/steps/generate_go_deps.go
Normal file
|
@ -0,0 +1,63 @@
|
||||||
|
// Copyright (C) 2024 Jared Allard
|
||||||
|
//
|
||||||
|
// This program is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU Affero General Public License as published by
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or
|
||||||
|
// (at your option) any later version.
|
||||||
|
//
|
||||||
|
// This program is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
// GNU Affero General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU Affero General Public License
|
||||||
|
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
package steps
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
_ "embed"
|
||||||
|
"fmt"
|
||||||
|
|
||||||
|
"github.com/jaredallard/overlay/.tools/internal/steps/stepshelpers"
|
||||||
|
)
|
||||||
|
|
||||||
|
//go:embed embed/generate-go-deps.sh
|
||||||
|
var generateGoDepsScript []byte
|
||||||
|
|
||||||
|
// GenerateGoDepsStep generates a go dependency archive in the container
|
||||||
|
// at deps.tar.xz.
|
||||||
|
type GenerateGoDepsStep struct {
|
||||||
|
mode string // "slim" or "full", defaults to "slim"
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewGenerateGoDepsStep creates a new GenerateGoDepsStep from the
|
||||||
|
// provided input.
|
||||||
|
func NewGenerateGoDepsStep(input any) (StepRunner, error) {
|
||||||
|
mode, ok := input.(string)
|
||||||
|
if !ok && input != nil {
|
||||||
|
return nil, fmt.Errorf("expected string, got %T", input)
|
||||||
|
}
|
||||||
|
|
||||||
|
if mode == "" {
|
||||||
|
mode = "slim"
|
||||||
|
}
|
||||||
|
|
||||||
|
return &GenerateGoDepsStep{mode}, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// Run runs the provided command inside of the step runner.
|
||||||
|
func (e GenerateGoDepsStep) Run(ctx context.Context, env Environment) (*StepOutput, error) {
|
||||||
|
if err := stepshelpers.CopyFileBytesToContainer(ctx, env.containerID, generateGoDepsScript, "/tmp/command.sh"); err != nil {
|
||||||
|
return nil, fmt.Errorf("failed to create shell script in container: %w", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
if err := stepshelpers.RunCommandInContainer(ctx, env.containerID,
|
||||||
|
"bash", "/tmp/command.sh", e.mode,
|
||||||
|
); err != nil {
|
||||||
|
return nil, fmt.Errorf("failed to generate manifest: %w", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
return &StepOutput{}, nil
|
||||||
|
}
|
|
@ -62,11 +62,12 @@ func (s *Steps) UnmarshalYAML(node *yaml.Node) error {
|
||||||
|
|
||||||
// knownSteps map of key values to their respective steps.
|
// knownSteps map of key values to their respective steps.
|
||||||
knownSteps := map[string]func(any) (StepRunner, error){
|
knownSteps := map[string]func(any) (StepRunner, error){
|
||||||
"command": NewCommandStep,
|
"command": NewCommandStep,
|
||||||
"checkout": NewCheckoutStep,
|
"checkout": NewCheckoutStep,
|
||||||
"ebuild": NewEbuildStep,
|
"ebuild": NewEbuildStep,
|
||||||
"original_ebuild": NewOriginalEbuildStep,
|
"generate_go_deps": NewGenerateGoDepsStep,
|
||||||
"upload_artifact": NewUploadArtifactStep,
|
"original_ebuild": NewOriginalEbuildStep,
|
||||||
|
"upload_artifact": NewUploadArtifactStep,
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, rawStep := range raw {
|
for _, rawStep := range raw {
|
||||||
|
|
|
@ -13,4 +13,4 @@ RUN export MAKEOPTS="-j$(nproc)" && \
|
||||||
# Install mise for things that might need it.
|
# Install mise for things that might need it.
|
||||||
RUN curl https://mise.run | sh
|
RUN curl https://mise.run | sh
|
||||||
ENV PATH="/root/.local/bin:/root/.local/share/mise/shims:${PATH}"
|
ENV PATH="/root/.local/bin:/root/.local/share/mise/shims:${PATH}"
|
||||||
RUN set -e; whoami; echo $HOME; mise --version
|
RUN set -e; whoami; echo "$HOME"; mise --version
|
|
@ -1,5 +1,3 @@
|
||||||
DIST tailscale-1.66.4-deps.tar.xz 395282764 BLAKE2B ce730c19a71ac4ea6528d5c71c8ef7271da9b2c668ea878e717d7d6e2e11d1fc371c50ab8bab68a6a841e8596f9f8a5a3eec1f94f17e7f21d1d6f2c475cca9e4 SHA512 8670dd91268f1254834a0c6ddd945015da7c21f5f2228366fafb667861f7670ac2523119e004e39d65eacce2dfef4518fb35cd93451eddbf5b062da619eca2a3
|
|
||||||
DIST tailscale-1.66.4.tar.gz 2636998 BLAKE2B 617cd97d7536faac53d46167fdf48acd430bc453cef6f5157df1c8f6bd98973c8b17c0687a7d931501979b70da3b1268fde77a3f9653b1143eb363d09b5e719f SHA512 6c114508964f86984cdbcd2f3e81c4939f4c5a0ed20363b4463642fc8ca235d5b220e46e5b55c655e435f20be24295391b0070db3a78d45210ac9c27f5e7bbab
|
|
||||||
DIST tailscale-1.68.0-deps.tar.xz 475022544 BLAKE2B 9bc68ff79c11457387c0f665eca9a74c0e7945f8d7a23a053cbafb91ccf2ae94bd13a1b9c9b26bcfafd52b250aecf6571b65c089d0a87c5e9af2dfa7d8327026 SHA512 c6814f4aaeb80aa3982b7fa893090026587a1d48beccdce2589cec55c1611f5e0c9394e52aaf70995621808cb0cbefd275e3b6050d24a9354c52b5bb8345a46d
|
DIST tailscale-1.68.0-deps.tar.xz 475022544 BLAKE2B 9bc68ff79c11457387c0f665eca9a74c0e7945f8d7a23a053cbafb91ccf2ae94bd13a1b9c9b26bcfafd52b250aecf6571b65c089d0a87c5e9af2dfa7d8327026 SHA512 c6814f4aaeb80aa3982b7fa893090026587a1d48beccdce2589cec55c1611f5e0c9394e52aaf70995621808cb0cbefd275e3b6050d24a9354c52b5bb8345a46d
|
||||||
DIST tailscale-1.68.0.tar.gz 2721807 BLAKE2B ffb6b4cc36473195587a8fc7a3142e1e7c73a5ccd50dc1fe8b26f3d0b69feb476e339a9bb66b2836823090c48a12b79e5bdbf54af96e4603464d70837ae0e7d0 SHA512 b63ee338e2a75d5be3b3c9c7446db178c66f326aea074bb1cdd18d7f1aa5fa720b0cafd5ff07a3665bb403d05d22c8f4cf0fa9638a5a87b08b6b617bd5795ee8
|
DIST tailscale-1.68.0.tar.gz 2721807 BLAKE2B ffb6b4cc36473195587a8fc7a3142e1e7c73a5ccd50dc1fe8b26f3d0b69feb476e339a9bb66b2836823090c48a12b79e5bdbf54af96e4603464d70837ae0e7d0 SHA512 b63ee338e2a75d5be3b3c9c7446db178c66f326aea074bb1cdd18d7f1aa5fa720b0cafd5ff07a3665bb403d05d22c8f4cf0fa9638a5a87b08b6b617bd5795ee8
|
||||||
DIST tailscale-1.68.1-deps.tar.xz 475973944 BLAKE2B 9cb7cf0e8d608eaec21dda674c37b3f52a9b31a41b9676fbfced24d3dbe51cbdec8af9accdb1a83d104a5f3e73e43903567168aa19467517d6445f27e0bd3b63 SHA512 849c81b39b563c88a69e2e74d7d7e57aa3c2f1b1bd50cb5801765c0c4a211116692224a0a925c7c89a905fbe5c90a28657259170e44c7166b55f543db2a6f243
|
DIST tailscale-1.68.1-deps.tar.xz 475973944 BLAKE2B 9cb7cf0e8d608eaec21dda674c37b3f52a9b31a41b9676fbfced24d3dbe51cbdec8af9accdb1a83d104a5f3e73e43903567168aa19467517d6445f27e0bd3b63 SHA512 849c81b39b563c88a69e2e74d7d7e57aa3c2f1b1bd50cb5801765c0c4a211116692224a0a925c7c89a905fbe5c90a28657259170e44c7166b55f543db2a6f243
|
||||||
|
|
|
@ -1,60 +0,0 @@
|
||||||
# Copyright 2020-2024 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
inherit go-module systemd tmpfiles
|
|
||||||
|
|
||||||
# These settings are obtained by running ./build_dist.sh shellvars in
|
|
||||||
# the upstream repo.
|
|
||||||
VERSION_MINOR="66"
|
|
||||||
VERSION_SHORT="1.66.4"
|
|
||||||
VERSION_LONG="1.66.4-te64efe4f7"
|
|
||||||
VERSION_GIT_HASH="e64efe4f777cb5b4d9efd603ad1360a509006cd1"
|
|
||||||
|
|
||||||
DESCRIPTION="Tailscale vpn client"
|
|
||||||
HOMEPAGE="https://tailscale.com"
|
|
||||||
SRC_URI="https://github.com/tailscale/tailscale/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
|
||||||
SRC_URI+=" https://gentoo.rgst.io/updater_artifacts/${CATEGORY}/${PN}/${PV}/deps.tar.xz -> ${P}-deps.tar.xz"
|
|
||||||
|
|
||||||
LICENSE="MIT"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="~amd64 ~arm arm64 ~riscv ~x86"
|
|
||||||
|
|
||||||
RDEPEND="net-firewall/iptables"
|
|
||||||
BDEPEND=">=dev-lang/go-1.22"
|
|
||||||
|
|
||||||
RESTRICT="test"
|
|
||||||
|
|
||||||
# This translates the build command from upstream's build_dist.sh to an
|
|
||||||
# ebuild equivalent.
|
|
||||||
build_dist() {
|
|
||||||
ego build -tags xversion -ldflags "
|
|
||||||
-X tailscale.com/version.Long=${VERSION_LONG}
|
|
||||||
-X tailscale.com/version.Short=${VERSION_SHORT}
|
|
||||||
-X tailscale.com/version.GitCommit=${VERSION_GIT_HASH}" "$@"
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
build_dist ./cmd/tailscale
|
|
||||||
build_dist ./cmd/tailscaled
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
dosbin tailscaled
|
|
||||||
dobin tailscale
|
|
||||||
|
|
||||||
systemd_dounit cmd/tailscaled/tailscaled.service
|
|
||||||
insinto /etc/default
|
|
||||||
newins cmd/tailscaled/tailscaled.defaults tailscaled
|
|
||||||
keepdir /var/lib/${PN}
|
|
||||||
fperms 0750 /var/lib/${PN}
|
|
||||||
|
|
||||||
newtmpfiles "${FILESDIR}/${PN}.tmpfiles" ${PN}.conf
|
|
||||||
|
|
||||||
newinitd "${FILESDIR}/${PN}d.initd" ${PN}
|
|
||||||
newconfd "${FILESDIR}/${PN}d.confd" ${PN}
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
tmpfiles_process ${PN}.conf
|
|
||||||
}
|
|
44
packages.yml
44
packages.yml
|
@ -41,16 +41,10 @@ net-vpn/tailscale:
|
||||||
steps:
|
steps:
|
||||||
- checkout: https://github.com/tailscale/tailscale
|
- checkout: https://github.com/tailscale/tailscale
|
||||||
- original_ebuild: new.ebuild
|
- original_ebuild: new.ebuild
|
||||||
|
- generate_go_deps
|
||||||
- command: |-
|
- command: |-
|
||||||
set -euxo pipefail
|
set -euxo pipefail
|
||||||
|
|
||||||
GO_VERSION=$(grep "^go" go.mod | awk '{ print $2 }' | awk -F '.' '{ print $1"."$2}')
|
|
||||||
mise use -g golang@"${GO_VERSION}"
|
|
||||||
|
|
||||||
# Create the dependency tar.
|
|
||||||
GOMODCACHE="${PWD}"/go-mod go mod download -modcacherw
|
|
||||||
XZ_OPT=-e9T0 tar cJf deps.tar.xz go-mod
|
|
||||||
|
|
||||||
# Get the shell variables and rewrite the ebuild to contain
|
# Get the shell variables and rewrite the ebuild to contain
|
||||||
# them.
|
# them.
|
||||||
eval "$(./build_dist.sh shellvars)"
|
eval "$(./build_dist.sh shellvars)"
|
||||||
|
@ -58,8 +52,6 @@ net-vpn/tailscale:
|
||||||
sed -i 's/VERSION_SHORT=".*"/VERSION_SHORT="'"${VERSION_SHORT}"'"/' new.ebuild
|
sed -i 's/VERSION_SHORT=".*"/VERSION_SHORT="'"${VERSION_SHORT}"'"/' new.ebuild
|
||||||
sed -i 's/VERSION_LONG=".*"/VERSION_LONG="'"${VERSION_LONG}"'"/' new.ebuild
|
sed -i 's/VERSION_LONG=".*"/VERSION_LONG="'"${VERSION_LONG}"'"/' new.ebuild
|
||||||
sed -i 's/VERSION_GIT_HASH=".*"/VERSION_GIT_HASH="'"${VERSION_GIT_HASH}"'"/' new.ebuild
|
sed -i 's/VERSION_GIT_HASH=".*"/VERSION_GIT_HASH="'"${VERSION_GIT_HASH}"'"/' new.ebuild
|
||||||
|
|
||||||
sed -i 's|dev-lang\/go-.*|dev-lang\/go-'"${GO_VERSION}"'"|' new.ebuild
|
|
||||||
- upload_artifact: deps.tar.xz
|
- upload_artifact: deps.tar.xz
|
||||||
- ebuild: new.ebuild
|
- ebuild: new.ebuild
|
||||||
app-admin/chezmoi:
|
app-admin/chezmoi:
|
||||||
|
@ -72,22 +64,14 @@ app-admin/chezmoi:
|
||||||
steps:
|
steps:
|
||||||
- checkout: https://github.com/twpayne/chezmoi
|
- checkout: https://github.com/twpayne/chezmoi
|
||||||
- original_ebuild: new.ebuild
|
- original_ebuild: new.ebuild
|
||||||
|
- generate_go_deps
|
||||||
- command: |-
|
- command: |-
|
||||||
set -euxo pipefail
|
set -euxo pipefail
|
||||||
|
|
||||||
GO_VERSION=$(grep "^go" go.mod | awk '{ print $2 }' | awk -F '.' '{ print $1"."$2}')
|
|
||||||
mise use -g golang@"${GO_VERSION}"
|
|
||||||
|
|
||||||
# Create the dependency tar.
|
|
||||||
GOMODCACHE="${PWD}"/go-mod go mod download -modcacherw
|
|
||||||
XZ_OPT=-e9T0 tar cJf deps.tar.xz go-mod
|
|
||||||
|
|
||||||
# Get the shell variables and rewrite the ebuild to contain
|
# Get the shell variables and rewrite the ebuild to contain
|
||||||
# them.
|
# them.
|
||||||
VERSION_GIT_HASH=$(go run assets/scripts/generate-commit.go)
|
VERSION_GIT_HASH=$(go run assets/scripts/generate-commit.go)
|
||||||
sed -i 's/VERSION_GIT_HASH=".*"/VERSION_GIT_HASH="'"${VERSION_GIT_HASH}"'"/' new.ebuild
|
sed -i 's/VERSION_GIT_HASH=".*"/VERSION_GIT_HASH="'"${VERSION_GIT_HASH}"'"/' new.ebuild
|
||||||
|
|
||||||
sed -i 's|dev-lang\/go-.*|dev-lang\/go-'"${GO_VERSION}"'"|' new.ebuild
|
|
||||||
- upload_artifact: deps.tar.xz
|
- upload_artifact: deps.tar.xz
|
||||||
- ebuild: new.ebuild
|
- ebuild: new.ebuild
|
||||||
|
|
||||||
|
@ -101,17 +85,7 @@ dev-util/glab:
|
||||||
steps:
|
steps:
|
||||||
- checkout: https://gitlab.com/gitlab-org/cli
|
- checkout: https://gitlab.com/gitlab-org/cli
|
||||||
- original_ebuild: new.ebuild
|
- original_ebuild: new.ebuild
|
||||||
- command: |-
|
- generate_go_deps
|
||||||
set -euxo pipefail
|
|
||||||
|
|
||||||
GO_VERSION=$(grep "^go" go.mod | awk '{ print $2 }' | awk -F '.' '{ print $1"."$2}')
|
|
||||||
mise use -g golang@"${GO_VERSION}"
|
|
||||||
|
|
||||||
# Create the dependency tar.
|
|
||||||
GOMODCACHE="${PWD}"/go-mod go mod download -modcacherw
|
|
||||||
XZ_OPT=-e9T0 tar cJf deps.tar.xz go-mod
|
|
||||||
|
|
||||||
sed -i 's|dev-lang\/go-.*|dev-lang\/go-'"${GO_VERSION}"'"|' new.ebuild
|
|
||||||
- upload_artifact: deps.tar.xz
|
- upload_artifact: deps.tar.xz
|
||||||
- ebuild: new.ebuild
|
- ebuild: new.ebuild
|
||||||
|
|
||||||
|
@ -125,16 +99,6 @@ dev-util/doppler:
|
||||||
steps:
|
steps:
|
||||||
- checkout: https://github.com/DopplerHQ/cli
|
- checkout: https://github.com/DopplerHQ/cli
|
||||||
- original_ebuild: new.ebuild
|
- original_ebuild: new.ebuild
|
||||||
- command: |-
|
- generate_go_deps
|
||||||
set -euxo pipefail
|
|
||||||
|
|
||||||
GO_VERSION=$(grep "^go" go.mod | awk '{ print $2 }' | awk -F '.' '{ print $1"."$2}')
|
|
||||||
mise use -g golang@"${GO_VERSION}"
|
|
||||||
|
|
||||||
# Create the dependency tar.
|
|
||||||
GOMODCACHE="${PWD}"/go-mod go mod download -modcacherw
|
|
||||||
XZ_OPT=-e9T0 tar cJf deps.tar.xz go-mod
|
|
||||||
|
|
||||||
sed -i 's|dev-lang\/go-.*|dev-lang\/go-'"${GO_VERSION}"'"|' new.ebuild
|
|
||||||
- upload_artifact: deps.tar.xz
|
- upload_artifact: deps.tar.xz
|
||||||
- ebuild: new.ebuild
|
- ebuild: new.ebuild
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
# Updates the chromium package to use the versions inside from the
|
# Updates the chromium package to use the versions inside from the
|
||||||
# gentoo repository while persisting the patches we need.
|
# gentoo repository while persisting the patches we need.
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue