changes after installing on nixos
parent
650bf9b2a5
commit
5bb64072be
|
@ -43,7 +43,7 @@ alias yv='pipe-viewer --resolution=480p'
|
||||||
alias yd='youtube-dl'
|
alias yd='youtube-dl'
|
||||||
|
|
||||||
#dotfiles configuration alias
|
#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() {
|
note() {
|
||||||
NOTEFILE="$HOME/docs/notes"
|
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
|
#Misc
|
||||||
#feed "VIDS YT Primitive Technology" "https://www.youtube.com/feeds/videos.xml?channel_id=UCAL3JXZSzSm8AlZyD3nQdBA"
|
#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/*
|
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.
|
#do any computer specific setup here, monitor configs, etc.
|
||||||
include ~/.init.sh
|
include ~/.init.sh
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
mako
|
mako
|
||||||
gammastep-init.sh
|
gammastep-init.sh
|
||||||
udiskie
|
|
||||||
pipewire.sh
|
pipewire.sh
|
||||||
|
udiskie
|
||||||
mpd
|
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