changes after installing on nixos
parent
650bf9b2a5
commit
5bb64072be
|
@ -43,7 +43,7 @@ alias yv='pipe-viewer --resolution=480p'
|
|||
alias yd='youtube-dl'
|
||||
|
||||
#dotfiles configuration alias
|
||||
alias config='/usr/bin/git --git-dir=$HOME/.cfg/ --work-tree=$HOME'
|
||||
alias config='git --git-dir=$HOME/.cfg/ --work-tree=$HOME'
|
||||
|
||||
note() {
|
||||
NOTEFILE="$HOME/docs/notes"
|
||||
|
|
|
@ -0,0 +1,163 @@
|
|||
# vim: filetype=neomuttrc
|
||||
# This file contains all of mutt-wizard's default settings.
|
||||
# mutt-wizard will have this file sourced from your muttrc.
|
||||
# In the interest of seamless updating, do not edit this file.
|
||||
# If you want to override any settings, set those in your muttrc.
|
||||
set mailcap_path = /nix/store/szhf8qsrw2y077kj7frl6i804mghd6y3-mutt-wizard-3.2.1/share/mutt-wizard/mailcap:$mailcap_path
|
||||
set mime_type_query_command = "file --mime-type -b %s"
|
||||
set date_format="%y/%m/%d %I:%M%p"
|
||||
set index_format="%2C %Z %?X?A& ? %D %-15.15F %s (%-4.4c)"
|
||||
set sort = 'reverse-date'
|
||||
set smtp_authenticators = 'gssapi:login'
|
||||
set query_command = "abook --mutt-query '%s'"
|
||||
set rfc2047_parameters = yes
|
||||
set sleep_time = 0 # Pause 0 seconds for informational messages
|
||||
set markers = no # Disables the `+` displayed at line wraps
|
||||
set mark_old = no # Unread mail stay unread until read
|
||||
set mime_forward = yes # attachments are forwarded with mail
|
||||
set wait_key = no # mutt won't ask "press key to continue"
|
||||
set fast_reply # skip to compose when replying
|
||||
set fcc_attach # save attachments with the body
|
||||
set forward_format = "Fwd: %s" # format of subject when forwarding
|
||||
set forward_quote # include message in forwards
|
||||
set reverse_name # reply as whomever it was to
|
||||
set include # include message in replies
|
||||
set mail_check=60 # to avoid lags using IMAP with some email providers (yahoo for example)
|
||||
auto_view text/html # automatically show html (mailcap uses lynx)
|
||||
auto_view application/pgp-encrypted
|
||||
#set display_filter = "tac | sed '/\\\[-- Autoview/,+1d' | tac" # Suppress autoview messages.
|
||||
alternative_order text/plain text/enriched text/html
|
||||
bind index,pager i noop
|
||||
bind index,pager g noop
|
||||
bind index \Cf noop
|
||||
|
||||
# General rebindings
|
||||
bind index j next-entry
|
||||
bind index k previous-entry
|
||||
bind attach <return> view-mailcap
|
||||
bind attach l view-mailcap
|
||||
bind editor <space> noop
|
||||
bind index G last-entry
|
||||
bind index gg first-entry
|
||||
bind pager,attach h exit
|
||||
bind pager j next-line
|
||||
bind pager k previous-line
|
||||
bind pager l view-attachments
|
||||
bind index D delete-message
|
||||
bind index U undelete-message
|
||||
bind index L limit
|
||||
bind index h noop
|
||||
bind index l display-message
|
||||
bind index,query <space> tag-entry
|
||||
#bind browser h goto-parent
|
||||
macro browser h '<change-dir><kill-line>..<enter>' "Go to parent folder"
|
||||
bind index,pager H view-raw-message
|
||||
bind browser l select-entry
|
||||
bind pager,browser gg top-page
|
||||
bind pager,browser G bottom-page
|
||||
bind index,pager,browser d half-down
|
||||
bind index,pager,browser u half-up
|
||||
bind index,pager S sync-mailbox
|
||||
bind index,pager R group-reply
|
||||
bind index \031 previous-undeleted # Mouse wheel
|
||||
bind index \005 next-undeleted # Mouse wheel
|
||||
bind pager \031 previous-line # Mouse wheel
|
||||
bind pager \005 next-line # Mouse wheel
|
||||
bind editor <Tab> complete-query
|
||||
|
||||
#set crypt_autosign = yes
|
||||
#set crypt_opportunistic_encrypt = yes
|
||||
#set pgp_self_encrypt = yes
|
||||
#set pgp_default_key = 'your@gpgemailaddre.ss'
|
||||
|
||||
macro index,pager a "<enter-command>set my_pipe_decode=\$pipe_decode pipe_decode<return><pipe-message>abook --add-email<return><enter-command>set pipe_decode=\$my_pipe_decode; unset my_pipe_decode<return>" "add the sender address to abook"
|
||||
macro index \Cr "T~U<enter><tag-prefix><clear-flag>N<untag-pattern>.<enter>" "mark all messages as read"
|
||||
macro index O "<shell-escape>mw -Y<enter>" "run mw -Y to sync all mail"
|
||||
macro index \Cf "<enter-command>unset wait_key<enter><shell-escape>printf 'Enter a search term to find with notmuch: '; read x; echo \$x >~/.cache/mutt_terms<enter><limit>~i \"\`notmuch search --output=messages \$(cat ~/.cache/mutt_terms) | head -n 600 | perl -le '@a=<>;s/\^id:// for@a;$,=\"|\";print@a' | perl -le '@a=<>; chomp@a; s/\\+/\\\\+/ for@a;print@a' \`\"<enter>" "show only messages matching a notmuch pattern"
|
||||
macro index A "<limit>all\n" "show all messages (undo limit)"
|
||||
|
||||
# Sidebar mappings
|
||||
set sidebar_visible = yes
|
||||
set sidebar_width = 20
|
||||
set sidebar_short_path = yes
|
||||
set sidebar_next_new_wrap = yes
|
||||
set mail_check_stats
|
||||
set sidebar_format = '%D%?F? [%F]?%* %?N?%N/? %?S?%S?'
|
||||
bind index,pager \Ck sidebar-prev
|
||||
bind index,pager \Cj sidebar-next
|
||||
bind index,pager \Co sidebar-open
|
||||
bind index,pager \Cp sidebar-prev-new
|
||||
bind index,pager \Cn sidebar-next-new
|
||||
bind index,pager B sidebar-toggle-visible
|
||||
|
||||
# Default index colors:
|
||||
color index yellow default '.*'
|
||||
color index_author red default '.*'
|
||||
color index_number blue default
|
||||
color index_subject cyan default '.*'
|
||||
|
||||
# New mail is boldened:
|
||||
color index brightyellow black "~N"
|
||||
color index_author brightred black "~N"
|
||||
color index_subject brightcyan black "~N"
|
||||
|
||||
# Tagged mail is highlighted:
|
||||
color index brightyellow blue "~T"
|
||||
color index_author brightred blue "~T"
|
||||
color index_subject brightcyan blue "~T"
|
||||
|
||||
# Other colors and aesthetic settings:
|
||||
mono bold bold
|
||||
mono underline underline
|
||||
mono indicator reverse
|
||||
mono error bold
|
||||
color normal default default
|
||||
color indicator brightblack white
|
||||
color sidebar_highlight red default
|
||||
color sidebar_divider brightblack black
|
||||
color sidebar_flagged red black
|
||||
color sidebar_new green black
|
||||
color normal brightyellow default
|
||||
color error red default
|
||||
color tilde black default
|
||||
color message cyan default
|
||||
color markers red white
|
||||
color attachment white default
|
||||
color search brightmagenta default
|
||||
color status brightyellow black
|
||||
color hdrdefault brightgreen default
|
||||
color quoted green default
|
||||
color quoted1 blue default
|
||||
color quoted2 cyan default
|
||||
color quoted3 yellow default
|
||||
color quoted4 red default
|
||||
color quoted5 brightred default
|
||||
color signature brightgreen default
|
||||
color bold black default
|
||||
color underline black default
|
||||
color normal default default
|
||||
|
||||
# Regex highlighting:
|
||||
color header blue default ".*"
|
||||
color header brightmagenta default "^(From)"
|
||||
color header brightcyan default "^(Subject)"
|
||||
color header brightwhite default "^(CC|BCC)"
|
||||
color body brightred default "[\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+" # Email addresses
|
||||
color body brightblue default "(https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+" # URL
|
||||
color body green default "\`[^\`]*\`" # Green text between ` and `
|
||||
color body brightblue default "^# \.*" # Headings as bold blue
|
||||
color body brightcyan default "^## \.*" # Subheadings as bold cyan
|
||||
color body brightgreen default "^### \.*" # Subsubheadings as bold green
|
||||
color body yellow default "^(\t| )*(-|\\*) \.*" # List items as yellow
|
||||
color body brightcyan default "[;:][-o][)/(|]" # emoticons
|
||||
color body brightcyan default "[;:][)(|]" # emoticons
|
||||
color body brightcyan default "[ ][*][^*]*[*][ ]?" # more emoticon?
|
||||
color body brightcyan default "[ ]?[*][^*]*[*][ ]" # more emoticon?
|
||||
color body red default "(BAD signature)"
|
||||
color body cyan default "(Good signature)"
|
||||
color body brightblack default "^gpg: Good signature .*"
|
||||
color body brightyellow default "^gpg: "
|
||||
color body brightyellow red "^gpg: BAD signature from.*"
|
||||
mono body bold "^gpg: Good signature"
|
||||
mono body bold "^gpg: BAD signature from.*"
|
||||
color body red default "([a-z][a-z0-9+-]*://(((([a-z0-9_.!~*'();:&=+$,-]|%[0-9a-f][0-9a-f])*@)?((([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?|[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+)(:[0-9]+)?)|([a-z0-9_.!~*'()$,;:@&=+-]|%[0-9a-f][0-9a-f])+)(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?(#([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?|(www|ftp)\\.(([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?(:[0-9]+)?(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?(#([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?)[^].,:;!)? \t\r\n<>\"]"
|
|
@ -76,4 +76,5 @@ feeds() {
|
|||
#Misc
|
||||
#feed "VIDS YT Primitive Technology" "https://www.youtube.com/feeds/videos.xml?channel_id=UCAL3JXZSzSm8AlZyD3nQdBA"
|
||||
|
||||
feed "NixOS Weekly" "https://weekly.nixos.org/feeds/all.rss.xml"
|
||||
}
|
||||
|
|
|
@ -295,7 +295,7 @@ seat seat0 xcursor_theme Adwaita 10
|
|||
|
||||
include /etc/sway/config.d/*
|
||||
|
||||
exec ~/.local/init/init.sh -i
|
||||
#exec ~/.local/init/init.sh -i ~/.local/init/config-nixos
|
||||
|
||||
#do any computer specific setup here, monitor configs, etc.
|
||||
include ~/.init.sh
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
mako
|
||||
gammastep-init.sh
|
||||
udiskie
|
||||
pipewire.sh
|
||||
udiskie
|
||||
mpd
|
||||
|
|
|
@ -0,0 +1,184 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ # Include the results of the hardware scan.
|
||||
/etc/nixos/hardware-configuration.nix
|
||||
];
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "22.05"; # Did you read the comment?
|
||||
|
||||
# Copy the NixOS configuration file and link it from the resulting system
|
||||
# (/run/current-system/configuration.nix). This is useful in case you
|
||||
# accidentally delete configuration.nix.
|
||||
system.copySystemConfiguration = true;
|
||||
|
||||
#enable nonfree packages
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
nix.extraOptions = "–extra-experimental-features nix-command"
|
||||
;
|
||||
# Use the systemd-boot EFI boot loader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
networking.hostName = "gabriel"; # Define your hostname.
|
||||
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
||||
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
|
||||
|
||||
# Set your time zone.
|
||||
time.timeZone = "America/Chicago";
|
||||
|
||||
# Configure network proxy if necessary
|
||||
# networking.proxy.default = "http://user:password@proxy:port/";
|
||||
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||
|
||||
# Select internationalisation properties.
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
console = {
|
||||
font = "Lat2-Terminus16";
|
||||
#keyMap = "us";
|
||||
useXkbConfig = true; # use xkbOptions in tty.
|
||||
};
|
||||
|
||||
#Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
users.users.alex = {
|
||||
isNormalUser = true;
|
||||
shell = pkgs.zsh;
|
||||
extraGroups = [ "wheel" ]; # Enable ‘sudo’ for the user.
|
||||
packages = with pkgs; [
|
||||
librewolf
|
||||
yt-dlp
|
||||
librewolf
|
||||
zathura
|
||||
lutris
|
||||
sfeed
|
||||
];
|
||||
};
|
||||
|
||||
# Some programs need SUID wrappers, can be configured further or are
|
||||
# started in user sessions.
|
||||
programs.mtr.enable = true;
|
||||
|
||||
services.pcscd.enable = true;
|
||||
programs.gnupg.agent = {
|
||||
enable = true;
|
||||
pinentryFlavor = "curses";
|
||||
enableSSHSupport = true;
|
||||
};
|
||||
|
||||
# Open ports in the firewall.
|
||||
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||
# networking.firewall.allowedUDPPorts = [ ... ];
|
||||
# Or disable the firewall altogether.
|
||||
# networking.firewall.enable = false;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
alacritty # gpu accelerated terminal
|
||||
sway
|
||||
#dbus-sway-environment
|
||||
#configure-gtk
|
||||
wayland
|
||||
glib # gsettings
|
||||
dracula-theme # gtk theme
|
||||
gnome3.adwaita-icon-theme # default gnome cursors
|
||||
swaylock
|
||||
swayidle
|
||||
grim # screenshot functionality
|
||||
slurp # screenshot functionality
|
||||
wl-clipboard # wl-copy and wl-paste for copy/paste from stdin / stdout
|
||||
bemenu # wayland clone of dmenu
|
||||
mako # notification system developed by swaywm maintainer
|
||||
swaybg
|
||||
waybar
|
||||
xwayland
|
||||
gammastep
|
||||
zsh
|
||||
noto-fonts
|
||||
noto-fonts-extra
|
||||
noto-fonts-emoji
|
||||
noto-fonts-cjk-sans
|
||||
zip
|
||||
unzip
|
||||
p7zip
|
||||
pavucontrol
|
||||
pamixer
|
||||
pulsemixer
|
||||
imagemagick
|
||||
ffmpegthumbnailer
|
||||
file
|
||||
viu
|
||||
bat
|
||||
imv
|
||||
pavucontrol
|
||||
neovim
|
||||
git
|
||||
shellcheck
|
||||
pfetch
|
||||
htop-vim
|
||||
radeontop
|
||||
lf
|
||||
mpv
|
||||
mpd
|
||||
ncmpcpp
|
||||
libnotify
|
||||
jq
|
||||
lynx
|
||||
mutt-wizard
|
||||
pass
|
||||
neomutt
|
||||
notmuch
|
||||
isync
|
||||
pinentry
|
||||
pinentry-curses
|
||||
pinentry-gtk2
|
||||
];
|
||||
|
||||
#add 32bit support for graphics
|
||||
hardware.opengl.driSupport32Bit = true;
|
||||
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
|
||||
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
|
||||
};
|
||||
|
||||
|
||||
security.rtkit.enable = true;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
|
||||
services.pipewire.wireplumber.enable = true;
|
||||
|
||||
# xdg-desktop-portal works by exposing a series of D-Bus interfaces
|
||||
# known as portals under a well-known name
|
||||
# (org.freedesktop.portal.Desktop) and object path
|
||||
# (/org/freedesktop/portal/desktop).
|
||||
# The portal interfaces include APIs for file access, opening URIs,
|
||||
# printing and others.
|
||||
services.dbus.enable = true;
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
wlr.enable = true;
|
||||
# gtk portal needed to make gtk apps happy
|
||||
extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
||||
gtkUsePortal = true;
|
||||
};
|
||||
|
||||
# enable sway window manager
|
||||
programs.sway = {
|
||||
enable = true;
|
||||
wrapperFeatures.gtk = true;
|
||||
};
|
||||
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
if [ "$#" = "2" ]; then
|
||||
SSID="$1"
|
||||
PASSWORD="$2"
|
||||
|
||||
sudo sh -c "wpa_passphrase $SSID $PASSWORD >> /etc/wpa_supplicant/wpa_supplicant.conf"
|
||||
|
||||
sudo sv restart dhcpcd
|
||||
else
|
||||
echo "$1 = wifi network name (SSID)"
|
||||
echo "$2 = wifi password"
|
||||
fi
|
||||
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
#!/usr/bin/env sh
|
||||
|
||||
AIDIR="$HOME/.local/appimages"
|
||||
|
||||
if [ $1 ]; then
|
||||
AIDIR="$1"
|
||||
fi
|
||||
|
||||
sel=$(ls "$AIDIR" | dmenu -l 5 -p "select AppImage")
|
||||
|
||||
if [ $sel ]; then
|
||||
sh -c $AIDIR/$sel
|
||||
fi
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
#!/bin/sh
|
||||
notify-send "auto-shutdown.sh" "System will power off in 30 minutes."
|
||||
sleep 1500
|
||||
notify-send "auto-shutdown.sh" "System will power off in 5 minutes."
|
||||
sleep 290
|
||||
notify-send "auto-shutdown.sh" "Powering off now."
|
||||
sleep 10
|
||||
sudo poweroff
|
|
@ -1,72 +0,0 @@
|
|||
#!/bin/bash
|
||||
# Variables
|
||||
declare output title layout activetags selectedtags
|
||||
declare -a tags name
|
||||
readonly fname="$HOME"/.cache/dwltags
|
||||
|
||||
|
||||
_cycle() {
|
||||
tags=( "1" "2" "3" "4" "5" "6" "7" "8" "9" )
|
||||
|
||||
# Name of tag (optional)
|
||||
# If there is no name, number are used
|
||||
#
|
||||
# Example:
|
||||
# name=( "" "" "" "Media" )
|
||||
# -> return "" "" "" "Media" 5 6 7 8 9)
|
||||
name=()
|
||||
|
||||
for tag in "${!tags[@]}"; do
|
||||
mask=$((1<<tag))
|
||||
|
||||
tag_name="tag"
|
||||
declare "${tag_name}_${tag}"
|
||||
name[tag]="${name[tag]:-${tags[tag]}}"
|
||||
|
||||
printf -- '%s\n' "${tag_name}_${tag}|string|${name[tag]}"
|
||||
|
||||
if (( "${selectedtags}" & mask )) 2>/dev/null; then
|
||||
printf -- '%s\n' "${tag_name}_${tag}_focused|bool|true"
|
||||
printf -- '%s\n' "title|string|${title}"
|
||||
else
|
||||
printf '%s\n' "${tag_name}_${tag}_focused|bool|false"
|
||||
fi
|
||||
|
||||
if (( "${activetags}" & mask )) 2>/dev/null; then
|
||||
printf -- '%s\n' "${tag_name}_${tag}_occupied|bool|true"
|
||||
else
|
||||
printf -- '%s\n' "${tag_name}_${tag}_occupied|bool|false"
|
||||
fi
|
||||
done
|
||||
|
||||
printf -- '%s\n' "layout|string|${layout}"
|
||||
printf -- '%s\n' ""
|
||||
|
||||
}
|
||||
|
||||
# Call the function here so the tags are displayed at dwl launch
|
||||
_cycle
|
||||
|
||||
while true; do
|
||||
|
||||
[[ ! -f "${fname}" ]] && printf -- '%s\n' \
|
||||
"You need to redirect dwl stdout to ~/.cache/dwltags" >&2
|
||||
|
||||
inotifywait -qq --event modify "${fname}"
|
||||
|
||||
# Get info from the file
|
||||
output="$(tail -n4 "${fname}")"
|
||||
title="$(echo "${output}" | grep title | cut -d ' ' -f 3- )"
|
||||
#selmon="$(echo "${output}" | grep 'selmon')"
|
||||
layout="$(echo "${output}" | grep layout | cut -d ' ' -f 3- )"
|
||||
|
||||
# Get the tag bit mask as a decimal
|
||||
activetags="$(echo "${output}" | grep tags | awk '{print $3}')"
|
||||
selectedtags="$(echo "${output}" | grep tags | awk '{print $4}')"
|
||||
|
||||
_cycle
|
||||
|
||||
done
|
||||
|
||||
unset -v output title layout activetags selectedtags
|
||||
unset -v tags name
|
|
@ -1,43 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
#run at startup in background to get notifications
|
||||
# put it in .xinitrc as:
|
||||
# sh -c 'tiramisu | notify.sh' &
|
||||
# or
|
||||
# sh ~/.local/scripts/notify.sh &
|
||||
#
|
||||
# requires tiramisu and herbe to work.
|
||||
# https://github.com/Sweets/tiramisu
|
||||
# https://github.com/dudik/herbe
|
||||
#
|
||||
# if input is piped into this script it will source that.
|
||||
# if the script is run by itself, it will run tiramisu on its own
|
||||
|
||||
|
||||
handle() {
|
||||
case "$line" in
|
||||
summary*) SUMMARY="$(echo "$line" | cut -f 2 -d ' ' )";;
|
||||
body*)
|
||||
BODY="$(echo "$line" | cut -f 2 -d ' ' )"
|
||||
herbe "$SUMMARY" "$BODY"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
#had issues running this from .xinitrc, putting in a 1 second sleep fixed it
|
||||
sleep 1
|
||||
|
||||
SUMMARY=""
|
||||
BODY=""
|
||||
|
||||
# Check to see if a pipe exists on stdin.
|
||||
if [ -p /dev/stdin ]; then
|
||||
while IFS= read -r line; do
|
||||
handle "$line"
|
||||
done
|
||||
else
|
||||
tiramisu |
|
||||
while read -r line; do
|
||||
handle "$line"
|
||||
done
|
||||
fi
|
|
@ -1,39 +0,0 @@
|
|||
#!/usr/bin/env sh
|
||||
|
||||
FN="$HOME/.config/color"
|
||||
VFN="$HOME/.config/nvim/colors/color.vim"
|
||||
COLORSDIR="$HOME/.config/colors"
|
||||
|
||||
if [ -z "$1" ]; then
|
||||
SEL="$(echo "$(ls ~/.config/colors)\n PYWAL" | dmenu)"
|
||||
[ -z "$SEL" ] && notify-send "set_colors.sh" "Colors not set" && exit
|
||||
[ "$SEL" = " PYWAL" ] && FILENAME="$HOME/.cache/wal/colors" || FILENAME="$COLORSDIR/$SEL"
|
||||
else
|
||||
[ -f "$1" ] && FILENAME="$1"
|
||||
fi
|
||||
|
||||
mv "$FN" "$FN.bak"
|
||||
rm "$VFN"
|
||||
ENDCOLS="FALSE"
|
||||
#wal -s -t -e -i "$1"
|
||||
|
||||
{ echo "/* color theme set by scripts/set_colors.sh */"
|
||||
echo ""
|
||||
echo "generated from: $FILENAME"
|
||||
echo ""
|
||||
echo "!terminal colors"
|
||||
} >> "$FN"
|
||||
|
||||
COUNT=0
|
||||
while read -r line; do
|
||||
[ -z "$line" ] && echo "broke while loop" && ENDCOLS="TRUE"
|
||||
|
||||
if [ "$ENDCOLS" = "TRUE" ]; then
|
||||
echo "$line" >> "$FN"
|
||||
else
|
||||
echo "#define COLOR$COUNT $line" >> "$FN"
|
||||
COUNT=$((COUNT + 1))
|
||||
fi
|
||||
done < "$FILENAME"
|
||||
|
||||
notify-send "set_colors.sh" "Colors set to $FILENAME"
|
|
@ -1,6 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
LOC="$HOME/media/videos/sleeping"
|
||||
VID="ARTILLERY_ASMR.mp4"
|
||||
|
||||
mpv "$LOC"/"$VID" --loop=inf
|
|
@ -1,46 +0,0 @@
|
|||
#!/bin/sh
|
||||
# baraction.sh for spectrwm status bar
|
||||
|
||||
## DISK
|
||||
hdd() {
|
||||
hdd="$(df -h | grep "/$" | awk '{print $1, $3, $5}')"
|
||||
echo "$hdd"
|
||||
}
|
||||
|
||||
## RAM
|
||||
mem() {
|
||||
mem=`free | awk '/Mem/ {printf "%dM/%dM\n", $3 / 1024.0, $2 / 1024.0 }'`
|
||||
echo "$mem"
|
||||
}
|
||||
|
||||
## CPU
|
||||
cpu() {
|
||||
read cpu a b c previdle rest < /proc/stat
|
||||
prevtotal=$((a+b+c+previdle))
|
||||
sleep 0.5
|
||||
read cpu a b c idle rest < /proc/stat
|
||||
total=$((a+b+c+idle))
|
||||
cpu=$((100*( (total-prevtotal) - (idle-previdle) ) / (total-prevtotal) ))
|
||||
echo "CPU: $cpu%"
|
||||
}
|
||||
|
||||
## VOLUME
|
||||
vol() {
|
||||
vol=$(amixer get Master | awk -F'[][]' 'END{ print $4":"$2 }' | sed 's/on://g')
|
||||
#vol="$(pulsemixer --get-volume | awk '{print $1}')"
|
||||
|
||||
echo "VOL: $vol"
|
||||
}
|
||||
|
||||
SLEEP_SEC=15
|
||||
#loops forever outputting a line every SLEEP_SEC secs
|
||||
echo "$$" > ~/.cache/statusbar_pid
|
||||
|
||||
# It seems that we are limited to how many characters can be displayed via
|
||||
# the baraction script output. And the the markup tags count in that limit.
|
||||
# So I would love to add more functions to this script but it makes the
|
||||
# echo output too long to display correctly.
|
||||
while :; do
|
||||
echo "+@fg=1; +@fn=1;💻+@fn=0; $(cpu) +@fg=0; | +@fg=2; +@fn=1;💾+@fn=0; $(mem) +@fg=0; | +@fg=3; +@fn=1;💿+@fn=0; $(hdd) +@fg=0; | +@fg=4; +@fn=1;🔈+@fn=0; $(vol) +@fg=0; |"
|
||||
sleep $SLEEP_SEC
|
||||
done
|
|
@ -1,106 +0,0 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# this script will pull updates from the suckless.org website and merge them into
|
||||
# your local repository.
|
||||
#
|
||||
# suckless.org is assumed to be the upstream url,
|
||||
# if a different url is desired, modify the UPSTREAM_URL variable accordingly
|
||||
|
||||
# This script assumes all suckless repos are in the ~/.local/src/ directory.
|
||||
# If your repos are in a different location, update the REPO_LOC variable accordingly
|
||||
#
|
||||
# These variables can either be modified in the script below directly,
|
||||
# or defined before calling this script, ex:
|
||||
#
|
||||
# export REPO_LOC="https://github.com"
|
||||
# sh supdate.sh -a dwm
|
||||
#
|
||||
# ARGUMENTS USED:
|
||||
# $1 -> -p = pull updates, -m = merge updates, -a = add upstream branch
|
||||
# $2 -> name of program to update, one of: dwm, st, dmenu, surf
|
||||
#
|
||||
|
||||
# HOW TO USE:
|
||||
#
|
||||
# dwm is used as an example here, replace "dwm" with any other suckless program name as needed.
|
||||
# Make sure the name is as it appears in the git url.
|
||||
#
|
||||
# On the first time using this script, add a branch to hold the upstream repo for this repository
|
||||
#
|
||||
# sh supdate.sh -a dwm
|
||||
#
|
||||
# You should first pull any updates to the repository with:
|
||||
#
|
||||
# sh supdate.sh -p dwm
|
||||
#
|
||||
# That will create a temp branch with master merged with upstream updates.
|
||||
# Fix any merge conflicts and commit to the temporary updates branch created above.
|
||||
# Then run merge those updates to master with:
|
||||
#
|
||||
# sh supdate.sh -m dwm
|
||||
#
|
||||
##########################################################################################
|
||||
|
||||
[ -z "$REPO_LOC" ] && REPO_LOC="$HOME/.local/src"
|
||||
[ -z "$UPSTREAM_URL" ] && UPSTREAM_URL="https://git.suckless.org"
|
||||
|
||||
pull_updates() {
|
||||
|
||||
if ! [ "$1" = "" ]; then
|
||||
|
||||
cd "$REPO_LOC"/"$1" || return
|
||||
|
||||
git checkout upstream
|
||||
git remote add upstream "$UPSTREAM_URL"/"$1"
|
||||
git pull upstream master:upstream
|
||||
git checkout -b updates
|
||||
git merge master
|
||||
|
||||
echo "Fix any merge errors here and commit them to branch \"updates\" "
|
||||
echo "Once that is done, run this script with the -m flag to merge these updates to master."
|
||||
else
|
||||
echo "provide name of the program to update, one of: dwm, st, dmenu, surf"
|
||||
fi
|
||||
}
|
||||
|
||||
merge_updates() {
|
||||
|
||||
if ! [ "$1" = "" ]; then
|
||||
|
||||
cd "$REPO_LOC"/"$1" || return
|
||||
|
||||
git checkout master
|
||||
git merge updates
|
||||
git branch -d updates
|
||||
|
||||
sudo make clean install
|
||||
fi
|
||||
}
|
||||
|
||||
add_upstream_branch() {
|
||||
if ! [ "$1" = "" ]; then
|
||||
|
||||
cd "$REPO_LOC"/"$1" || return
|
||||
|
||||
git checkout -b upstream
|
||||
git remote add upstream "$UPSTREAM_URL"/"$1"
|
||||
git fetch --all
|
||||
git reset --hard upstream/master
|
||||
fi
|
||||
}
|
||||
|
||||
help() {
|
||||
echo "\$1 -> -p = pull updates, -m = merge updates"
|
||||
echo "\$2 -> name of program to update, one of: dwm, st, dmenu, surf"
|
||||
}
|
||||
|
||||
if [ "$#" = "2" ]; then
|
||||
case "$1" in
|
||||
-p) pull_updates "$2";;
|
||||
-m) merge_updates "$2";;
|
||||
-a) add_upstream_branch "$2";;
|
||||
*) help;;
|
||||
esac
|
||||
else
|
||||
help
|
||||
fi
|
|
@ -1,6 +0,0 @@
|
|||
#!/bin/sh
|
||||
if [ "$(pgrep picom)" ];then
|
||||
pkill picom
|
||||
else
|
||||
picom &
|
||||
fi
|
|
@ -0,0 +1 @@
|
|||
pinentry-program /run/current-system/sw/bin/pinentry
|
Loading…
Reference in New Issue