Comments (2)
I was doing a bit of reading to figure out what needs to be done for this and man why are these package managers always such a pain to publish to. Anyway, a rough outline of what I found so far:
-
We need an installer and wix seems to be a common one. Conveniently,
cargo-wix
exists which helps a lot and just runningcargo wix init
andcargo wix
builds you an installer.For this you need
choco install wixtoolset -y
and might needdotnet tool install --global wix
. -
I looked into NuShell to see how they do it and their release job is pretty simple.
-
This release job assumes the installer files are present in the GitHub release. You are already doing roughly what is needed in the
create-draft-release-with-artifacts
CI job, I think if we rancargo-wix
here to generate the installer and add it to the release assets it "should all work fine with zero problems✨" which is always how these things go right :)
Also do note that wingetcreate update
needs a version to be published beforehand so even if we implemented this now, we would only be able to test the CD job a release later (of course you could also just bump the patch version for the sake of testing).
Lastly, it seems that you can publish installers for all OSes on Winget? Not sure if that's actually the case but also not sure if it would be worth the extra hassle since ouch is already published for a plethora of Linux distros and I doubt anyone not on Windows would use Winget.
It also seems like NuShell has had issues with their CD job because of their binaries being renamed accidentally at one point or another which were apparently hard to debug, it might be a good idea to add sanity checks to prevent this (maybe log errors with something like this?).
from ouch.
can you publish on winget package manager please?
It might be surprising, but Ouch maintainers didn't create a single package for Ouch! That was all done by random people who wanted to help. <3
Thank you so much for the info @AntoniosBarotsis, I'll mark this as "PR-welcome" for anyone who wants to tackle it.
Note: I don't own a Windows environment so I'd expect whoever is making this PR to "check if it works" for us, if it isn't much to ask, also check if it keeps working after the very next Ouch update.
from ouch.
Related Issues (20)
- Support "zst" and "zstd" for ZStandard HOT 6
- Does ouch support permissions like `--xattrs`? HOT 4
- progress indicator HOT 19
- Request: Add Depth Option to `--tree` for Listing Archive Contents HOT 2
- Run logging IO in a separate thread (improve multithread capabilities)
- Add symbol to represent the directory name HOT 2
- Large bz2 file decompressed incorrectly HOT 1
- Compressing a `.tar` file causes (maybe) undesirable double-wrapping
- Allow listing nested archives
- Add GPU(CUDA) as an option to compress/decompress HOT 1
- Change .tmp file directory HOT 2
- Support decompressing stdin HOT 4
- Multithreaded zstd compression support
- Ouch breaks the file name when the encode is not utf-8
- [Feature request] Extension support for bacpac/dacpac files HOT 3
- Can it resume compressing? HOT 1
- README: Add stdin decompression to list of features (and show usage example)
- Requested formats.
- use buffered output in `list` command
- Segmentation fault in coverting zip_date_time HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ouch.