Displaying 1 to 20 from 62 results

cash - Cross-platform Linux commands in ES6

  •    Javascript

Cash is a cross-platform implementation of Unix shell commands written in straight ES6. No native compiling and no external dependencies.While young, Cash aims to offer an alternative Linux feel on Windows and to open the door to cross-platform bash scripting in a Javascript environment.

goofys - a high-performance, POSIX-ish Amazon S3 file system written in Go

  •    Go

Goofys allows you to mount an S3 bucket as a filey system. It's a Filey System instead of a File System because goofys strives for performance first and POSIX second. Particularly things that are difficult to support on S3 or would translate into more than one round-trip would either fail (random writes) or faked (no per-file permission). Goofys does not have a on disk data cache (checkout catfs), and consistency model is close-to-open.

acme.sh - A pure Unix shell script implementing ACME client protocol

  •    Shell

It's probably the easiest & smartest shell script to automatically issue & renew the free certificates from Let's Encrypt.

nvm - Node Version Manager

  •    Shell

nvm is a version manager for node.js, designed to be installed per-user, and invoked per-shell. nvm works on any POSIX-compliant shell (sh, dash, ksh, zsh, bash), in particular on these platforms: unix, macOS, and windows WSL.




command-line-api - System

  •    CSharp

This repository contains the code for System.CommandLine, a set of libraries for command line parsing, invocation, and rendering of terminal output. For more information, see our wiki. Daily builds are available if you add this feed to your nuget.config: https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json.

sh - A shell parser, formatter and interpreter (POSIX/Bash/mksh)

  •    Go

A shell parser, formatter and interpreter. Supports POSIX Shell, Bash and mksh. Requires Go 1.8 or later.shfmt formats shell programs. It can use tabs or any number of spaces to indent. See canonical.sh for a quick look at its default style.

threadpool - A simple C Thread pool implementation

  •    C

A simple C Thread pool implementation


e - A dead simple editor

  •    C

Braindead editor. Feels like Vim, only simpler. Inspired by kilo, of course, and a large swath of the code is similar. It can be scripted through Lua.

luaposix - Lua bindings for POSIX APIs

  •    C

This is a POSIX binding for LuaJIT, Lua 5.1, 5.2 and 5.3; like most libraries it simply binds to C APIs on the underlying system, so it won't work on non-POSIX systems. However, it does try to detect the level of POSIX conformance of the underlying system and bind only available APIs. For a while, luaposix contained support for curses functionality too, but now it has its own lcurses repository again, where it is being maintained separately.

passwd-user - Get the passwd user entry from a username or uid

  •    Javascript

Works on macOS and Linux. See user-info if you need cross-platform support.Accepts a username or uid number. Defaults to the current user (process.getuid()).

pwuid - getpwuid() Node.js binding - returns username, name, home directory, shell, gid from uid

  •    C++

If you're creating a reusable module you should probably use passwd-user instead, as it shells out rather than using a native binding.getpwuid() is a POSIX function and won't work on Windows.

unlimited - Upgrade the maximum file descriptor number ('nofile') that can be opened by this process

  •    Javascript

If the current user's permissions or the system's 'hard' limit do not allow the maximum file descriptor number to be increased, this function will do nothing (no-op).For best results, start your node process as root, run unlimited(), then downgrade the user permissions with the downgrade package.

downgrade - Sets the user identity of the process to `www-data`

  •    Javascript

The arguments can be either a numerical ID or a username/group string. If a string is specified, this method blocks while resolving it to a numerical ID.If the current user's permissions do not allow the user identity to be changed, this function will do nothing (no-op).

posix - POSIX/C bindings generator for the Crystal programming language

  •    Crystal

Follows the IEEE Std 1003.1, 2013 Edition (The Open Group Base Specifications Issue 7) as much as libc implementations do, along with some common additions that are required by Crystal. Bindings are automatically generated with CrystalLib from C headers.

js-shell-parse - parse bash, with javascript (UNMAINTAINED)

  •    Javascript

If you want to help, there's a whole bunch of failing test fixtures (borrowed from the lovely [shellcheck](https://github.com/koalaman/shellcheck project)). You can start with reading the grammar. The grammar defines how text will be matched, while the corresponding rule callbacks in overrides.js defines the way those matches will be processed into AST nodes. Be sure to read the comments as there's a tiny bit of magic going on. If you get stuck trying to fix a test case, email me. GitHub issue notifications almost never get my attention.