version 1.40.130 release 2.140.130
authorChris Koeritz <fred@gruntose.com>
Sun, 14 Nov 2021 14:49:39 +0000 (09:49 -0500)
committerChris Koeritz <fred@gruntose.com>
Sun, 14 Nov 2021 14:49:39 +0000 (09:49 -0500)
ongoing cleanups in scripts, nicer check register template, simple user story
template, simple placard templates for trash and recycling buckets, bug fixes
i'm sure, new scripts for finding newest and oldest files, script for dumping
out all certs in a cert chain PEM file, surprisingly many edits in core files
so need to go back and look at that, but onward to forward progress my mangs.

35 files changed:
documentation/feisty_meow_command_reference.txt
infobase/document_templates/check_register.odt
infobase/document_templates/dry_trash_sign.odp [new file with mode: 0644]
infobase/document_templates/recycling_bin_sign.odp [new file with mode: 0644]
infobase/document_templates/user_story_template.txt [new file with mode: 0644]
infobase/document_templates/wet_trash_sign.odp [new file with mode: 0644]
infobase/fortunes.dat
infobase/patterns/gimp/whiteboard_cleaner_notes.txt
octopi/library/sockets/tcpip_stack.cpp
octopi/library/tests_sockets/makefile
production/feisty_meow_config.ini
readme.txt
scripts/agenda/info_overload_report.sh
scripts/core/common.alias
scripts/core/functions.sh
scripts/core/inventory.sh
scripts/core/is_feisty_up.sh [new file with mode: 0644]
scripts/core/launch_feisty_meow.sh
scripts/core/prep_feisty_host.sh [new file with mode: 0644]
scripts/customize/fred/fred_common.alias
scripts/customize/fred/fred_variables.sh
scripts/customize/fred/scripts/jobby/onedrive_backerer.sh [new file with mode: 0644]
scripts/files/clean_df.sh [new file with mode: 0644]
scripts/files/find_latest_files.sh [new file with mode: 0755]
scripts/generator/build_variables.sh
scripts/multimedia/sound_play.sh
scripts/rev_control/version_control.sh
scripts/rip_burn/blu_burn.sh
scripts/rip_burn/blu_image.sh
scripts/rip_burn/checker_report.sh
scripts/rip_burn/dvd_image.sh
scripts/security/show_all_cert_chains.sh
scripts/system/is_reboot_needed.sh [new file with mode: 0644]
walrus/utilities/ebooks/ebook_readers.txt [new file with mode: 0644]
walrus/utilities/multimedia/multimedia_tools.txt

index 796f7e650b486eab375017ce4088367ccaf93e8b..d885f0fab490cd87581ddd19882300e81ff64895 100644 (file)
@@ -179,8 +179,8 @@ the powerup command, but is not ready yet.)
   avcoreup:
   updates the avcore portion of a site avenger application.  this command can
   accept an application name within which to update, or it can auto-pick the
-  applicatin for you from the available checked out ones in ~/apps (the default
-  storage folder for all site avenger style sites).
+  application for you from the available checked out ones in ~/apps (the
+  default storage folder for all site avenger style sites).
 
   siteup:
   updates the entire checked out repository for a site avenger application.
index fba791b67fe97e4e5166cc57333be63b3e93ada3..150c6a5f0535e7db3456c8a46bc35849107bace0 100644 (file)
Binary files a/infobase/document_templates/check_register.odt and b/infobase/document_templates/check_register.odt differ
diff --git a/infobase/document_templates/dry_trash_sign.odp b/infobase/document_templates/dry_trash_sign.odp
new file mode 100644 (file)
index 0000000..a8129b0
Binary files /dev/null and b/infobase/document_templates/dry_trash_sign.odp differ
diff --git a/infobase/document_templates/recycling_bin_sign.odp b/infobase/document_templates/recycling_bin_sign.odp
new file mode 100644 (file)
index 0000000..ffd2c39
Binary files /dev/null and b/infobase/document_templates/recycling_bin_sign.odp differ
diff --git a/infobase/document_templates/user_story_template.txt b/infobase/document_templates/user_story_template.txt
new file mode 100644 (file)
index 0000000..d5b8eaf
--- /dev/null
@@ -0,0 +1,6 @@
+
+A typical "user story" in Scrum goes like this...
+
+As user/role X, I want feature/item Y, because of business purpose Z.
+
+
diff --git a/infobase/document_templates/wet_trash_sign.odp b/infobase/document_templates/wet_trash_sign.odp
new file mode 100644 (file)
index 0000000..804e104
Binary files /dev/null and b/infobase/document_templates/wet_trash_sign.odp differ
index 312db4a515a140a0977e79d3df988c177191f3b5..69e5f01fce42de2a7a838a5c107b33d27cae8834 100644 (file)
@@ -2609,8 +2609,9 @@ And you may ask yourself  "Am I right?  Am I wrong?"
 And you may say to yourself  "MY GOD!  WHAT HAVE I DONE?"
   -- The Talking Heads
 ~
-The nice thing about standards is that there are
-so many of them to choose from.
+The nice thing about standards is that you have so many to choose from;
+furthermore, if you do not like any of them,
+you can just wait for next year's model.
   -- Andrew S. Tanenbaum
 ~
 A bore is a man who, when you ask him how he is, will tell you.
@@ -35011,8 +35012,8 @@ the bodhimind.
   -- Glenn Mullin, "The Practice of Kalachakra", foreword by H.H. the Dalai
      Lama, published by Snow Lion Publications
 ~
-After suffering severe puncture wounds without shooting any goop on my
-opponent, I realized I was simply outgunned.  Never bring caulk to a
+After suffering severe puncture wounds without shooting any goop on my
+opponent, I realized I was simply outgunned.  Never bring caulk to a
 nailgun fight.
   -- Stephanie S. Thompson
 ~
@@ -42956,7 +42957,7 @@ Without achieving anything, your aim will be spontaneously accomplished.
 Trying to find the pain in life is the renunciation of hinayana.  Trying to
 find the ambition in life, trying to reach higher goals, is the
 bodhisattva's ambition in the mahayana.  Trying to find the subtleties of
-life is the tantric discovery of mystical experience in the vajrayana.   
+life is the tantric discovery of mystical experience in the vajrayana.
   -- Milarepa, from "Milarepa: Lessons from the Life and Songs of Tibet's
      Great Yogi", by Chögyam Trungpa, published by Shambhala Publications
 ~
@@ -43004,7 +43005,7 @@ people need.
     According to the Buddhist point of view, an artist's intention is
 compassion.  Buddhist artists create in order to make a link with other beings
 through their inner pure elements, and to transform their outer ordinary gross
-elements into enlightenment by means of that connection.   
+elements into enlightenment by means of that connection.
   --  Thinley Norbu, from "Magic Dance: The Display of the Self-Nature of the
       Five Wisdom Dakinis", published by Shambhala Publications
 ~
@@ -43110,7 +43111,7 @@ hungry ghosts, animals, humans, and so forth.  When they fall, mentally they
 suffer greatly.  Therefore, sentient beings born in the states of the six
 wanderers have nothing but suffering.  If we think about that, compassion can
 arise.
-  -- Khenchen Thrangu, "Essential Practice: Lectures on KamalashÄ«la's
+  -- Khenchen Thrangu, "Essential Practice: Lectures on KamalashÄ«la's
      Stages of Meditation in the Middle Way School", published by Shambhala
      Publications
 ~
@@ -43129,7 +43130,7 @@ ripened.  The benefit of hearing, thinking, and meditating, in terms of
 causing all persons to possess happiness and the causes of happiness, is
 inconceivable, but if it is not dedicated, then when anger arises, it will be
 destroyed.  This benefit cannot be seen with the eye, but it is inconceivable.
-    -- Kensur Lekden, from "Meditations of a Tibetan Tantric Abbot: The Main
+    -- Kensur Lekden, from "Meditations of a Tibetan Tantric Abbot: The Main
        Practices of the Mahayana Buddhist Path", translated and edited by
        Jeffrey Hopkins, published by Shambhala Publications
 ~
@@ -43153,7 +43154,7 @@ drink now, this lifetime is short.  Our longest condition of life is our
 countless future lives.  If you consider only this which you can see now and
 you do not consider all the future lives which you cannot see, you will incur
 immeasurable fault.  You will harm yourself.
-    -- Kensur Lekden, from "Meditations of a Tibetan Tantric Abbot: The Main
+    -- Kensur Lekden, from "Meditations of a Tibetan Tantric Abbot: The Main
        Practices of the Mahayana Buddhist Path", translated and edited by
        Jeffrey Hopkins, published by Shambhala Publications
 ~
@@ -43248,7 +43249,7 @@ It is better to make an effort.  We have to develop endeavor.
     Thus with patience I will strive with diligence.
     For in such diligence enlightenment is found.
     If no wind blows, then nothing stirs,
-    And neither is there merit without diligence.   
+    And neither is there merit without diligence.
 
   -- H.H. the Fourteenth Dalai Lama, from "The Bodhisattva Guide: A Commentary
      on The Way of the Bodhisattva", The Bodhisattva Guide was originally
@@ -43323,7 +43324,7 @@ What is there to prevent the dawn of Dharma's light?
 Hunger, thirst, cold, and the like--all forms of physical affliction--
 Together with sadness, fear, and all such mental suffering,
 Can, through the teachings, enhance the purifying path
-And, unburdened by avoidance or indulgence, adorn the mind!      
+And, unburdened by avoidance or indulgence, adorn the mind!
 
   -- Patrul Rinpoche, from "Beyond the Ordinary Mind: Dzogchen, Rimé, and the
      Path of Perfect Wisdom", translated by Adam Pearcey, published by
@@ -43379,7 +43380,7 @@ Do not latch onto happiness; do not eliminate misery.
 Thereby everything is accomplished.
 Attachment to pleasure brings misery.
 Total clarity, being non-conceptual,
-Is self-refreshing pristine awareness.   
+Is self-refreshing pristine awareness.
   -- Longchenpa, from "You Are the Eyes of the World", published by Shambhala
      Publications
 ~
@@ -43399,7 +43400,7 @@ The enlightened mind, devoid of concepts
 The sun of fundamental nature, bright and clear,
 Will rise up from within.
 In this realization, changeless and unmoving,
-There is nothing to be added, nothing to remove.   
+There is nothing to be added, nothing to remove.
   -- Longchenpa, from "Finding Rest in Meditation", published by Shambhala
      Publications
 ~
@@ -43502,7 +43503,7 @@ Through the blessings of the divine three foundations,
 May you quickly find the emptiness of your own mind,
 And from the kingdom of the ever-pure great perfection,
 Bring about the great aims of boundless beings.
-    -- from "Gendun Chopel: Tibet's Modern Visionary", by Donald S. Lopez
+    -- from "Gendun Chopel: Tibet's Modern Visionary", by Donald S. Lopez
        Jr., published by Shambhala Publications
 ~
 Parallel to compassion, the Buddhist teachings emphasize loving-kindness--the
@@ -43564,7 +43565,7 @@ transcending suffering.  He said, "If a monk harms others, he is not a monk."
 I am a Buddhist monk, so I try to practice accordingly.  When people think
 this practice is something unique and special and call me a leader of world
 peace, I feel almost ashamed!
-  -- H.H. the Fourteenth Dalai Lama, from "The Bodhisattva Guide", published
+  -- H.H. the Fourteenth Dalai Lama, from "The Bodhisattva Guide", published
      by Shambhala Publications
 ~
 We have talked about impermanence and how painful it is to acknowledge that
@@ -43592,7 +43593,7 @@ Since beginningless time the nature has been peace itself.
 Direct perfect enlightenment [with regard to] all aspects,
 and abandonment of the stains along with their imprints
 [are called] buddha and nirvana respectively.
-In truth, these are not two different things.   
+In truth, these are not two different things.
 
   -- Maitreya, Jamgon Kongtrul Lodro Taye, Khenpo Tsultrim Gyamtso, and
      Asanga in "Buddha Nature: The Mahayana Uttaratantra Shastra with Commentary",
@@ -43620,7 +43621,7 @@ and real.  But here, describing the self as being composed of aggregates can
 help us see ourselves more accurately.  The word skandha can be translated
 literally as "heap." This definition, when applied to ourselves, can help
 us see that we do not have a cohesive, real, and solid self.  We are just a
-heap of stuff — flesh, blood, veins, nerves, bones, hair, cartilage, and so
+heap of stuff--flesh, blood, veins, nerves, bones, hair, cartilage, and so
 on.  When we sort through this heap, what are we actually?  None of the
 elements of the heap is actually "me."  We are a mere mishmash of material
 conditions that we have identified with and labeled "I."
@@ -43635,9 +43636,9 @@ feet.  I get that."  But is it possible for anyone to stand on their own two
 feet without their mother, father, or guardian to guide them?  When we are
 born, we are completely helpless and dependent.  We would never survive
 without the help of others.  There is truly no such thing as autonomy.  So if
-you want to live in accordance with the nature of thingswhich means living
-in gracepractically speaking, it will require some humility and gratitude
-for the ways in which your tradition has come down to you with so much care.   
+you want to live in accordance with the nature of things--which means living
+in grace--practically speaking, it will require some humility and gratitude
+for the ways in which your tradition has come down to you with so much care.
   -- Elizabeth Mattis Namgyel, from "The Logic of Faith: The Buddhist Approach
      to Finding Certainty Beyond Belief and Doubt", published by Shambhala
      Publications
@@ -43652,7 +43653,7 @@ meditation, thoughts are nothing other than impediments to what we are trying
 to do.  So, when we are practicing meditation, we have to maintain the
 attitude, "This is my time to meditate and now I am not trying to think
 thoughts.  If I let myself think, I am wasting this time I have to practice."
-  -- Khenchen Thrangu, from "The Mahamudra Lineage Prayer: A Guide to
+  -- Khenchen Thrangu, from "The Mahamudra Lineage Prayer: A Guide to
      Practice", published by Shambhala Publications
 ~
 The arrogant mind never stops searching for identity, and this identity always
@@ -43662,11 +43663,11 @@ creating a more elaborate persona: "the rebel," "the maverick," "the suffering
 artist," "the fearless leader." We can hold onto these labels on a "good" day.
 But when we feel insecure about our attributes, or our lack thereof, we start
 to wonder how to define ourselves; we wonder who it is we really are.
-Regardless of whether were having a good day or a low self-esteem day, the
-point is, we havent found a way to relax, to be natural, unself-conscious.
-We dont know how to take our seat in ordinariness and feel comfortable in
-our own skin.  We’re always searching for something to be.    
-  -- Dzigar Kongtrul, from "Light Comes Through: Buddhist Teachings on
+Regardless of whether we're having a good day or a low self-esteem day, the
+point is, we haven't found a way to relax, to be natural, unself-conscious.
+We don't know how to take our seat in ordinariness and feel comfortable in
+our own skin.  We're always searching for something to be.
+  -- Dzigar Kongtrul, from "Light Comes Through: Buddhist Teachings on
      Awakening to Our Natural Intelligence", published by Shambhala
      Publications
 ~
@@ -43680,8 +43681,8 @@ Elevate your experience and remain wide-open like the sky.
 Expand your mindfulness and remain pervasive like the earth.
 Steady your attention and remain unshakable like a mountain.
 Brighten your awareness and remain shining like a flame.
-Clear your thought-free wakefulness and remain lucid like a crystal.   
-  -- Dakpo Tashi Namgyal, "Clarifying the Natural State", from "Jewels of
+Clear your thought-free wakefulness and remain lucid like a crystal.
+  -- Dakpo Tashi Namgyal, "Clarifying the Natural State", from "Jewels of
      Enlightenment: Wisdom Teachings from the Great Tibetan Masters", compiled
      and translated by Erik Pema Kunsang, published by Shambhala Publications
 ~
@@ -43958,4 +43959,158 @@ being, regardless of the problem--regardless of how distorted their current
 attitudes and behavior are.  That's how strong spiritual love is.
   -- Jeffrey Hopkins, from "A Truthful Heart: Buddhist Practices for
      Connecting with Others", Shambhala Publications
+~
+this is not confirmed yet, but UVa is changing the name of its funding tokens.
+UVa is moving away from the PTAO payment codes (Project, Task, Award, and
+Organization) to a new acronym using "Cost center, Activity, Program, Spend
+category" or... CAPS!!!
+finally all my hard work in fallout new vegas will be paying off.
+~
+Rob's Meeting Mantra:
+
+Is what I am thinking necessary to say?
+Is it necessary for this to be said by ME?
+Is it necessary for me to say this RIGHT NOW?
+
+  -- Rob Diethorn
+~
+fred's chow mantra:
+  just eat when you're hungry,
+  and be sure you're hungry and not just sating an appetite,
+  because scheduled food times are irrelevant to your body,
+  and can lead to overfeeding unless you're malnourished;
+  so let the body decide when to eat,
+  and use your brain to decide what you feed it.
+    -- fred t. hamster
+~
+No problem can withstand the assault of sustained thinking.
+  -- Voltaire
+~
+Clear thinking requires courage rather than intelligence.
+  -- Thomas Szasz
+~
+Did you ever stop to think, and forget to start again?
+  -- Winnie the Pooh
+~
+It is well for people who think,
+to change their minds occasionally
+in order to keep them clean.
+  -- Luther Burbank
+~
+Language shapes the way we think, and determines what we can think about.
+  -- Benjamin Lee Whorf
+~
+Misery is almost always the result of thinking.
+  -- Joseph Joubert
+~
+Most of the mistakes in thinking
+are inadequacies of perception
+rather than mistakes of logic.
+  -- Edward de Bono
+~
+Thought is the blossom; language the bud; action the fruit behind it.
+  -- Ralph Waldo Emerson
+~
+What we think, we become. -- Shakyamuni Buddha
+~
+pseudo-code for our daily lives:
+
+repeat:
+    if (not one_thing) then { 
+        other_thing 
+    }
+:forever
+~
+U R brilliant,
+U need 2 keep working on that shine,
+U can't lord it over others,
+U R your own completeness as they are theirs.
+    -- fred t. hamster
+~
+and goddess said to me, she said like, "i am omni-sexual and pan-gender...
+bitches."  i apologize for her language, but that's what she said.
+    -- fred t. hamster
+~
+
+vape temperature mantra for cannabis
+(also a haiku if you don't pronounce the numbers...)
+
+  things are tastiest,
+  celsius degrees ranging 164 -> 228,
+  dank vaporizer.
+
+  get lightly toasted 164+,
+  proceed on to half baked at 180+,
+  way fully baked at 200+.
+
+  dude, know when it's cooked,
+  never go over 230 ever,
+  we vape you long time.
+    -- fred t. hamster
+~
+    I found I was able to get a lot of tension off my shoulders by almost
+"outing" myself in the press in that way, in very early circumstances.  So
+I wasn't going to get people crawling out the woodwork saying [seedy, muck-
+raking voice]: "I'll tell you something about David Bowie that you don't
+know..."  I wasn't going to have any of that.  I knew that at some point I
+was going to have to say something about my life.  And, again, Ziggy enabled
+me to make things more comfortable for myself.  There was an excitement that
+the age of exploration was really finally here.  Which is what I was going
+through.  It perfectly mirrored my lifestyle at the time.  It was exactly what
+was happening to me.  There was nothing that I wasn't willing to try, to
+explore and see if it was really part of my psyche or my nature.  I was
+terribly exploratory in every way, not just culturally but sexually and...
+God, there was nothing I would leave alone.  Like a--it's a terrible pun,
+but--like a dog with a bone, I suppose!  So I buried it!
+    The quote has taken on far more in retrospect than actually it was at the
+time.  I'm quite proud that I did it.  On the other hand I didn't want to
+carry a banner for any group of people, and I was as worried about that as
+the aftermath.  Being approached by organisations.  I didn't want that.  I
+didn't feel like part of a group.  I didn't like that aspect of it: this is
+going to start overshadowing my writing and everything else that I do.
+But there you go.
+  -- David Bowie, in Mojo, July 2002
+~
+I am King Gesar of Ling,
+not so long ago named king
+and principal ruler of the six provinces of Ling,
+mandated by the gods to be the destined leader
+and the one to quell the demons of the dark side.
+Since I am the one entrusted with this aspiration,
+my deeds and actions must follow.
+  -- from "The Taming of the Demons: From the Epic of Gesar of Ling",
+     translated by Jane Hawes, David Shapiro, and Lama Chönam, published
+     by Shambhala Publications
+~
+  One of the stories that drew me to Zen was about how one of our Zen
+ancestors responded to both insult and praise.  In this story, Hakuin Zenji
+was falsely accused of impregnating a young girl who lived in the village near
+his hermitage.  When her parents and the villagers came to accuse him, he said
+merely, "Is that so?"
+  When the baby was born, Hakuin received the infant and cared for the child
+with the help of a wet nurse.  Sometime later, the girl confessed to her
+parents that a village boy was the father of her child.  Those who had accused
+him earlier came then to reclaim the child and to praise Hakuin.
+  In response to their praise, he simply said, again, "Is that so?"
+    -- Reb Anderson, from "Entering the Mind of Buddha: Zen and the Six Heroic
+       Practices of Bodhisattvas", published by Shambhala Publications
+~
+One day in a lecture Suzuki Roshi said, "When you see one leaf falling, you
+may say, Oh, autumn is here!  One leaf is not just one leaf; it means the
+whole autumn.  Here you already understand the all-pervading power of your
+practice.  Your practice covers everything."
+  -- Shunryu Suzuki, from "Zen Is Right Here: Teaching Stories and Anecdotes
+     of Shunryu Suzuki, author of Zen Mind, Beginner's Mind", published by
+     Shambhala Publications
+~
+Compared with the force of the all-powerful weapons that exist today, we are
+nothing, even less than ants.  And yet those weapons were not made by demons
+or aliens from another planet.  They were made by humans just like me and
+you...  If we ever press the red button, others will do the same.  If we bomb
+them, bombs will rain on us.  That's cause and effect, and it will just go
+on and on.  So what can we do?  Only one thing can help us: loving-kindness.
+Loving-kindness is the very foundation of a civilized world.
+  -- Chokyi Nyima Rinpoche, from "Sadness, Love, Openness: The Buddhist Path
+     of Joy", published by Shambhala Publications
+~
 
index 9dfb113936e9774a4ee355f85c21c7328127db6f..e68bdab8cc66737f13eca190419dc73570eb3adf 100644 (file)
@@ -1,6 +1,15 @@
 
 how to clean whiteboard snapshots in general:
+
   http://matthew.mceachen.us/blog/how-to-clean-up-photos-of-whiteboards-with-gimp-403.html
+  apparently the URL above is defunct.
+
+  new URL on this topic: https://gist.github.com/adsr303/74b044534914cc9b3345920e8b8234f4
+  requires a bit of gimp knowledge.
+
+====
+
+[untested]
 
 script for whiteboard cleaning in batch can be found in this folder also.
 the batch-whiteboard-clean.scm script should go in: ~/.gimp-2.6/scripts
index bb144e8859a84d3b077c81292d668f8104c552ab..6ef9141c6125350eb9e59e2665d3e7960229ead1 100644 (file)
@@ -35,6 +35,7 @@
 using namespace basis;
 using namespace loggers;
 using namespace structures;
+using namespace textual;
 
 namespace sockets {
 
index 0d8a2cd225e842dec6c6f94935614974d7831454..6b0352c9104cdf73ba053013c644ef4c3db398ee 100644 (file)
@@ -3,14 +3,14 @@ include cpp/variables.def
 PROJECT = tests_sockets
 TYPE = test
 SOURCE = bcast_spocketer.cpp spocket_tester.cpp
-TARGETS = test_address.exe test_bcast_spocket.exe test_enum_adapters.exe \
-  test_sequence_tracker.exe test_span_manager.exe test_spocket.exe test_ucast_spocket.exe 
+TARGETS = test_address.exe test_bcast_spocket.exe test_sequence_tracker.exe \
+  test_span_manager.exe test_spocket.exe test_ucast_spocket.exe 
+ifneq "$(OS_SUBCLASS)" "darwin"
+  TARGETS += test_enum_adapters.exe 
+endif
 LOCAL_LIBS_USED = sockets unit_test application configuration loggers textual timely \
   processes filesystem structures basis 
 VCPP_USE_SOCK = t
-#ifeq "$(COMPILER)" "VISUAL_CPP"
-#  LIBS_USED += ws2_32.lib
-#endif
 RUN_TARGETS = $(ACTUAL_TARGETS)
 
 include cpp/rules.def
index 73d939f1cc47462d510cea76ac6f81d12704063f..08c2c00c7daa5fc82f2082f9b56131c4610fa0c7 100644 (file)
@@ -3,7 +3,7 @@
 # specifies the version of the code that is being constructed here.
 major=2
 minor=140
-revision=129
+revision=130
 build=420
 
 # specifies the remainder of the version record info.
index e77c89ab0756864d5162c4fdf0ce75617550c993..4b52f9ba40223bbbcbd1841ded4e6f63b2ef5e7c 100644 (file)
@@ -15,6 +15,8 @@ If you have stored it elsewhere, then please adapt the commands accordingly.
 
 How to get the feisty meow codebase
 
+These steps assume that you have the "git" tool available.
+
 | On Microsoft Windows, install the Cygwin tools as documented here:
 | /opt/feistymeow.org/feisty_meow/documentation/cygwin_install_list.txt (local file) or
 | https://feistymeow.org/feisty_meow/documentation/cygwin_install_list.txt (web)
@@ -26,6 +28,11 @@ $ git clone git://feistymeow.org/feisty_meow
 
 How to load the feisty meow script environment
 
+Prepare your host by installing the packages needed to bootstrap feisty meow.
+If this fails, then you may need the manual installation steps at the end of
+this file.
+$ bash /opt/feistymeow.org/feisty_meow/scripts/core/prep_feisty_host.sh
+
 Set up the feisty_meow scripts; this is only needed once, when you first get
 the codebase.
 $ bash /opt/feistymeow.org/feisty_meow/scripts/core/reconfigure_feisty_meow.sh
@@ -52,26 +59,6 @@ https://feistymeow.org/feisty_meow/documentation/feisty_meow_command_reference.t
 
 ==============
 
-How to install the feisty meow script dependencies
-
-A couple of perl modules are required by some of the scripts (including the
-differ utility and the feisty meow customization system).  They can be
-installed with either apt or CPAN.
-
-Install using apt (on Ubuntu or Debian-based OS):
-$ sudo apt install libfile-which-perl libtext-diff-perl
-
-Install using yum (on Centos or similar distros):
-$ yum install perl-File-Which perl-Text-Diff
-
-or Install using perl's CPAN:
-$ sudo cpan install Text::Diff File::Which
-
-or on Cygwin (MS-Windows), install with apt-cyg:
-$ apt-cyg install perl-File-Which perl-Text-Diff
-
-==============
-
 How to update the feisty meow codebase to the latest online version
 
 This assumes that a somewhat current version of feisty meow is already
@@ -84,25 +71,6 @@ $ rpuffer $FEISTY_MEOW_APEX ; regenerate
 
 ==============
 
-How to install the build dependencies for feisty meow
-
-These dependencies are used for building the applications, tools and tests
-in the "nucleus", "octopi", "graphiq" and other C++ collections.
-
-| Ubuntu / Debian:
-| $ sudo apt install build-essential librtmp-dev libcurl4-gnutls-dev libssl-dev
-
-| Centos / Redhat / Fedora:
-| $ sudo yum install gcc gcc-c++ openssl-devel.x86_64 curl-devel
-
-The "kona" collection depends on Java version 8 or better.
-
-| Ubuntu:
-| Set up the java PPA archive as described here:
-| https://launchpad.net/~webupd8team/+archive/ubuntu/java
-
-==============
-
 How to build the feisty meow codebase
 
 Run the following command to build the feisty meow libraries and applications.
@@ -155,4 +123,43 @@ More information is available at the official site: https://feistymeow.org
 
 ==============
 
+Manual Installation Steps:
+
+How to install the feisty meow script dependencies...
+
+A couple of perl modules are required by some of the scripts (including the
+differ utility and the feisty meow customization system).  They can be
+installed with either apt or CPAN.
+
+Install using apt (on Ubuntu or Debian-based OS):
+$ sudo apt install libfile-which-perl libtext-diff-perl
+
+Install using yum (on Centos or similar distros):
+$ yum install perl-File-Which perl-Text-Diff
+
+or Install using perl's CPAN:
+$ sudo cpan install Text::Diff File::Which
+
+or on Cygwin (MS-Windows), install with apt-cyg:
+$ apt-cyg install perl-File-Which perl-Text-Diff
+
+How to install the build dependencies for feisty meow...
+
+These dependencies are used for building the applications, tools and tests
+in the "nucleus", "octopi", "graphiq" and other C++ collections.
+
+| Ubuntu / Debian:
+| $ sudo apt install build-essential librtmp-dev libcurl4-gnutls-dev libssl-dev
+
+| Centos / Redhat / Fedora:
+| $ sudo yum install gcc gcc-c++ openssl-devel.x86_64 curl-devel
+
+The "kona" collection depends on Java version 8 or better.
+
+| Ubuntu:
+| Set up the java PPA archive as described here:
+| https://launchpad.net/~webupd8team/+archive/ubuntu/java
+
+==============
+
 
index dcb5f17101dfbb6d50d75370634fd01493aa1461..793f6566e1252921588a256aa6cb5179292f3590 100644 (file)
@@ -112,6 +112,10 @@ full_report+="count\tcomplexity\tweight (kb)\tcategory\n\
 ================================================================\n\
 "
 
+####
+
+# this group is for hierarchies which we expect to have a stable name.
+
 #hmmm: don't fail if the hierarchy doesn't exist.
 
 # high priority stuff would be called urgent.
@@ -145,14 +149,14 @@ analyze_hierarchy_and_report $CLOUD_BASE/blue_sky "blue sky is the limit ideas"
 
 ####
 
-# vocation is a prefix for anything i consider part of my life's work.
-analyze_by_dir_patterns "life's work and other oddities" $CLOUD_BASE/vocation*
+# this group is found based on matching a pattern, since we may not use a single
+# standardized name for it, or maybe there are prefixes for similar items (like project-).
 
 # scan all the items declared as active projects.
 analyze_by_dir_patterns "active issues" $CLOUD_BASE/*active* 
 
-# rub alongside all the travel notes to see if any have interesting burrs.
-analyze_by_dir_patterns "travel plans" $CLOUD_BASE/walkabout*
+# vocation is a prefix for anything i consider part of my life's work.
+analyze_by_dir_patterns "life's work and other oddities" $CLOUD_BASE/vocation*
 
 # scan across all appropriately named project or research folders.
 analyze_by_dir_patterns "running projects" $CLOUD_BASE/*project* $CLOUD_BASE/*research*
@@ -160,12 +164,26 @@ analyze_by_dir_patterns "running projects" $CLOUD_BASE/*project* $CLOUD_BASE/*re
 # look for our mad scientist style efforts.
 analyze_by_dir_patterns "lab experiments" $CLOUD_BASE/*experiment*
 
+# we also are running some businesses.  get those notes in.
+analyze_by_dir_patterns "business ops" $CLOUD_BASE/*business*
+
+# find any charity actions that need to be taken.
+analyze_by_dir_patterns "charitable" $CLOUD_BASE/*charit* 
+
+# rub alongside all the travel notes to see if any have interesting burrs.
+analyze_by_dir_patterns "travel plans" $CLOUD_BASE/*travel*
+
 # snag any work related items for that category.
 analyze_by_dir_patterns "jobby work tasks" $CLOUD_BASE/job* 
 
 # scan all the trivial project folders.
 analyze_by_dir_patterns "trivialities and back burner items" $CLOUD_BASE/trivia* $CLOUD_BASE/backburn*
 
+# okay, fudge.  if there are game tasks, then count them too.  what are they, nothing?  not so.
+analyze_by_dir_patterns "play time and games" $CLOUD_BASE/*gaming* $CLOUD_BASE/*game* 
+
+####
+
 full_report+="================================================================\n\
 "
 full_report+="$(format_report_line "$total_overload" "$total_weight" "$total_complexity" "total overload")"
index 5143f048554525a2d919fd2558be27ee4de39ab2..eb07694026449ded432cac324861b0c7784be51f 100644 (file)
@@ -36,7 +36,7 @@ define_yeti_alias copy='\cp -i -v'
 define_yeti_alias cp='\cp -i -v'
 define_yeti_alias del='perl $FEISTY_MEOW_SCRIPTS/files/safedel.pl'
 define_yeti_alias deltree='perl $FEISTY_MEOW_SCRIPTS/files/safedel.pl'
-define_yeti_alias df='\df -mh'
+define_yeti_alias df='clean_df -h'
 define_yeti_alias dir='perl $FEISTY_MEOW_SCRIPTS/files/summing_dir.pl'
 define_yeti_alias du='\du -h'
 define_yeti_alias erase='perl $FEISTY_MEOW_SCRIPTS/files/safedel.pl'
@@ -68,6 +68,7 @@ define_yeti_alias get_feisty='rpuffer $FEISTY_MEOW_APEX; regenerate'
 define_yeti_alias halt='sudo shutdown -h now'
 define_yeti_alias i=inventory
 define_yeti_alias l='perl $FEISTY_MEOW_SCRIPTS/files/summing_dir.pl'
+define_yeti_alias larch='list_arch'
 define_yeti_alias ll='ls_dot_add=-a perl $FEISTY_MEOW_SCRIPTS/files/summing_dir.pl'
 define_yeti_alias ls='ls -HhFC $color_add'
 define_yeti_alias lsd='ls -hl'
index 35808d2ef59adb74272d552ec025d26da4d682be..c5a4f87daa7cc153a4d3d471a9c0d6e70e80ac67 100644 (file)
@@ -40,11 +40,19 @@ if [ -z "$skip_all" ]; then
   {
     to_find="$1"; shift
     local WHICHER="$(\which which 2>/dev/null)"
+#>&2 echo "got whicher as: $WHICHER"
     if [ $? -ne 0 ]; then
       # there is no which command here.  we produce nothing due to this.
       echo
+      return 2
     fi
-    echo $($WHICHER $to_find 2>/dev/null)
+    local sporkenz  # must be defined local here, before call, or we don't get exit value?!
+    sporkenz=$($WHICHER "$to_find" 2>/dev/null)
+#>&2 echo "broken with this line, but here is exit val: $?"
+    local err=$?
+#>&2 echo "got whicher as: $WHICHER"
+    echo $sporkenz
+    return $err
   }
 
   # makes a directory of the name specified and then tries to change the
@@ -214,27 +222,19 @@ if [ -z "$skip_all" ]; then
   function ssh()
   {
     local args=($@)
-    # we remember the old terminal title, then force the TERM variable to a more generic
-    # version for the other side (just 'linux'); we don't want the remote side still
-    # thinking it's running xterm.
-    save_terminal_title
-
-#hmmm: why were we doing this?  it scorches the user's logged in session, leaving it without proper terminal handling.
-#    # we save the value of TERM; we don't want to leave the user's terminal
-#    # brain dead once we come back from this function.
-#    local oldterm="$TERM"
-#    export TERM=linux
-
+    save_terminal_title  # remember the current terminal title.
     /usr/bin/ssh -C "${args[@]}"
-# removed -Y flag because considered dangerous to trust remote hosts to not abuse our X session.
-
-#    # restore the terminal variable also.
-#    TERM="$oldterm"
+#hmmm: removed -Y flag because considered dangerous to trust remote hosts to not abuse our X session.
+    restore_terminal_title
+  }
 
+  # this version of ssh preserves the use of the -Y flag for when X forwarding is needed.
+  function yssh()
+  {
+    local args=($@)
+    save_terminal_title  # remember the current terminal title.
+    /usr/bin/ssh -Y "${args[@]}"
     restore_terminal_title
-    if [ ! -z "$DEBUG_FEISTY_MEOW" ]; then
-      echo TERM title restored to prior value
-    fi
   }
 
   ##############
@@ -509,9 +509,16 @@ if [ -z "$skip_all" ]; then
     bash $FEISTY_MEOW_SCRIPTS/core/reconfigure_feisty_meow.sh
     echo
     # force a full reload by turning off sentinel variables and methods.
-    unset -v CORE_VARIABLES_LOADED FEISTY_MEOW_LOADING_DOCK USER_CUSTOMIZATIONS_LOADED
+    unset -v CORE_VARIABLES_LOADED FEISTY_MEOW_LOADING_DOCK USER_CUSTOMIZATIONS_LOADED \
+        BUILD_VARS_LOADED
     unalias CORE_ALIASES_LOADED &>/dev/null
     unset -f function_sentinel 
+
+    # reuse the original path if we can.
+    if [ ! -z "$FEISTY_MEOW_ORIGINAL_PATH" ]; then
+      export PATH="$FEISTY_MEOW_ORIGINAL_PATH"
+    fi
+
     # reload feisty meow environment in current shell.
     log_feisty_meow_event "reloading the feisty meow scripts for $USER in current shell."
     source "$FEISTY_MEOW_SCRIPTS/core/launch_feisty_meow.sh"
@@ -769,11 +776,11 @@ return 0
   {
     count=$1; shift
     if [ -z "$count" ]; then
-      count=79
+      count=$(($COLUMNS - 1))
     fi
     echo
     local i
-    for ((i=0; i < $count - 1; i++)); do
+    for ((i=0; i < $count; i++)); do
       echo -n "="
     done
     echo
@@ -941,7 +948,10 @@ return 0
   ##############
 
   # space 'em all: fixes naming for all of the files of the appropriate types
-  # in the directories specified.
+  # in the directories specified.  we skip any file with a dot in front, to
+  # respect their hidden nature.  currently the set of files we'll rename is
+  # very boutique; it's in this function, and just happens to be the types of
+  # files we work with a lot.
   function spacemall() {
     local -a dirs=("${@}")
     if [ ${#dirs[@]} -eq 0 ]; then
@@ -952,9 +962,11 @@ return 0
 #hmmm: any way to do the below more nicely or reusably?
 #hmmm: yes!  a variable with a list of files that are considered TEXT_FILE_EXTENSIONS or something like that.
 #hmmm: yes continued!  also a variable for BINARY_FILE_EXTENSIONS to avoid those, where we need to in other scripts.
+#hmmm: wait, we actually have a mix here, since this is a renaming function and not a searching function; get it straight!
+#hmmm: would the composition of those two types of extensions cover all the files i want to rename?  they have to be "important".
     find "${dirs[@]}" -follow -maxdepth 1 -mindepth 1 -type f -and -not -iname ".[a-zA-Z0-9]*" | \
         grep -i \
-"csv\|doc\|docx\|eml\|html\|jpeg\|jpg\|m4a\|mov\|mp3\|ods\|odt\|pdf\|png\|ppt\|pptx\|rtf\|txt\|vsd\|vsdx\|wav\|xls\|xlsx\|xml\|zip" | \
+"csv\|doc\|docx\|eml\|html\|jpeg\|jpg\|m4a\|mov\|mp3\|odp\|ods\|odt\|pdf\|png\|ppt\|pptx\|rtf\|txt\|vsd\|vsdx\|wav\|xls\|xlsx\|xml\|zip" | \
         sed -e 's/^/"/' | sed -e 's/$/"/' | \
         xargs bash "$FEISTY_MEOW_SCRIPTS/files/spacem.sh"
     # drop the temp file now that we're done.
index aa5b049484f48ea7954c8d8ee917cc62faba3655..d32c86c7933c019b2be138060d2125bacc77c457 100644 (file)
@@ -20,15 +20,16 @@ if [ $OPERATING_SYSTEM == "UNIX" ]; then
 #Usage: sw_vers [-productName|-productVersion|-buildVersion]
     osname="$(sw_vers -productName 2>/dev/null)"
     osver="$(sw_vers -productVersion 2>/dev/null)"
+#echo "osname = '$osname' and osver = '$osver'"
     if [[ "$osver" =~ ^10\.15.*$ ]]; then
       codename="Catalina"
     elif [[ "$osver" =~ ^10\.14.*$ ]]; then
       codename="Mojave"
     elif [[ "$osver" =~ ^10\.13.*$ ]]; then
       codename="High Sierra"
-    elif [[ "$osver" =~ ^11\.*$ ]]; then
+    elif [[ "$osver" =~ ^11\..*$ ]]; then
       codename="Big Sur"
-    elif [[ "$osver" =~ ^12\.*$ ]]; then
+    elif [[ "$osver" =~ ^12\..*$ ]]; then
       codename="Monterey"
     else
       codename="$(sw_vers -buildVersion 2>/dev/null)"
diff --git a/scripts/core/is_feisty_up.sh b/scripts/core/is_feisty_up.sh
new file mode 100644 (file)
index 0000000..1f4b2d8
--- /dev/null
@@ -0,0 +1,26 @@
+#!/bin/bash
+
+# tells the caller if the feisty_meow scripts have been initialized
+# successfully or not, as far as we can tell.
+# any parameter passed will cause us to go into debugging mode.
+
+do_debug="$1"; shift
+
+if [ \
+    -z "$FEISTY_MEOW_APEX" -o \
+    -z "$CORE_VARIABLES_LOADED" -o \
+    -z "$FEISTY_MEOW_LOADING_DOCK" \
+  ]; then
+  if [ ! -z "$do_debug" ]; then
+    echo "Bailing out because a crucial Feisty Meow initialization variable is missing."
+  fi
+  exit 1
+fi
+
+# we got through the minimal gauntlet, so claim we're initialized.
+if [ ! -z "$do_debug" ]; then
+  echo "Looking good for every Feisty Meow initialization variable that we check."
+fi
+exit 0
+
+
index 1e7e6c993f0657d813bfbd0066ad053ef7835244..2f8aca0832a1000cd97cbaa150c5ecb725cf7d0b 100644 (file)
 
 ##############
 
+# first step--capture the current path if we haven't already.
+if [ -z "$FEISTY_MEOW_ORIGINAL_PATH" ]; then
+  export FEISTY_MEOW_ORIGINAL_PATH="$PATH"
+fi
+
+##############
+
 # this script cannot handle figuring out where it lives, so approaches that
 # get the THISDIR will fail.  this is a consequence of this always being used
 # in bash's 'source' directive, which does not pass the script name as
@@ -118,7 +125,7 @@ if [ "$NO_REPAIRS_NEEDED" == "true" ]; then
     # this is our single entry point we can use without knowing any variables
     # yet in the initialization process.
     export FEISTY_MEOW_LOADING_DOCK="$HOME/.zz_feisty_loading"
-  #hmmm: the above is kind of a constant.  that's not so great.
+#hmmm: the above is kind of a constant.  that's not so great.
   
     # make sure our main variables are established.
     FEISTY_MEOW_VARIABLES_LOADING_FILE="$FEISTY_MEOW_LOADING_DOCK/fmc_variables.sh"
diff --git a/scripts/core/prep_feisty_host.sh b/scripts/core/prep_feisty_host.sh
new file mode 100644 (file)
index 0000000..07b95ae
--- /dev/null
@@ -0,0 +1,152 @@
+#!/bin/bash
+
+# this is the feisty meow host preparation script.  it installs all the packages required to run and build feisty meow scripts and applications.
+# this script may still be a bit incomplete; we definitely use a lot of unix and linux tools in different scripts.
+
+# preconditions and dependencies--this script itself depends on:
+#   feisty meow
+#   bash
+#   anything else?
+
+####
+
+# something borrowed...
+function exit_on_error() {
+  if [ $? -ne 0 ]; then
+    echo -e "\n\nan important action failed and this script will stop:\n\n$*\n\n*** Exiting script..."
+    error_sound
+    exit 1
+  fi
+}
+
+####
+
+# load feisty meow environment here, but first test that we *can* load it.
+
+#hmmm: currently, this script needs the system to have already been configured?
+#  that's the implication of calling launch_feisty...
+#  can we find that same bootstrapping code that will reconfigure first?
+#more about this...
+#    hmmm: we need clean starty type approach!  must not expect feisty to already be configured for use!
+#    e.g.?? $ bash /opt/feistymeow.org/feisty_meow/scripts/core/reconfigure_feisty_meow.sh
+#    hmmm: above ALSO ESSENTIAL TO GET RIGHT!
+
+PHASE_MESSAGE="Checking integrity of Feisty Meow subsystem"
+if [ -z $FEISTY_MEOW_APEX ]; then
+  false; exit_on_error $PHASE_MESSAGE
+fi
+
+# simple brute force check.  can we go there?
+pushd $FEISTY_MEOW_APEX &> /dev/null
+exit_on_error locating feisty meow top-level folder
+popd &> /dev/null
+
+# now ask feisty if it's there; should work as long as our scripts are in place.
+bash $FEISTY_MEOW_APEX/scripts/core/is_feisty_up.sh
+exit_on_error $PHASE_MESSAGE
+
+# standard load-up.
+#hmmm: this will currently fail if reconfigure has never been called.
+source "$FEISTY_MEOW_SCRIPTS/core/launch_feisty_meow.sh"
+
+####
+
+# first the crucial bits for scripts to work...
+
+PHASE_MESSAGE="installing perl file and diff modules"
+
+# ubuntu or debian or other apt-based OSes...
+if whichable apt; then
+  sudo apt install libfile-which-perl libtext-diff-perl
+  exit_on_error $PHASE_MESSAGE
+# rpm based with yum available...
+elif whichable yum; then  
+  sudo yum install perl-File-Which perl-Text-Diff
+  exit_on_error $PHASE_MESSAGE
+# macos based...
+elif [ ! -z "$IS_DARWIN" ]; then
+
+#hmmm: not quite right yet...
+  brew install blah blah? lots?
+  exit_on_error $PHASE_MESSAGE
+
+# windows-based with cygwin (or we'll fail out).
+elif [ "$OS" == "Windows_NT" ]; then
+#hmmm: install apt-cyg!
+# we need this to do the following step, so why not automate that?
+# can we at least check for the packages we absolutely need?
+
+#hmmm: can we bootstrap and still survive on the basic cygwin modules if already installed?
+#  then we could use our huge list to get the rest!
+
+#hmmm: is there any other way to get the missing ones, that we need for apt-cyg?
+
+  apt-cyg install perl-File-Which perl-Text-Diff
+  exit_on_error $PHASE_MESSAGE
+fi
+
+####
+
+# then the builder packages...
+
+PHASE_MESSAGE="installing code builder packages"
+
+# ubuntu or debian or other apt-based OSes...
+if whichable apt; then
+  sudo apt install build-essential librtmp-dev libcurl4-gnutls-dev libssl-dev
+  exit_on_error $PHASE_MESSAGE
+# rpm based with yum available...
+elif whichable yum; then  
+  sudo yum install gcc gcc-c++ openssl-devel.x86_64 curl-devel
+  exit_on_error $PHASE_MESSAGE
+# macos based...
+elif [ ! -z "$IS_DARWIN" ]; then
+
+#hmmm: not quite right yet...
+  brew install blork blork? lots?
+  exit_on_error $PHASE_MESSAGE
+
+# windows-based with cygwin (or we'll fail out).
+elif [ "$OS" == "Windows_NT" ]; then
+#hmmm: unknown list needed still...
+  apt-cyg install fugazi combustinatorinibasil scampnific
+  exit_on_error $PHASE_MESSAGE
+fi
+
+####
+
+# install other external packages and whatnot.
+
+#hmmm: anything else to get installed?
+  #hmmm: java?
+  #hmmm: python?
+  #hmmm: perl itself!?
+
+
+####
+
+# get ready to finish up.
+
+#...finishing steps...  if any.
+
+# all done now.
+exit 0
+
+####
+
+
+#############################
+#scav line
+#############################
+
+The "kona" collection depends on Java version 8 or better.
+| Ubuntu:
+| Set up the java PPA archive as described here:
+| https://launchpad.net/~webupd8team/+archive/ubuntu/java
+
+#not needed at the moment.
+#echo "bailing because script is immature.  farts!"
+#exit 1
+
index fc40f19eba5663eaa4aeba71fbf6cf3714f800eb..9ee52c5a130208ea430e8f2589dab137f7750295 100644 (file)
@@ -19,6 +19,8 @@ define_yeti_alias update_soapbox='source "$FEISTY_MEOW_SCRIPTS/archival/general_
 # does the updating thing on the new tiny flat drive that for a while was serving the ps4 shuttle service but now is an honest ext4 drive.
 define_yeti_alias update_slimpickenz='source "$FEISTY_MEOW_SCRIPTS/archival/general_updater.sh"; update_archive_drive "/media/fred/slimpickenz"'
 
+# another drive to update; this is a salvaged 5 tb drive.
+define_yeti_alias update_flabtastic='source "$FEISTY_MEOW_SCRIPTS/archival/general_updater.sh"; update_archive_drive "/media/fred/flabtastic"'
 
 # moo and unmoo mount the local folders i use most.
 #no longer used.  we are doing mostly full directory stores without nfs mounts these days.
index 00f9637bc9d870df4a576fd4d3fd5a8af9539c9d..660bfa647a1c78ace27bb1c7e3a7b94937246e9b 100644 (file)
@@ -2,7 +2,10 @@
 # these are my personal overrides.  --fred.
 
 if [ -z "$USER_CUSTOMIZATIONS_LOADED" ]; then
-  # if we don't see the nethack variable defined, this probably hasn't run yet.
+  # if we don't see the customizations variable defined, this probably hasn't run yet.
+
+  # stuff our special bins in front of the other bin paths.
+  export PATH=/usr/local/fred/bin:$PATH
 
   # The nuage directory is a cloud-like repository of our personal data, managed as a git repo.
   export CLOUD_BASE=$HOME/nuage
diff --git a/scripts/customize/fred/scripts/jobby/onedrive_backerer.sh b/scripts/customize/fred/scripts/jobby/onedrive_backerer.sh
new file mode 100644 (file)
index 0000000..1adfa9b
--- /dev/null
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+# backs up the uva onedrive folder (which itself is fed from the cloud).
+
+source "$FEISTY_MEOW_SCRIPTS/core/launch_feisty_meow.sh"
+
+pushd ~/data
+exit_on_error changing to data folder.
+
+zip -r ~/onedrive_backup_uva_$(date_stringer).zip onedrive-uva-live -x \*.ova -x \*.webarchive 
+exit_on_error zipping up the uva onedrive folder.
+
+
+popd
+
+
diff --git a/scripts/files/clean_df.sh b/scripts/files/clean_df.sh
new file mode 100644 (file)
index 0000000..48d5562
--- /dev/null
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+# so simple but very handy; drops any partitions that we don't care about before showing the df listing.
+
+\df -h "${@}" | grep -v "loop\|udev\|tmpfs"
diff --git a/scripts/files/find_latest_files.sh b/scripts/files/find_latest_files.sh
new file mode 100755 (executable)
index 0000000..2795961
--- /dev/null
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+# find last written files, made friendly for dell by avoiding the .clusterConfig directory.
+
+for pathname in "${@}"; do
+
+  echo ==============
+  echo latest on path: $pathname
+  echo
+  find "$pathname" -path "$pathname/.clusterConfig" -prune -o -type f -print0 | xargs -0 stat --format '%Y :%y %n' | sort -nr | cut -d: -f2- | head -n 20
+
+  echo; echo
+
+done
+
index 3031d317b86ab659da834358d11dd23ccd538c42..6e8fa38e93d7367060b3561a09c8d5eac1aab471 100644 (file)
@@ -181,7 +181,7 @@ if [ -z "$got_bad" ]; then
 
   # where we store the binaries used for building the rest of the code base.
   export CLAM_BINARIES="$RUNTIME_PATH/clam_bin"
-    # the final destination for the new binaries which provide the hoople
+    # the final destination for the new binaries which provide the
     # build with all the applications it needs to get going.
   export TARGETS_STORE="$RUNTIME_PATH/binaries"
     # targets directory is meaningful to clam, which will use it for output.
index 962efd61318fe8493c064e494f2afac4604165f6..382d773852adfab8cca3a66c4c990127355efe05 100644 (file)
@@ -11,20 +11,23 @@ fi
 
 export PLAYCMD=/usr/bin/play
 if [ ! -f "$PLAYCMD" ]; then
-  PLAYCMD=echo
+  PLAYCMD='echo Unknown sound player...'
 fi
 
-if [ ! -z "$(psfind artsd)" ]; then
-  # we see artsd running...
+if [ ! -z "$(which afplay)" ]; then
+#echo we see afplay available...
+  PLAYCMD=afplay
+elif [ ! -z "$(psfind artsd)" ]; then
+#echo we see artsd running...
   PLAYCMD=artsplay
 elif [ ! -z "$(psfind esd)" ]; then
-  # we see esd running...
+#echo  we see esd running...
   PLAYCMD=esdplay
 elif [ ! -z "$(psfind pulseaudio)" ]; then
-  # we see pulse running...
+#echo we see pulse running...
   PLAYCMD="padsp aplay"
 elif [ ! -z "$WINDIR" ]; then
-  # kludge for win32; we provide our own sound player.
+#echo kludge for win32; we provide our own sound player.
   PLAYCMD=playsound
 else
   echo "I don't know how to play sounds for this OS and sound system."
index dcde45c6fcc6468eac2ef38cf1d4be1fa9c356ae..96a8558e8a1d7fa20864e18d5b4b58be38dfeeeb 100644 (file)
@@ -14,6 +14,9 @@ source "$FEISTY_MEOW_SCRIPTS/tty/terminal_titler.sh"
 # the maximum depth that the recursive functions will try to go below the starting directory.
 export MAX_DEPTH=5
 
+# the name of our "don't check this stuff in" file.
+export NO_CHECKIN=".no-checkin"
+
 # use our splitter tool for lengthy output if it's available.
 if [ ! -z "$(whichable splitter)" ]; then
   TO_SPLITTER="$(whichable splitter)"
@@ -61,7 +64,7 @@ function do_revctrl_checkin()
     nicedir=$(\pwd)
   fi
   local blatt_report="echo -ne \nchecking in '$nicedir'...  "
-  local tell_no_checkin="echo -ne \nskipping check-in due to presence of .no-checkin sentinel file: $nicedir"
+  local tell_no_checkin="echo -ne \nskipping check-in due to presence of $NO_CHECKIN sentinel file: $nicedir"
 
   pushd "$directory" &>/dev/null
 #hmmm: overly elaborate sections below here, but we do want precise handling for git case.
@@ -69,8 +72,8 @@ function do_revctrl_checkin()
     if test_writeable "CVS"; then
       do_revctrl_simple_update "$directory"
       exit_on_error "updating repository; this issue should be fixed before check-in."
-      if [ -f ".no-checkin" ]; then
-#        echo -ne "\nskipping check-in due to presence of .no-checkin sentinel file: $directory"
+      if [ -f "$NO_CHECKIN" ]; then
+#        echo -ne "\nskipping check-in due to presence of $NO_CHECKIN sentinel file: $directory"
         $tell_no_checkin
       else
         $blatt_report
@@ -82,8 +85,8 @@ function do_revctrl_checkin()
     if test_writeable ".svn"; then
       do_revctrl_simple_update "$directory"
       exit_on_error "updating repository; this issue should be fixed before check-in."
-      if [ -f ".no-checkin" ]; then
-#        echo -ne "\nskipping check-in due to presence of .no-checkin sentinel file: $directory"
+      if [ -f "$NO_CHECKIN" ]; then
+#        echo -ne "\nskipping check-in due to presence of $NO_CHECKIN sentinel file: $directory"
         $tell_no_checkin
       else
         $blatt_report
@@ -97,8 +100,8 @@ function do_revctrl_checkin()
       # take steps to make sure the branch integrity is good and we're up to date against remote repos.
       do_revctrl_careful_update "$(\pwd)"
 
-      if [ -f ".no-checkin" ]; then
-#        echo -ne "\nskipping check-in due to presence of .no-checkin sentinel file: $directory"
+      if [ -f "$NO_CHECKIN" ]; then
+#        echo -ne "\nskipping check-in due to presence of $NO_CHECKIN sentinel file: $directory"
         $tell_no_checkin
       else
         $blatt_report
@@ -176,8 +179,8 @@ function do_revctrl_report_new
   pushd "$directory" &>/dev/null
 
   # only update if we see a repository living there.
-  if [ -f ".no-checkin" ]; then
-    echo -ne "\nskipping reporting due to presence of .no-checkin sentinel file: $directory"
+  if [ -f "$NO_CHECKIN" ]; then
+    echo -ne "\nskipping reporting due to presence of $NO_CHECKIN sentinel file: $directory"
   elif [ -d ".svn" ]; then
     # this action so far only makes sense and is needed for svn.
     bash $FEISTY_MEOW_SCRIPTS/rev_control/svnapply.sh \? echo
index 33317c0e84fa9ca584f73b0b24d60341a6b2ea2e..f862798d93acedbbb1d482a6b0a887b9b5d26cc9 100644 (file)
@@ -1,6 +1,8 @@
 #!/bin/bash
 
-# burns a bluray disc image onto a physical medium.
+# burns a bluray or dvd data disc image onto a physical medium.
+
+source "$FEISTY_MEOW_SCRIPTS/core/launch_feisty_meow.sh"
 
 function show_usage()
 {
@@ -35,3 +37,5 @@ growisofs -dvd-compat -Z ${device_name}=${iso_name}
 #used to be appended to above line: -speed=2 
 #trying with letting it go default speed.  has been working for us recently.
 
+exit_on_error growing ISO FS from image ${iso_name}
+
index e4d27536f8164518ce48eb8c0374960bd016c03c..04212e540d86e58106637b21d4263a7a14505ab9 100644 (file)
@@ -1,5 +1,9 @@
 #!/bin/bash
 
+# make a dvd data disc image suitable for burning on bluray.
+
+source "$FEISTY_MEOW_SCRIPTS/core/launch_feisty_meow.sh"
+
 function show_usage()
 {
   echo "This script needs two parameters, (1) an ISO file to create, and"
@@ -29,3 +33,5 @@ fi
 
 genisoimage -r -J -joliet-long -o "$iso_name" "$folder_name"
 
+exit_on_error generating ISO image from folder ${folder_name}
+
index 34d844ca35fd6c2a09158be0a8ad13503ba11adf..270a06206d3aa47a38e39dbad2acca4f2f1f2886 100644 (file)
@@ -32,4 +32,3 @@ done <"$temp_file_list"
 
 rm "$temp_file_list"
 
-
index 67c2d54ac88b16d8b5e7a70359d3b84c2fb31470..791d7cba1295eaed83970b198cec8c817d769138 100644 (file)
@@ -1,5 +1,10 @@
 #!/bin/bash
 
+# makes a playable dvd movie disc image from a folder.
+# the folder has to contain a ripped and decrypted DVD.
+
+source "$FEISTY_MEOW_SCRIPTS/core/launch_feisty_meow.sh"
+
 function show_usage()
 {
   echo "This script needs two parameters, (1) an ISO file to create, and"
@@ -30,4 +35,5 @@ fi
 
 mkisofs -dvd-video -o "$iso_name" "$folder_name"
 
+exit_on_error making ISO filesystem from folder ${folder_name}
 
index 1fe4125b13691c05b0935fa137ca6aa8725cfdeb..f36415a0eeb7ff2d75cfba83552aec7776c2587f 100644 (file)
@@ -1,5 +1,10 @@
 #!/bin/bash
 
+# displays every certificate in a PEM file that has a whole certificate chain.
+# this is surprisingly annoying to get anything to output, so we codified it.
+
+# by chris koeritz
+
 file="$1"; shift
 if [ -z "$file" -o ! -f "$file" ]; then
   echo This script requires a PEM-format file name to show the certificates within.
diff --git a/scripts/system/is_reboot_needed.sh b/scripts/system/is_reboot_needed.sh
new file mode 100644 (file)
index 0000000..26d65a7
--- /dev/null
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+# returns an error value if reboot IS required due to some recent
+# updates.  otherwise returns a normal zero exit value indicating
+# that things are peachy.
+
+if [ -f /var/run/reboot-required ]; then
+  echo 'reboot required'
+  exit 1
+fi
+exit 0
+
+#hmmm: add other OS versions, e.g.
+#  redhat/centos: $ needs-restarting -r ; echo $?
+#     shows if needs to be rebooted and returns an error if does need reboot
+#  
diff --git a/walrus/utilities/ebooks/ebook_readers.txt b/walrus/utilities/ebooks/ebook_readers.txt
new file mode 100644 (file)
index 0000000..3a854e4
--- /dev/null
@@ -0,0 +1,5 @@
+
+calibre:
+  current go-to choice for ebook viewer on linux.
+
+
index fafdee11a7c5d4daa704d453d49b564a08618575..e3dbb7942720a7749dcc00c0165ff2ca02a45dc6 100644 (file)
@@ -6,22 +6,31 @@ audio tools
 
 + k3b is good for ripping+converting cd audio to mp3 or other formats.
 
++ asunder is a great ripper for CDs and supports a lot of output formats.
+
 + for lossless music compression, the flac and shorten (shn) formats are
-very nice.  there are some canonical tools for each platform for these.
+  very nice.  there are some canonical tools for each platform for these.
 
 + for converting from ogg and such to mp3 and m4a and such, use the
-gnome tool called 'soundconverter'.
+  gnome tool called 'soundconverter'.
 
++ musicbrainz provides a freedb style gateway for looking up albums, artists and songs...
+  https://wiki.musicbrainz.org/History:FreeDB_Gateway
+  use this instead of the old freedb URL:
+    http://freedb.musicbrainz.org:80/~cddb/cddb.cgi
++ gnudb: works in apps that need exact old freedb format, had more success
+    in asunder with gnudb
+    => gnudb.gnudb.org 8880
 
 --------------------------------
 music library manager and player
 --------------------------------
 
 + lollypop is our current choice for managing a large music library and
-playing back songs in it.
+  playing back songs in it.
 
 + banshee used to be our app of choice for managing our music library, but it
-seems to no longer be updated.
+  seems to no longer be updated.
 
 
 ---------------------------------
@@ -35,8 +44,8 @@ dvd burner and dvd player support
 + for dvd processing, vobcopy is a must.
 
 + for dvd playing and ripping in general, decss is needed.
-it's available in the restricted packages on ubuntu.
-lots of articles describe how to set that up.
+  it's available in the restricted packages on ubuntu.
+  lots of articles describe how to set that up.
 
 + vlc is a good player for dvds.
 
@@ -46,10 +55,10 @@ ripping music using a turntable
 
 audacity is the go-to tool for ripping music from vinyl records
 and many other audio toaster processes:
-http://www.audacityteam.org/
+  http://www.audacityteam.org/
 
 this article helps a lot to get the music off of vinyl records using a usb turntable:
-https://www.linux.com/news/using-usb-turntable-linux
+  https://www.linux.com/news/using-usb-turntable-linux
 
 
 ----------------
@@ -57,26 +66,26 @@ movie processing
 ----------------
 
 avidemux:
-if you need to manipulate a video, for example to rotate it or transcode it to a different
-format, then avidemux works great.
+  if you need to manipulate a video, for example to rotate it or transcode it to a different
+  format, then avidemux works great.
 
 openshot:
-if you need to jam a bunch of videos together, crossfade them, and that kind of stuff,
-then try openshot.  it also supports simple saving with different quality levels, which
-lets you drop a bunch of size at the expense of the picture.  sometimes needed.
+  if you need to jam a bunch of videos together, crossfade them, and that kind of stuff,
+  then try openshot.  it also supports simple saving with different quality levels, which
+  lets you drop a bunch of size at the expense of the picture.  sometimes needed.
 
 ---------------------------
 music collection management
 ---------------------------
 
 dupeguru:
-found this to be pretty helpful in finding my duplicate songs.  it is able to analyze
-when the files are the same, even if their names don't match.
-check: did it even compare by metadata?  not remembering currently.
+  found this to be pretty helpful in finding my duplicate songs.  it is able to analyze
+  when the files are the same, even if their names don't match.
+  check: did it even compare by metadata?  not remembering currently.
 
 fdupes:
-another useful tool for finding duplicate tracks in a music collection, but relies on exact
-matches in the names(?).  was not so powerful as dupeguru, but still useful.
+  another useful tool for finding duplicate tracks in a music collection, but relies on exact
+  matches in the names(?).  was not so powerful as dupeguru, but still useful.
 
 
 -----------------------------
@@ -84,8 +93,8 @@ picture collection management
 -----------------------------
 
 shotwell:
-currently the top picture manipulation and manager tool i use at home.
-the imaginations folder is based on the date management in shotwell.
+  currently the top picture manipulation and manager tool i use at home.
+  the imaginations folder is based on the date management in shotwell.