Comments (7)
This would allow decoupling the labels from their actual image. Allowing new images to be used but the package would still work with whalebrew because of these defaults. Labels on actual images could be treated as overrides.
from whalebrew.
@tjamet any thoughts about this idea? I haven't flushed out the details but I'm curious hear opinions about if it's even reasonable.
from whalebrew.
I am wondering how would this look like, how to know what is the "package" image to use for a given "program" image.
I fear that de-coupling both may introduces some complexity we could avoid.
It looks like being able to run whalebrew install whalebrew/gawk --use-image mor1/gawk
Also wondering about the problem to solve. Are we trying to ensure images are kept up to date so we can benefit the latest version, always?
from whalebrew.
The problem this is trying to solve is avoiding having to build encompassing images for a given base image in order for it to be supported by whalebrew. If solved this would allow tags of any given image to be used as long as there's an associated whalebrew config for it.
When installing an image like whalebrew install wget
whalebrew could check the whalebrew image repository for an image with the same name (whalebrew/wget this image could just contain the labels) then pull and inspect it to use the labels as defaults. It would also be nice as you pointed out to be able to tell whalebrew an image to use as the base config. It would also be possible to make where to look for these configuration images configurable via the whalebrew config file.
from whalebrew.
For example node has images for a lot of releases of the cli tool but whalebrew only has one supported tag latest.
from whalebrew.
I am seeing there multiple points that we could handle separately.
First is the ability to use a different image for a given package.
This is a pretty nice feature IMHO, which is already supported by installing an image and then editing the installed file whalebrew edit wget
in our case. This is not as user friendly as it could be and we can indeed take an action on it to improve the UX.
On top of that, there is the reasoning about package and image to be used. I know that we are currently short in supported versions of images to be used, and hence require to tweak the settings to be able to install latest versions of several tools. Though, the model that we have currently (packing the tool together with the configuration) allows us to ensure that the package works correctly with the tool, and manage easily breaking changes. This is a quite common case in the packaging world, from Debian packages to homebrew, versions are pinned in the packages. Breaking this would make us face the package/program matching problem on our side, which I am unsure we want to get in. Instead, I would prefer to invest in improving the packaging to provide a wider range of versions, and checking that the packaging actually works.
I do have some ideas on the matter, I will try to come up with them shortly.
The last point is about matching the package and the program depending on the image name. I am unsure this needs to be performed automatically at the whalebrew level. Whalebrew could provide helpers for humans to do so, allowing them to check that both packages are actually installing the same program, not injecting malware, ... so we can have eventually have insights through issues and proposals on how users actually uses the feature and propose something that fits with the common usage.
from whalebrew.
Pls disregard my previous edits of this comment. Your suggested solution for the --use-image flag seems like a great ux improvement.
from whalebrew.
Related Issues (20)
- Validate `io.whalebrew.*` labels HOT 1
- Make it work as non-admin HOT 3
- Ensure plain support of OCI images
- Add search support for Harbour docker registry
- Add search support for AWS docker registry
- Add search support for GCP docker registry
- whalebrew search does not list packages HOT 2
- Option to run a package without `-it` HOT 3
- terraform outdated HOT 5
- [Ideas] Apple Silicon (ARM64) Docker bitfmt support in Whalebrew HOT 5
- Broken uninstall (on brew version) HOT 3
- Warning for most packages on m1 macs HOT 1
- Improve Install Path handling HOT 3
- Was 0.4.0 re-tagged? HOT 4
- Is the docker daemon running? (Oh yes it is!) HOT 11
- podman support HOT 12
- Homebrew version of whalebrew is incorrect HOT 4
- open /usr/local/bin/whalesay: permission denied
- Use `brew --prefix`'/bin' install path by default
- whalebrew install returns client version error HOT 10
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 whalebrew.