
Security News
Follow-up and Clarification on Recent Malicious Ruby Gems Campaign
A clarification on our recent research investigating 60 malicious Ruby gems.
BEFORE YOU GO ANY FURTHER, this is a WIP!!! This is not to be used for ANYTHING IMPORTANT WHATSOEVER!!! This is my first time using SWIG and my first time developing a Ruby extension. It's got very basic functionality working, but only works on Linux right now. YOU HAVE BEEN WARNED!!!
This is a SWIG-generated Ruby extension for Notcurses, a truly 31337 library for developing TUIs. Notcurses is a modern reimagining of the classic Curses library known to many. It supports true color, has built-in widgets and many other nice-to-haves that aren't present in curses, and probably never will be. Note that while Notcurses will be familiar to anyone who has worked with curses, it is not a drop-in replacement. The API is definitely different.
https://github.com/dankamongmen/notcurses
You should install swig first via your OS package management system. If swig can't be found, the default generated code will be used which was generated on a modern Linux system (Ubuntu 22 LTS).
Otherwise it's just your typical gem install notcurses.
This is JUST the extension- which puts all the functions and constants under the Notcurses namespace. I will be developing a more idiomatic object model to interface with this in a separate project, which gives you the freedom to choose the raw extension or the full on object-oriented style.
Everything is pretty much in ext. The swig interface (notcurses.i) is the main thing, with a couple of overridden/wrapper functions for things that take va_list args cause swig doesn't yet have a built-in facility to translating from ruby's variadics to va_list. The notcurses_wrap.c is what SWIG auto- generates. It's committed to the repo just as a fallback if SWIG isn't in- stalled on the local machine but that isn't really a great idea anyways.
If you are new to curses stuff, you will need to be reminded that you will need to use pry-remote to debug since the terminal will be controlled by notcurses.
Bug reports and pull requests are welcome on GitHub at https://github.com/slithernix/notcurses.
FAQs
Unknown package
We found that notcurses demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
A clarification on our recent research investigating 60 malicious Ruby gems.
Security News
ESLint now supports parallel linting with a new --concurrency flag, delivering major speed gains and closing a 10-year-old feature request.
Research
/Security News
A malicious Go module posing as an SSH brute forcer exfiltrates stolen credentials to a Telegram bot controlled by a Russian-speaking threat actor.