[-] PseudoSpock@lemmy.dbzer0.com 31 points 2 weeks ago* (last edited 2 weeks ago)

Don't know about everyone else, but here are some of mine:

  • Stick to posix compliance shell code, wherever possible
  • Please wrap your variables with { }. Just please.
  • Global variables being exported in all caps
  • Local variables in lower case
  • $() instead of ` `
  • Comment anything complicated, comment what section, comment usage
  • Include usage output if options are not recognized
  • Use case instead of if / elif, where possible
  • 80 characters or less per line, where possible
  • HERE docs in designated section, marked by comment blocks
  • Comment your functions immediately above it's definition
  • Add comment "#End of function Xyz" at line immediately below a function, with replacing Xyz with name of that function
  • 2 space indentation
  • Multi-line strings: First line open with quote and first line of string, followed by a backslash , subsequent lines properly indented and backslashed. Last line, properly indented and close quoted.
  • Break up multiple piping of commands with |\ and a new line where it makes sense to look nice, assisting readability
  • Echo what the script is doing once in a while if the user will be waiting for a while
  • Please don't do shar archives, or byte located binary extractions, make a script and a separate tarball - Helps a ton if we have to change it, like say... swapping out a bundled java runtime built for x86_64 with one for aarch64
  • If the script will run for a very long time, check for tmux or screen and also the TMOUT variable... Give a warning to the user their connection might time out before the script is done if they don't unset TMOUT, and try using tmux or screen to allow the script to continue in the background, even if you do get disconnected
  • Make use of logger
  • I try to organize a script this way: 1. Shebang, 2. Initial variable definitions, 3. Functions, 4. runtime execution code, which might be best outside of a function, and calling functions. 5. Clean-up (remove pid and lock files, tmp files, etc etc.)
[-] PseudoSpock@lemmy.dbzer0.com 34 points 2 months ago
  1. You are missing two assassinated whistle blowers.
[-] PseudoSpock@lemmy.dbzer0.com 30 points 2 months ago

That's so fetch!

[-] PseudoSpock@lemmy.dbzer0.com 23 points 6 months ago

Sounds like an act of civil war. Spank them... spank them hard, daddy.

[-] PseudoSpock@lemmy.dbzer0.com 28 points 8 months ago

Take that Ubuntu and your PPA that use to not drive people to your snap package!

[-] PseudoSpock@lemmy.dbzer0.com 24 points 8 months ago

I like that... I'll take it. Thank you for putting it that way.

[-] PseudoSpock@lemmy.dbzer0.com 22 points 9 months ago* (last edited 9 months ago)

This is one of those many posts that leaves me wondering, "Why do you want to know?" "What are you going to do with the information?"

[-] PseudoSpock@lemmy.dbzer0.com 28 points 9 months ago* (last edited 9 months ago)

You still have sd devices? /s

[-] PseudoSpock@lemmy.dbzer0.com 24 points 9 months ago

This is an ad.

[-] PseudoSpock@lemmy.dbzer0.com 22 points 10 months ago

You get what you vote for.

[-] PseudoSpock@lemmy.dbzer0.com 26 points 10 months ago

No no, give him to Ukrain, where they can charge and try him. Hopefully end up with life in prison or something better (worse?). Giving him to Russia just makes him more of a Russian asset.

[-] PseudoSpock@lemmy.dbzer0.com 33 points 10 months ago

For one, the snap version is 115 instead of 116, so it's reverting me to an older version, which makes firefox want to wipe my profile. Not ok. Two, I was purposely using the Mozillateam PPA to get non snap installations, and they up and changed that on us with no warning. Then there is the matter that firefox as a snap is slower. And finally, I can't add the Widevine for arm64 plugin to the snap.

Snap for browsers is a terrible idea.

view more: ‹ prev next ›

PseudoSpock

joined 11 months ago