Comments (2)
Sorry for lag, fair questions! If it's special build flags or even tags - this is already supported: https://github.com/bwplotka/bingo#advanced-techniques - however we could make it more easy to use (some extra flag "--params" to bingo get).
For git clone + custom script building this is more tricky. There is little guarantee that custom script does not require external dependencies or special architecture (rarely authors self-contain those deps). Not sure there is a solution to that, other than working with those CLI authors to make their CLI tools more accessible and self-contained Go code. Ideas welcome and if there are some popular patterns and use cases - I would be keen to learn (:
from bingo.
Now it's me lagging behind.
I see what you mean.
In the example that I referenced, the makefile is going is grabbing the git tag and converting that to the appropriate format to pass thru ldflags so that the version number can be embedded in the resulting binary.
It would be relatively straightforward to duplicate that logic elsewhere, but the keyword is duplicate. This would need to be kept in sync with the makefile. It's unlikely that this will change, but unlikely does not mean impossible.
What I'm trying to say is that while I think individual cases have solutions, the general case doesn't. Think for example of a program that requires mage
to build. The most that you can aspire to in that case is that there's a target that builds the binary and that you can control the output location. The other obvious problem is what I showed in my initial post: if something is not go-gettable, you probably need to clone a repository in order to build it.
So while I fully agree with the intuition that something that requires make to build will also require other dependencies, I think that's a problem that should be solved outside of bingo: as long as you can specify a "build script" that bingo could use, and some requirements are met, that script ought to make sure that those dependencies are available.
Does that make sense?
from bingo.
Related Issues (20)
- List by package fail when list by binary name works HOT 1
- Add support for pinning and building forks
- bingo get does not update {package}.mod go version HOT 3
- Fix docs: go get is not installing things anymore.
- Failing to pin `staticcheck` HOT 3
- Failed to pin gomplate
- How to delete pkg? HOT 2
- Add back error cases tests.
- Bingo get fails complaining go1.18+ required which is already the case HOT 7
- Command line refactoring provides friendly prompts HOT 4
- bingo get fails on Windows: bingo.tmp.mod is being used by another process HOT 1
- "Predeclared any required go1.18 or later (-lang was set to go1.16) HOT 3
- go get succeeds but bingo fails for mockgen and golangcli-lint HOT 3
- Parsing of devel Go version fails HOT 1
- User Survey in an issue: Anything we should change for 1.0? HOT 2
- Command for updating all deps at once to latest
- Fix ./bingo/README.md: variables.go was never supported. HOT 3
- Bug: Go 1.21.0 HOT 8
- Fails to install package with local `replace` directives and multiple modules 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 bingo.