Skip to content

Commit 8047960

Browse files
committed
Install pkgm alongside pkgx
* Not a complete implementation since we need to check if there’s a newer pkgm separate to pkgx. * Default action to install pkgx^1 by default since we need a major version bump to switch to ^2
1 parent 5d48260 commit 8047960

File tree

6 files changed

+18
-14
lines changed

6 files changed

+18
-14
lines changed

.github/workflows/cd.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,11 @@ jobs:
6363
prefix: v
6464
tag: v${{ github.event.inputs.version }}
6565

66+
- name: tag `latest`
67+
run: |
68+
git tag --force latest
69+
git push origin latest --force
70+
6671
- name: Seal Deployment
6772
uses: bobheadxi/deployments@v1
6873
if: always()

.github/workflows/ci.installer.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ jobs:
140140
# - ubuntu:bionic glibc too old
141141
- ubuntu:focal
142142
- ubuntu:jammy
143-
- ubuntu:lunar
143+
- ubuntu:noble
144144

145145
- fedora:latest
146146

README.md

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,15 @@
77
# GitHub Action
88

99
```yaml
10-
- uses: pkgxdev/setup@v1
10+
- uses: pkgxdev/setup@v2
1111
```
1212
1313
Installs the latest version of `pkgx`.
1414

1515
See [`action.yml`] for all inputs and outputs, but here’s the usual ones:
1616

1717
```yaml
18-
- uses: pkgxdev/setup@v1
18+
- uses: pkgxdev/setup@v2
1919
with:
2020
+: deno@1.30
2121
rust@1.60 # we understand colloquial names, generally just type what you know
@@ -32,11 +32,6 @@ $ pkgx +rust
3232
> See [`@pkgxdev/dev`] to run the `dev` command in a GitHub Actions compatible manner
3333

3434

35-
### Shell Integration
36-
37-
We cannot integrate with the GitHub Actions shell. But you probably don’t
38-
need it.
39-
4035
### Should you Cache `~/.pkgx`?
4136

4237
No. pkgx packages are just tarballs. Caching is just a tarball. You’ll likely
@@ -52,8 +47,8 @@ To install `pkgx`:
5247
```sh
5348
$ curl https://pkgx.sh | sh
5449
55-
# - installs to `/usr/local/bin/pkgx`
56-
# - if pkgx is already installed it’s a noop
50+
# - installs to `pkgx` & `pkgm` to `/usr/local/bin`
51+
# - if both are already installed, does an update check
5752
```
5853

5954
## Temporary Sandboxes

action.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ async function go() {
4545
data: prefix.join(".data"),
4646
cache: prefix.join(".cache"),
4747
pantries: [],
48-
UserAgent: 'pkgx.setup/0.1.0', //TODO version
48+
UserAgent: 'pkgx.setup/0.2.0', //TODO version
4949
options: { compression: 'gz' }
5050
})
5151
const { map, flatten } = useShellEnv()

action.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ inputs:
1818
version:
1919
description: >
2020
The version of `pkgx` to install.
21-
Defaults to the @latest.
22-
required: false
21+
Defaults to ^1.
22+
required: ^1
2323
runs:
2424
using: node20
2525
main: dist/out/index.js

installer.sh

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ _install_pkgx() {
5656
progress="--progress-bar"
5757
fi
5858

59-
tmpdir=$(mktemp -d)
59+
tmpdir="$(mktemp -d)"
6060

6161
if [ $# -eq 0 ]; then
6262
if [ -f /usr/local/bin/pkgx ]; then
@@ -69,10 +69,14 @@ _install_pkgx() {
6969
pipe="$tmpdir/pipe"
7070
mkfifo "$pipe"
7171

72+
curl --silent --fail --proto '=https' -o "$tmpdir/pkgm" \
73+
https://pkgxdev.github.io/pkgm/pkgm.ts
74+
7275
curl $progress --fail --proto '=https' "https://pkgx.sh/$(uname)/$(uname -m)".tgz > "$pipe" &
7376
$SUDO sh -c "
7477
mkdir -p /usr/local/bin
7578
tar xz --directory /usr/local/bin < '$pipe'
79+
install -m 755 "$tmpdir/pkgm" /usr/local/bin
7680
" &
7781
wait
7882

0 commit comments

Comments
 (0)