planets(1)
π« planets β bestie's guide to yeeting celestial bodies around π«
okay so real talk, this is planets(1), from the General Commands Manual section, and it's genuinely one of my fave little programs ever. sit down, grab a snack, we're doing gravitational physics π
β¨ NAME β¨
planets β gravitational simulation of planetary bodies πͺβ¨
πΈ DESCRIPTION πΈ
so basically planets is a lil interactive program for playing around with simulations of planetary systems. and the way that it's lowkey a perfect teaching tool for understanding how gravitation works on a planetary level?? obsessed. fr fr. π§
the user interface is designed to be simple enough that a fairly young kid can get some joy out of it π and there's ALSO a special kid-mode aimed at very young children β and no cap, kid mode grabs the focus and converts key banging into lots of random planets. like, chaos mode activated, planets everywhere, iconic. π
π KEYBINDINGS π
πͺ Universe definition
aβ Add Planetjβ Place random orbital planetrβ Place random planetuβ Undo (undoes the last planet insertion)eβ Reset to empty universegβ Go Back (goes back to just after the last planet insertion)- Mouse β Click on a planet to delete it π«Ά
π₯ Physics
bβ Toggle bounce (experimental β yes bestie, experimental, we'll get to that)
π Display control
- Cursor keys β Panning
c, Space β Move display to center of massxβ Initiate center of mass tracking=β Zoom in-β Zoom outpβ Toggle Pauseoβ Change all colors randomly (chaos. beautiful chaos.)tβ Toggle Tracedβ Double Trace Lengthhβ Halve Trace Length- Mouse β Drag a box around a set of planets to follow the center of mass of those planets
π Program control
Hβ Display help dialogkβ Display option dialogCtrl-Shift-kβ Toggle kid-mode. Kid mode locks the keyboard and mouse, so the only way to get out is to toggle kid-mode again to get out. π¨
okay so real talk: kid mode is a trap if you don't remember the escape hatch. it locks your keyboard and mouse, and the ONLY way out is toggling kid-mode again. memorize Ctrl-Shift-k. that's your exit. periodt.
lβ Load Universe. After pressingl, press any other character to load the universe with that name. Universes are stored in~/.planets/.sβ Save Universe. After pressings, press any other character to save the universe with that name. Universes are saved in~/.planets/.q,Escβ Quit
π¬ TECHNICAL DETAILS π¬
ngl the actual math here is kinda slay. planets uses a fourth-order runge-kutta approximation for the simulation itself. β¨
planet bouncing is achieved by adding a repulsive force to planets at close quarters.
and the way planets is fairly flexible?? you can change the gravitational constant, the time-slice of the simulation, and even the exponent used in the gravitational law. yes bestie, the exponent. go wild. π
universes are saved in the ~/.planets directory, and they're simple human readable and editable files β so you can literally just open them up and mess with them yourself. no cap. π¦
π BUGS π
currently bouncing doesn't work very well unless you make the time-slice quite small. π
ideally, it would be nice to have a billiard-style bounce system, but it's not clear how to do this accurately in the presence of a strong gravitational field. so like... we're all just living with it for now. π
π«Ά AUTHOR π«Ά
planets was written by Yaron M. Minsky <yminsky@cs.cornell.edu> as a gift for his nephew, Eyal Minsky-Fenick. (a gift!! for his nephew!!! the way that's the sweetest thing ever, I'm literally tearing up ππ)
this manpage was contributed originally by Martin Pitt <martin@piware.de> for the Debian GNU/Linux system (but may be used by others). π§
okay that's the whole thing bestie, you're fully caught up. this page is from April 20, 2003 and it lives under planets(1) β go add a planet for me, mwah π
πβ¨
π¦ where this page comes from
- debian bookworm: planets 0.1.13-20+b5 Β· GPL-2.0-or-later
- debian trixie: planets 0.1.13-23+b3 Β· GPL-2.0-or-later
- fedora 43: planets 0.1.13-49.fc43 Β· GPL-2.0-or-later
- fedora 44: planets 0.1.13-51.fc44 Β· GPL-2.0-or-later
- ubuntu jammy: planets 0.1.13-20build2 Β· GPL-2.0-or-later
- ubuntu noble: planets 0.1.13-22build1 Β· GPL-2.0-or-later
- ubuntu questing: planets 0.1.13-23build3
- ubuntu resolute: planets 0.1.13-23build4 Β· GPL-2.0-or-later
- ubuntu stonking: planets 0.1.13-23build5 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms