Sunday, June 14, 2020

toolbox :: appslist

contents
cli-misc a lot of the install stuffmedia playback, creation, editing
coding Python, misc APInetwork basic connectivity
documentssafety
math/stats minus calculator

Arch :: list of applications


Items marked with an asterik "*" below should be accomplished during install prior to leaving arch-chroot. Remember that $ strace > catchit.txt 2>&1 [command] is our friend, and that there can be some pacman judo required. To safely uninstall without dependency breaking, # pacman -Rs [app] is typically enough. Our old post on cleaning up orphan space is also useful.

system configuration

During install, a few details prior to downloading apps makes life easier. I went over some of these in 2015. Limiting journal size...

# nano /etc/systemd/journald.conf
Storage=auto
SystemMaxUse=200K

CLI (misc)

  • diff: 1MB, # base :: typical: $ diff -s file1.txt file2.txt You can also send it to a file a,s,c.see here. If the result is 180c180 means that we would have to copy line 180 from file1 to line 180 in file2 to make file 2 be like file 1.
  • fdupes: 1MB, # pacman -S fdupes :: cleans ridiculous amounts of duplicate files prior or after backups.
  • htop: 1MB # pacman -S htop :: color informative version of top
  • jmtpfs: 1MB, $ yay -S jmtpfs :: support to plug move files on and off an Android.
  • lshw: 1MB, # pacman -S lshw :: provide info on MB components better than lspci.
  • * nano: 1MB, # pacman -S nano :: light text editor
  • strace: 1MB, # pacman -S strace :: typical: $ strace > catchit.txt 2>&1 [command]
  • * usbutils: 1MB, # pacman -S usbutils :: lsusb, some others
  • archiving utilities. In addition to xarchiver, install all of the various formats or you're just going to get pissed on the occasion when you need a manual or something and have to update your entire system just to get one zip library. Among these are bzip, qzip, lrzip, lz4, lzip, lzop, xz, zstd, zip, unzip, p7zip, and unarchiver, among others.
  • yt-dlp: 1MB, $ yay -S yt-dlp :: seems lately to work more reliably than the parent youtube-dl from which it's forked.

coding

With the advent of Google Collab (essentially Google version of Jupyter notebook but with TensorFlow and so on for deep), this seems less important, however we still occasionally need a sane offline environment.

  • pipenv: 3MB, # pacman -S pipenv :: critical so can do projects (eg TTS) requiring special pip updates and so on without hurting the OS install
  • geany: 1MB, # pacman -S geany :: coding editor.
  • umlet: 1MB, $ yay -S umlet :: a light UML editor. Filetype UXF
  • rclone: 2MB, # pacman -S rclone :: encrypted cloud backups. GUI rclone-browser

documents

LaTeX needs to be installed from, eg, TexLive in a separate directory in ~ somewhere.

  • cups: 12MB, # pacman -S cups, necessary evil if printing. Get the PPD files from the AUR.
  • evince: 14MB, # pacman -S evince basic PDF reading. This comes with the price of gvfs, so another option is okular, which doesn't have the problem of gvfs.
  • xournalpp: 4MB, # pacman -S xournalpp. editing and creating PDF with Huion
  • xsane: 5MB, # pacman -S xsane scanning documents

A problematic aside is what to do with old DOC and DOCX documents possibly on one's system. LibreOffice can do the conversion with a command line , but a person has to install LibreOffice writer (300MB) to get this one feature.

# pacman -S libreoffice-fresh
$ lowriter --convert-to pdf somefile.doc

math/stats

  • PSPP: $ yay -S pspp. GNU version of SPSS. Does most of the functions. GUI: psppire
  • gretl: $ yay -S gretl. Econometrics
  • octave: # pacman -S octave GNU version of MatLab
  • RStudio: R-specific IDE

media

playback

  • vlc: 100MB, # pacman -S vlc :: necessary for speed variance, some obscure filetypes. Also plays playlists and reaches to non-drm streams.
  • xplayer: 7MB, 15 min compilation $ yay -S xplayer :: much lighter than anything else, plays clean, loops.
  • libdvdcss (backup) 8MB # pacman -S libdvdcss :: any kind of backup off a DVD (eg. an old Newhart episode on a 2000 DVD) requires this. Unintuitive errors result without this. Possibly also consider $ yay -S vobcopy, which will decrypt as it copies it over.
  • pipelight, widevine - TBD. support for DRM protected media a la silverlight

creation & editing

  • audacity (sound) 20MB # pacman -S audacity :: necessary for voice recording to view levels in real time. uses PortAudio
  • ffmpeg (sound, video) CLI 20MB # pacman -S ffmpeg:: screencast audio and video capture. ffplay to precheck video.
  • flowblade (video) 20MB $ yay -S flowblade:: does cross-fades of multiple files far too complex in ffmpeg. Open a project, then import MP4's. Avidemux no good for cross-fades. Openshot crashes. Pitivi crashes. However, all of the Pitivi dependencies.... 
    ... are also good for Flowblade. Install them before getting Flowblade off the AUR. Of these, the only critical item is python-cairo. The AUR Flowblade install does not always check for python-cairo and Flowblade will no-start with errors without python-cairo.
  • gimp (JPG, PNG) 20MB # pacman -S gimp:: Swiss army knife
  • goldwave.exe (WAV) 5MB 1 hr due to WINE installation. This 90's app still the easiest and most thorough for polishing sound. See Wine configuration vid below.
  • mlt (video)3MB # pacman -S mlt:: needed for melt command as as well as Flolwblade. Be sure to add # pacman -S rubbberband if using melt commands. melt FAQ.
  • obs-studio (video) 20 MB # pacman -S obs-studio :: mixing media on the fly if want live productions and saving to file.
  • shotcut (slideshow) 20 MB # pacman -S shotcut :: supposedly this is good for making slideshows though I have never tried it. This would be the only reason to install as it's (per Linux usual) worthless for cross-fades (can't adjust overlap consistently). MLT-based.

Wine Configuration (19:58) Chris Titus Tech, 2019. WINE converts Windows system calls to POSIX system calls. Make a bottle for every Windows app.

network

  • * dhcpcd: 3MB, # pacman -S dhcpcd :: important to add before leaving chroot or no internet after post-install reboot. Also disable it in systemd or possible boot hangs.
  • umlet: 1MB, $ yay -S umlet :: a light UML editor. Filetype UXF
  • * ntp: 1MB, # pacman -S ntp :: typical: # ntpdate pool.ntp.org
  • rclone: 2MB, # pacman -S rclone :: encrypted cloud backups. GUI rclone-browser
  • * wpa-supplicant: 1MB, # pacman -S wpa-supplicant ::

graphic

Wine: Google SketchUp. The old
Wine: ConceptDraw ($99)
Wine: VideoMeld64: fonts-corefonts,tahoma DLL's-none,

audio

Wine: GoldWave: fonts-arial,corefonts,tahoma DLL's-none, however errors on ntdll

safety

  • glasswire :: monitor net usage
  • zoneminder :: security camera management

safety - security devices, rules

Our phones and yubico keys are security devices. A cell phone's primary function is a security device, however its communication functions have been conveniently conflated and incorporated. These should be separated of course, and a security device provided for free by the government, since they are the ones who access and benefit from these functions. The phone itself should return to a secure, non-traceable way (unless search warrant) to communicate. Obviously this would inconvenience security agencies, and the collaboration aspects of government and immensely profitable communication agencies. So it will never happen. That is to say, it will happen just as soon as education is reformed for national benefit.

TLDR: These are security devices so that 1) PAM is involved, therefore 2) Udev rules must be written or they will not even be detected by the kernel in lsusb

phone example

  1. #pacman
  2. # nano /etc/udev/rules.d/90-android-tethering.rules
    # Execute pairing program when appropriate
    ACTION=="add|remove", SUBSYSTEM=="net", ATTR{idVendor}=="22d9", ATTR{idProduct}=="276a", ENV{ID_USB_DRIVER}=="rndis_host", SYMLINK+="android"
  3. # udevadm control --reload

yubico example

It's arguably worthwhile to know the model of one's yubikey -- there are perhaps 40 versions. Let's take an older one, though still FIPS compliant. Nowadays we'd want one that's FIDO compliant. The problem is we can't use these FIDO compliant ones on older computers that only have USB-A ports, so it's good to have an older FIPS key and a newer FIDO key. They of course make one to use with a phone as well. When they stop working, it's a PITA to determine. Use of udevadm monitor was my friend. Then I bout a $50 Yubikey 5. I think the old one was UV sensitive somehow. After it had been in the heat it stopped working.

But back to our rule configuration. According to their website...

  1. # pacman -S yubico pam
  2. # nano /etc/udev/rules.d/70-u2f.rules
    # Execute pairing program when appropriate
    ACTION=="add|remove", SUBSYSTEM=="net", ATTR{idVendor}=="22d9", ATTR{idProduct}=="276a", ENV{ID_USB_DRIVER}=="rndis_host", SYMLINK+="android"
  3. # udevadm control --reload

No comments: