Compare commits

..

No commits in common. "f4a84d9358fb539a8d4a197848517ccd6591e6f3" and "6aa9e4a0fbe0b741b8daf0b92732428a918ee52b" have entirely different histories.

4 changed files with 216 additions and 51 deletions

215
Readme.html Normal file
View File

@ -0,0 +1,215 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>Readme</title>
<style>
html {
color: #1a1a1a;
background-color: #fdfdfd;
}
body {
margin: 0 auto;
max-width: 36em;
padding-left: 50px;
padding-right: 50px;
padding-top: 50px;
padding-bottom: 50px;
hyphens: auto;
overflow-wrap: break-word;
text-rendering: optimizeLegibility;
font-kerning: normal;
}
@media (max-width: 600px) {
body {
font-size: 0.9em;
padding: 12px;
}
h1 {
font-size: 1.8em;
}
}
@media print {
html {
background-color: white;
}
body {
background-color: transparent;
color: black;
font-size: 12pt;
}
p, h2, h3 {
orphans: 3;
widows: 3;
}
h2, h3, h4 {
page-break-after: avoid;
}
}
p {
margin: 1em 0;
}
a {
color: #1a1a1a;
}
a:visited {
color: #1a1a1a;
}
img {
max-width: 100%;
}
svg {
height: auto;
max-width: 100%;
}
h1, h2, h3, h4, h5, h6 {
margin-top: 1.4em;
}
h5, h6 {
font-size: 1em;
font-style: italic;
}
h6 {
font-weight: normal;
}
ol, ul {
padding-left: 1.7em;
margin-top: 1em;
}
li > ol, li > ul {
margin-top: 0;
}
blockquote {
margin: 1em 0 1em 1.7em;
padding-left: 1em;
border-left: 2px solid #e6e6e6;
color: #606060;
}
code {
font-family: Menlo, Monaco, Consolas, 'Lucida Console', monospace;
font-size: 85%;
margin: 0;
hyphens: manual;
}
pre {
margin: 1em 0;
overflow: auto;
}
pre code {
padding: 0;
overflow: visible;
overflow-wrap: normal;
}
.sourceCode {
background-color: transparent;
overflow: visible;
}
hr {
background-color: #1a1a1a;
border: none;
height: 1px;
margin: 1em 0;
}
table {
margin: 1em 0;
border-collapse: collapse;
width: 100%;
overflow-x: auto;
display: block;
font-variant-numeric: lining-nums tabular-nums;
}
table caption {
margin-bottom: 0.75em;
}
tbody {
margin-top: 0.5em;
border-top: 1px solid #1a1a1a;
border-bottom: 1px solid #1a1a1a;
}
th {
border-top: 1px solid #1a1a1a;
padding: 0.25em 0.5em 0.25em 0.5em;
}
td {
padding: 0.125em 0.5em 0.25em 0.5em;
}
header {
margin-bottom: 4em;
text-align: center;
}
#TOC li {
list-style: none;
}
#TOC ul {
padding-left: 1.3em;
}
#TOC > ul {
padding-left: 0;
}
#TOC a:not(:hover) {
text-decoration: none;
}
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
div.columns{display: flex; gap: min(4vw, 1.5em);}
div.column{flex: auto; overflow-x: auto;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
/* The extra [class] is a hack that increases specificity enough to
override a similar rule in reveal.js */
ul.task-list[class]{list-style: none;}
ul.task-list li input[type="checkbox"] {
font-size: inherit;
width: 0.8em;
margin: 0 0.8em 0.2em -1.6em;
vertical-align: middle;
}
.display.math{display: block; text-align: center; margin: 0.5rem auto;}
</style>
</head>
<body>
<h1 id="gscripts">GScripts</h1>
<p>A set of scripts which I use in my current Gentoo system, all are
installed through portage and of course are tested to work on my system
and my system alone. Where possible I only use dependencies available in
the main Gentoo repo and each script has the dependencies listed.</p>
<p>All scripts are licensed under the MIT (Expat) License (for more
information on why I give two names for one license please see <a
href="https://www.gnu.org/licenses/license-list.en.html#Expat">what the
GNU project has to say on the matter</a>) I intentionally use the term
MIT license as that is the accepted SPDX license identifier.</p>
<p><em>Coming Eventually:</em> A portage repo that contains my ebuilds
(where I am certain of the accuracy of the license data).</p>
<p>Where scripts have configuration all environment variables are
pseudo-namespaced by <code>$GScripts_&lt;OPTION&gt;</code></p>
<h2 id="the-scripts">The Scripts</h2>
<h3 id="wallchooser">WallChooser</h3>
<p>A simple script that lets you pick a new wallpaper, it automatically
runs all the required steps to generate a new <code>pywal</code> theme
and set the wallpaper using <code>swww</code></p>
<h4 id="requirements">Requirements</h4>
<ul>
<li><code>fzf</code></li>
<li><code>swww</code></li>
<li><code>wal</code></li>
</ul>
<h3 id="barrunner">BarRunner</h3>
<p>A tool to run <code>waybar</code>, Automatically restarting the bar
if any of the required config files are changed. NOTE: This tool is very
much designed around my system and will likely fail to operate properly
for you. It is designed with special handling for different compositors.
And compatibility with <code>pywal</code></p>
<h4 id="arguments">Arguments</h4>
<ul>
<li><code>$1</code> The name of the compositor</li>
<li><code>$2</code> Use <code>pywal</code>? (y|Y|yes triggers pywal
support)</li>
</ul>
<h4 id="requirements-1">Requirements</h4>
<ul>
<li><code>waybar</code></li>
<li><code>inotifywait</code></li>
</ul>
</body>
</html>

View File

@ -30,7 +30,6 @@ wallpaper using `swww`
- `fzf` - `fzf`
- `swww` - `swww`
- `wal` - `wal`
- `bemenu`
### BarRunner ### BarRunner
A tool to run `waybar`, Automatically restarting the bar if any of the A tool to run `waybar`, Automatically restarting the bar if any of the
@ -47,25 +46,3 @@ compatibility with `pywal`
#### Requirements #### Requirements
- `waybar` - `waybar`
- `inotifywait` - `inotifywait`
### blogv
A simple and naive script to read build log entries.
Really just a bunch of pipes in a shellscript file so it has a name.
Heavily depends on portage build logs being done in a specific way
```bash
## Portage logging
PORTAGE_ELOG_CLASSES="info warn error log qa"
PORTAGE_ELOG_SYSTEM="echo save"
PORTAGE_LOGDIR="/var/log/portage"
PORTAGE_LOG_FILTER_FILE_CMD="bash -c \"ansifilter; exec cat\""
PORTAGE_LOGDIR_CLEAN="find "${PORTAGE_LOGDIR}" -type f ! -name "summary.log*" -mtime +30 -delete"
## Change some features
FEATURES="clean-logs \
split-elog \
split-log "
```
#### Requirements
- `fzf`
- `xargs`
- `bat`

View File

@ -12,7 +12,6 @@ depcheck fzf
depcheck swww depcheck swww
depcheck wal depcheck wal
depcheck foot depcheck foot
depcheck bemenu
## Get wallpaper of choice. ## Get wallpaper of choice.
# The single quoted argument of fzf is like that to preserve the variable # The single quoted argument of fzf is like that to preserve the variable
@ -28,15 +27,9 @@ WALLPAPER="$(cat /tmp/WallChooserChoice)"
## First set the wallpaper ## First set the wallpaper
swww img "$WALLPAPER" & swww img "$WALLPAPER" &
THEMETYPE="$(printf "light\ndark" | bemenu -c -l2 -W 0.1)"
## Now trigger pywal to update theme data to match ## Now trigger pywal to update theme data to match
# -n as we don't need to set the wallpaper # -n as we don't need to set the wallpaper
if [ "$THEMETYPE" == "light" ]; then wal -i "$WALLPAPER" -nq
wal -i "$WALLPAPER" -lnq
else
wal -i "$WALLPAPER" -nq
fi
## Now Set the "default" wallpaper symlink ## Now Set the "default" wallpaper symlink
ln -sf "$WALLPAPER" "${GSCRIPTS_WALLPAPERS:-${HOME}/.local/share/backgrounds}/default" ln -sf "$WALLPAPER" "${GSCRIPTS_WALLPAPERS:-${HOME}/.local/share/backgrounds}/default"

20
blogv
View File

@ -1,20 +0,0 @@
#!/bin/bash
# +SPDX:MIT
# A dumb portage build log viewer
# Currently relies on logging being done in a specific way.
# all arguments are sent to bat
## WE NEED SOME DEPENDENCIES
depcheck() {
if ! command -v "$1" &> /dev/null ; then
echo "Missing dependency $1"
exit 1
fi
}
depcheck fzf
depcheck bat
depcheck xargs
# in true unix style this is just a long pipe of pipes
# shellcheck disable=2068
find /var/log/portage/build -type f -iname "*.log" | sed -e 's|/var/log/portage/build/||' -e 's/:.*//' | sort | uniq | fzf | xargs --no-run-if-empty --replace={} find /var/log/portage/build -iwholename "*{}*" | sort | xargs bat ${@}