plowmod(1)
π plowmod(1) β the plowshare modules management tool, bestie edition π
okay so before we even get into it: this is plowmod, and it lives in the Plowshare for Bash 4 manual. it's a lil command-line bestie whose whole job is making plowshare modules install and update without you crying. π«Ά
β¨ NAME β¨
plowmod β a simple plowshare modules management tool. simple!! as in, it does the annoying stuff so you don't have to. π
β¨ SYNOPSIS β¨
plowmod ACTION [OPTIONS]... [URL]...
plowmod --install [URL]...
plowmod --update
plowmod --status
like. pick an action, sprinkle some options, maybe yeet a URL in there. that's the whole vibe. πΈ
β¨ DESCRIPTION β¨
so plowmod is a command-line tool built specifically to make installing and updating plowshare modules not a whole ordeal. and the best part? the script is standalone β it does not depend on any of the other plow* tools. she's independent. she's her own main character. π
here's the tea tho π: when you actually fire up plowdown, plowup, plowprobe, plowlist or plowdel, they go looking for ~/.config/plowshare/modules.d/*/config files and build themselves an available-module list from whatever they find. so that's why plowmod exists β to keep that directory cute and current.
and about remote repository sources (aka the URLs you pass in): for now they can only be git repositories. no cap. git or nothing. π
β¨ OPTIONS β¨
π Action options
-i,--installβ install from scratch, from one or several URLs, straight into the plowshare modules directory (peep the--modules-directoryswitch below for where exactly π). for now it's literally just agit clone. from the repository URL, a sub-directory name gets figured out (it's some kind of basename situation) and that's what gets created inside the plowshare modules directory.-s,--statusβ prints some genuinely useful info about the modules directories it found, plus any possible conflicts. the conflict tea only spills when you're using the-v3switch. π«-u,--updateβ browses the plowshare modules directory (every single sub-directory, one by one) and tries to update the sources. for now this is just a plain ol'git pull.
π Logging options
-v,--verbose=LEVELβ sets how chatty the output is:0β none1β errors2β notice (this is the default behavior, bestie)3β debug4β report (very noisy, not very useful here π)
-q,--quietβ an alias for-v0. do not print any debug messages. silence. peace. π§
π¦ Miscellaneous options
--no-colorβ disables output coloring for log messages (stderr only).--modules-directory=DIRβ sets the plowshare modules directory. the default is~/.config/plowshare/modules.d/. you should not modify this unless you're a package maintainer or you're trying to embed plowshare into PHP. fr fr, leave it alone otherwise. π
β Generic program information
-h,--helpβ display the main help and exit. classic.--versionβ output version information and exit. also classic.
β¨ FILES β¨
~/.config/plowshare/modules.d/β the user plowshare modules directory, where repository sources get installed and updated. this location prevails over the ones listed below it. π/usr/share/plowshare/modules/β (replace/usrwith your installation prefix) since plowshare isn't delivered with modules anymore, this one is unused. it's still supported for compatibility purposes, but you are discouraged from using it. it's giving legacy. π~/.config/plowshare/modules/β the obsolete user modules directory. prefer using~/.config/plowshare/modules.d/xxx/instead. respectfully, move on. π
β¨ ENVIRONMENT VARIABLES β¨
the following environment variables may affect plowmod:
HOMEβ search for the user configuration directory in~/.config/plowshare(see the FILES section above).PLOWSHARE_CURLβ specifies an alternatecurlcommand (a$PATHsearch is considered). if it's not defined,curlis used.XDG_CONFIG_HOMEβ the directory to store user configuration files. if it's not defined,~/.configis assumed.
β¨ EXIT CODES β¨
possible exit codes are:
0β operation success. slay. β¨1β fatal error. unexpected result. π8β system generic error.15β unknown command line parameter or incompatible options.
and here's the plot twist: if plowmod is invoked with multiple URLs (command-line arguments) and one or several errors occur, the first error code is returned added with 100. so like, math. but make it chaos. π₯
β¨ AUTHORS β¨
plowshare was initially written by Arnau Sanchez. see the AUTHORS file for a list of some of the many other contributors. π
plowshare is (C) 2010-2016 The Plowshare Team.
β¨ SEE ALSO β¨
plowdown(1), plowup(1), plowdel(1), plowlist(1), plowprobe(1), plowshare.conf(5).
okay that's the whole page!! this beauty is licensed GPL and was dated July 13, 2016, so when you're out here cloning and pulling modules like a pro, just know you're standing on some iconic, slightly vintage shoulders. πβ¨ go manage those modules bestie, you got this π π«Ά
π¦ where this page comes from
- nixos 26.05: plowshare 2.1.7
- nixpkgs unstable: plowshare 2.1.7
- opensuse-leap 16.0: plowshare 2.1.7-bp160.1.4 Β· GPL-3.0+
- ubuntu jammy: plowshare 2.1.7-4 Β· GPL-3.0-or-later
- Copyright (c) 2016 Plowshare Team
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms