You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm trying to contribute to the repo, but was unable to find a way to do that.
Here are the steps I took:
Open the repository in code spaces
Make changes
How do I test before committing?
I tried to start Live Preview. I then changed the URL to curl -sS https://super-duper-rotary-phone-p66x959p45397g-3000.app.github.dev/shfmt | sh, but the result I got back was HTML.
There is some sort of url handler, but I have no idea how to invoke it.
The next thing I tried was yarn start and npm start hoping it would be easy to start a server with proper URL handling, but that was missing also.
Then i read more documentation and after realizing that packages were renamed to webi-installers ran the following:
$ node _webi/test.js ./pwsh
node:internal/modules/cjs/loader:1147
throw err;
^
Error: Cannot find module './build-classifier/host-targets.js'
Require stack:
- /workspaces/webi-installers/_webi/builds-cacher.js
- /workspaces/webi-installers/_webi/builds.js
- /workspaces/webi-installers/_webi/test.js
at Module._resolveFilename (node:internal/modules/cjs/loader:1144:15)
at Module._load (node:internal/modules/cjs/loader:985:27)
at Module.require (node:internal/modules/cjs/loader:1235:19)
at require (node:internal/modules/helpers:176:18)
at Object.<anonymous> (/workspaces/webi-installers/_webi/builds-cacher.js:8:19)
at Module._compile (node:internal/modules/cjs/loader:1376:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1435:10)
at Module.load (node:internal/modules/cjs/loader:1207:32)
at Module._load (node:internal/modules/cjs/loader:1023:12)
at Module.require (node:internal/modules/cjs/loader:1235:19) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'/workspaces/webi-installers/_webi/builds-cacher.js',
'/workspaces/webi-installers/_webi/builds.js',
'/workspaces/webi-installers/_webi/test.js'
]
}
The clone command needs to include submodules. Alternatively they should be brought in later if, for example, git clone was donw by codespaces
git submodule update --init
On one of my machines I've been getting:
[INFO] getLatestBuilds: kubens
dbg: Installer User-Agent: win32/10.0.22621 x64/unknown libc
dbg: Installer Host Target:
{ errors: [], libc: 'libc' }
[INFO] getLatestBuilds: pwsh
C:\Code\webi-installers\_webi\serve-installer.js:68
throw new Error(`OS could not be identified by User-Agent '${unameAgent}'`);
^
Error: OS could not be identified by User-Agent 'win32/10.0.22621 x64/unknown libc'
at InstallerServer.helper (C:\Code\webi-installers\_webi\serve-installer.js:68:11)
at C:\Code\webi-installers\_webi\test.js:85:42
Node.js v21.6.2
I needed to disable that line.
Now the message I'm getting is:
Do the scripts actually work?
NEEDS MANUAL TEST: sh install-pwsh.sh
NEEDS MANUAL TEST: powershell.exe install-pwsh.ps1
Perhaps it is my fault, but it took me a while to realize that the script actually created new files in the root directory.
Turns out it generated:
export WEBI_HOST='undefined'
Setting the variable before running node didn't help either, so I overwrote it manually.
Now I have a few options:
Test on host machine. I already have PWSH there and I don't want to remove it - no good
Spin a new container to test. Here is my output.
🚀 podman run --name=pwsh_test --rm -it -v C:\Code\webi-installers\install-pwsh.sh:/tmp/install.sh docker.io/catthehacker/ubuntu:act-latest bash
root@d4f113f79c43:/tmp# WEBI_TAG=7.4.1
root@d4f113f79c43:/tmp# ./install.sh
>>> Welcome to Webi! - modern tools, instant installs. <<<
We expect your experience to be absolutely perfect!
Success? Star it! https://github.com/webinstall/webi-installers
Problem? Report it: https://github.com/webinstall/webi-installers/issues
(your system is GNU/Linux/x86_64 with libc & curl+wget)
Downloading https://webinstall.dev/packages/webi/webi.sh
to ~/.local/bin/webi
Installing pwsh ...
Found ~/.local/bin
Error: no 'pwsh@Unknown Tag' release for'Unknown OS' (libc) on 'Unknown CPU' as one of 'exe,xz,tar,zip,git'
Latest Version: v7.5.0-preview.1
CPUs: armv7 aarch64 x86_64 x86
OSes: linux darwin windows
libcs: none musl
Package Formats: .tar.gz .pkg .zip .msi
(check that the package name and version are correct)
Double check at undefined/api/releases/pwsh@.tab
?os=-&arch=-&libc=libc&formats=exe,xz,tar,zip,git&pretty=true
At this point I'm giving up.
What I think should happen is:
Open repo in locally or in a container (containers install all prerequisites such as shfmt automatically)
yarn && yarn start or npm install && npm start which spins a server where everything is configured and all that's needed to test would be to replace the host name
Ensure everything works and commit
The text was updated successfully, but these errors were encountered:
There's a lot of complexity, and some of it is beyond the essential complexity, out into accidental complexity territory.
It looks like I need to update the local testing process and documentation.
Originally the locally-generated installers were network-free, but a few months back I made some changes that inadvertently require network access to give some non-essential information - such as the current version of the software.
Rather than invest the time into solving that specific problem, I'd rather move forward with the roadmap to move the install process away from plugin-style functions and towards template generated installers.
... but I don't think I'm in a good place to dedicate that much time to it... so maybe the former is the better option.
I'm trying to contribute to the repo, but was unable to find a way to do that.
Here are the steps I took:
How do I test before committing?
I tried to start Live Preview. I then changed the URL to
curl -sS https://super-duper-rotary-phone-p66x959p45397g-3000.app.github.dev/shfmt | sh
, but the result I got back was HTML.There is some sort of url handler, but I have no idea how to invoke it.
The next thing I tried was
yarn start
andnpm start
hoping it would be easy to start a server with proper URL handling, but that was missing also.Then i read more documentation and after realizing that
packages
were renamed towebi-installers
ran the following:The clone command needs to include submodules. Alternatively they should be brought in later if, for example, git clone was donw by codespaces
On one of my machines I've been getting:
I needed to disable that line.
Now the message I'm getting is:
Perhaps it is my fault, but it took me a while to realize that the script actually created new files in the root directory.
Turns out it generated:
Setting the variable before running node didn't help either, so I overwrote it manually.
Now I have a few options:
At this point I'm giving up.
What I think should happen is:
shfmt
automatically)yarn && yarn start
ornpm install && npm start
which spins a server where everything is configured and all that's needed to test would be to replace the host nameThe text was updated successfully, but these errors were encountered: