Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Streamlined installation #394

Open
DannyBen opened this issue Oct 27, 2022 · 7 comments
Open

Streamlined installation #394

DannyBen opened this issue Oct 27, 2022 · 7 comments
Labels
C Implement by C help wanted Extra attention is needed

Comments

@DannyBen
Copy link

Hello, and thanks for this implementation.

Are there any plans to make the installation process more standard and streamlined?

I imagine the sqlite3 gem is a good baseline example, with it I just need to ensure I have the sqlite3 OS package (apt install sqlite / apk add sqlite3) and then just do a regular gem install sqlite3.

Manually downloading external C++ header files, placing them in a particular location, and messing around with ldconfig is not ideal...

@suketa
Copy link
Owner

suketa commented Nov 12, 2022

@DannyBen
Sorry, but I'm not a duckdb creator nor OS packages maintainer. I don't have any plans about it.
You should ask duckdb creator or OS packages maintainer.

I hope OS package maintainer or duckdb creator will provide duckdb package in near future. (lib-duckdb-dev, etc)

@sandstrom
Copy link
Contributor

Just to chime in here. I think it would be possible to compile duckdb at gem install time, similar to sqlite. This file is the entrypoint to their install.

https://github.com/sparklemotion/sqlite3-ruby/blob/master/ext/sqlite3/extconf.rb

All that said, I would not prioritize easy install at this point. DuckDB is still early in itself, would at least wait until it's 1.0, to avoid breaking changes in the install flow.

Second, I this ruby binding is still fairly early days too, I think time is much better spent on functionality. If enough people start using this gem, eventually someone will contribute an upgraded install process. Also, such a simplified flow would require a more advanced test setup, where Github Actions would run compile tests on different architecture and for different versions of DuckDB. A lot of work to setup, not worth it at this point.

Lastly, thanks for an awesome gem! 🏅 Discovered it recently, haven't tried yet, but I will soon!

@sandstrom
Copy link
Contributor

@suketa Thanks for a great gem!

Would you be open to some sponsorship for making more improvements to this gem? For example $200 a month for 6 months, as a starter.

Overall I think this gem is in a fairly good state, but there may be a few areas where it can get even better. You probably have some ideas on your own, and if you are open to sponsorship, I can also share some ideas to hear our thoughts about it.

@suketa
Copy link
Owner

suketa commented Jul 15, 2023

@sandstrom
Thank you for your suggestion. I started github sponsors. I can't promise anything and I don't have enough time to improve this gem. But I will keep maintain this gem and make more improvements to this gem.

@sandstrom
Copy link
Contributor

@suketa Sounds great!

I've added $100 sponsorship. Obviously I realize you have job and other things to do, but hopefully this can help a bit towards maintaining and improving this gem.

Two small ideas:

  • Disable the 'projects' tab if it isn't used
  • Enable the discussions tab, to get fewer questions under issues

@suketa suketa added C Implement by C help wanted Extra attention is needed labels Nov 14, 2023
@suketa
Copy link
Owner

suketa commented Nov 14, 2023

related issue #561, duckdb/duckdb#9475

@sandstrom
Copy link
Contributor

@suketa Just wanted to let you know we've increased the sponsorship to $150 a month.

Also, just a small suggestion.

I'd disable the 'projects' tab if it isn't used, and enable the discussions tab (to get fewer questions under issues).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C Implement by C help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants