Lightweight workspace manager for the shell. Desk makes it easy to flip back and forth between different project contexts in your favorite shell. Change directory, activate a virtualenv or rvm, load in domain-specific aliases, environment variables, functions, arbitrary shell files, all in a single command. Instead of relying on CTRL-R to execute and recall ("that command's gotta be here somewhere..."), desk helps shorten and document those actions with shell aliases and functions, which are then namespaced under a particular desk. Because Deskfiles are just enriched shell scripts, the possibilities are endless. For example, when doing work on AWS I have desk securely load AWS API keys into environment variables via pass -- no effort on my part, and no risk of accidentally persisting that sensitive information to a history file.

Features

  • A shell script that sources another shell script in a new shell
  • The quick context switches and namespaced commands that desk facilitates have proven useful
  • There are no dependencies other than bash
  • Desk is explicitly tested with bash, zsh, and fish
  • Basically, desk just associates a shell script (name.sh) with a name
  • Shell extensions are automatically enabled if Desk is installed via Homebrew

Project Samples

Project Activity

See All Activity >

License

MIT License

Follow desk

desk Web Site

Other Useful Business Software
$300 Free Credits to Build on Google Cloud Icon
$300 Free Credits to Build on Google Cloud

New customers can spin up VMs, build with AI, and query data at no cost.

Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
Start Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of desk!

Additional Project Details

Programming Language

Unix Shell

Related Categories

Unix Shell Terminals, Unix Shell System Shells

Registered

2022-04-12