Comments (6)
I doubt precompiled binaries will work with the wide variety of Linux architectures out there, unless we bundle a gazillion different binaries and pick the right one (but that would bloat the gem bundle size for everyone).
I think it's possible for ruby gems to have native code that compiles ("...building native extensions"), some issues there:
- we'd only want to compile it in linux architecture, and avoid native extensions elsewhere.
- might be overkill in terms of complication if there are a lot of dependencies, when most Linux distros have a good package manager and we're currently asking people to install ImageMagick anyhow.
Thoughts?
from lolcommits.
Looking at the readme's for camshot
and v4l2grab
I think the only dependencies would be developer tools, and video4linux drivers (which I think are installed by default on most distros).
So the only problem would be only building it for Linux. http://guides.rubygems.org/c-extensions/ only shows how to build a .so
library that you can require, so we'd have to customise the makefile mkmf
creates -- or create one manually. Any ideas on how to go about this?
Here's an example of modifying the makefile:
https://github.com/tenderlove/nokogiri/blob/master/ext/nokogiri/extconf.rb
They use different options for different OS's so perhaps we could stop it from compiling on anything but Linux?
Of course, mplayer
isn't a particularly annoying dependency, and is easily installed so perhaps we needn't worry about packaging one of the above at all. Not to mention the fact that I've not even tried either of the above and don't know of their reliability. But yeah, just a thought :).
from lolcommits.
Just a thought: basically this gem is aimed at developers that actively use git and I think that running one extra command (sudo apt-get install ...) isn't that complicated for them. As for me I already had mplayer and ImageMagick with all development libraries installed so it wasn't issue for me at all ;)
Thanks.
from lolcommits.
That's true, I only raised this as a thought since imagesnap
and CommandCam
are bundled. Although a developer might not want to keep their system bloated with things they won't use, I wouldn't want to install a media player on a development machine because there's just no need for it (especially since it installs all those big ffmpeg libraries that we're not even using).
Just my two pennies' worth...
from lolcommits.
@prydonius Ah, ok then. I didn't know that imagesnap and CommandCam are bundled. Sorry.
from lolcommits.
Since we've been living with mplayer for over 2 years now without many complaints, I think this issue can be closed now. It still the simplest and safest way to get a captured image on linux machines.
from lolcommits.
Related Issues (20)
- lolcommits cannot be installed on High Sierra HOT 2
- Include Geo location in the image metadata HOT 1
- --fork results in error with magit (emacs porcelain) HOT 2
- MiniMagick::Error - mogrify: non-conforming drawing primitive definition `path' HOT 10
- Require plugin gems from lolcommits HOT 1
- Consider releasing a 1.0.0 HOT 5
- Works but never exits HOT 17
- lolcommits fails to capture image on linux HOT 9
- Transfer this repository to the lolcommits organisation HOT 8
- Fork app commit process hangs with lolcommits enabled HOT 12
- lolcommits --devices no longer works HOT 2
- macOS 10.15 will not ship with with Ruby
- No video devices found after upgrading to catalina (OSX 10.15) HOT 7
- Linux webcam resolution HOT 4
- Terminates with error "`encode': wrong number of arguments" HOT 8
- Ability to replace the hash with a date
- Commits doesn't trigger snapshot
- lolcommits dosen't skip capture when rebasing HOT 2
- Can we release a new version HOT 4
- Availability of Apple Silicon support (arm64) HOT 1
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 lolcommits.