diff --git a/.xinitrc b/.xinitrc index 4cf64fe..5b6933b 100755 --- a/.xinitrc +++ b/.xinitrc @@ -1,26 +1,28 @@ -#!/bin/sh +#!/bin/zsh + +if [ -z "$DBUS_SESSION_BUS_ADDRESS" ]; then + exec dbus-launch --sh-syntax --exit-with-session "$0" +fi export XDG_SESSION_TYPE=x11 export XDG_CURRENT_DESKTOP=dwm export GDK_BACKEND=x11 export QT_QPA_PLATFORM=xcb +export XCURSOR_THEME=Adwaita +export XCURSOR_SIZE=24 xset r rate 200 35 - xinput set-prop "ELAN0709:00 04F3:30A0 Touchpad" "libinput Tapping Enabled" 1 & -xrdb -merge ~/.Xresources -export XCURSOR_THEME=Adwaita -export XCURSOR_SIZE=24 - -xdg-settings set default-web-browser start-mullvad-browser.desktop & - +xrdb -merge ~/.Xresources picom --config ~/.config/picom/picom.conf & -dunst & sxhkd & slstatus & /usr/libexec/polkit-gnome-authentication-agent-1 & -xwallpaper --center files/pics/lain1.png & pulseaudio --start & setxkbmap -option caps:escape & +xwallpaper --zoom files/pics/walls/wallhaven-y8g1el_1920x1080.png & +dunst & +notify-send "test" +brightnessctl -d intel_backlight set 100% exec dwm diff --git a/.zprofile b/.zprofile index 2e93ceb..1f3ea8d 100644 --- a/.zprofile +++ b/.zprofile @@ -1,16 +1,9 @@ -#uutils -for f in /usr/bin/uu-*; do - [[ -x "$f" ]] || continue - cmdname=${f:t} - alias ${cmdname#uu-}="$f" -done #aliasrc alias \ - cp='uu-cp -iv' \ - mv='uu-mv -iv' \ - nf="clear && fastfetch" \ + nf="clear && neofetch" \ emoji="cat ~/.local/share/emoji | grep \$1" \ cst="emacs ~/.config/st/config.h" \ + ls="ls --color=auto" \ ll="ls -hl" \ l="ls -lh" \ la="ls -ahl" \ @@ -37,11 +30,18 @@ alias \ mic="micro" \ nx="nsxiv" \ v="vi" \ - top="btop" \ - htop="btop" \ stx="startx" \ - e="sudo emerge --ask --verbose $1" \ - es="emerge -s $1" + e="doas emerge --ask --verbose $1" \ + vim=nvim \ + es="emerge -s $1" \ + +video() { + mpv "$1" --ytdl-format="bestvideo[height>=720]+bestaudio/best[height>=720]" +} + +videolow() { + mpv "$1" --ytdl-format="bestvideo[height<=720]+bestaudio/best[height<=720]" +} #else grep --color=auto < /dev/null &>/dev/null && alias grep='grep --color=auto' @@ -50,39 +50,10 @@ export PATH="/usr/pkg/sbin:/usr/pkg/bin:$PATH" export PATH="$PATH:/home/coast/.spicetify" export MANPATH="/usr/pkg/man:$MANPATH" export XDG_DATA_DIRS="/var/lib/flatpak/exports/share:$HOME/.local/share/flatpak/exports/share:/usr/local/share:/usr/share" -export EDITOR="emacs" +export EDITOR="nvim" export EIX_LIMIT=0 -fpath=(~/.zsh/completions $fpath) -lsbind() { - print -P "\n" - ls - zle reset-prompt -} -zle -N lsbind -bindkey '^S' lsbind -stty -ixon - -man() { - local topic=$1 - shift - if [[ -n "$topic" && -x "$(command -v uu-$topic)" ]]; then - if man uu-$topic > /dev/null 2>&1; then - command man uu-$topic "$@" - return - fi - fi - command man "$topic" "$@" -} - -woman() { - local topic=$1 - shift - if [[ -n "$topic" && -x "$(command -v uu-$topic)" ]]; then - if woman uu-$topic > /dev/null 2>&1; then - command woman uu-$topic "$@" - return - fi - fi - command woman "$topic" "$@" -} +#bash-like emacs binds for zsh +bindkey -e +#ssh agent +eval $(ssh-agent -s) >/dev/null 2>&1 diff --git a/.zshrc b/.zshrc index 06ec79c..56b2e8f 100644 --- a/.zshrc +++ b/.zshrc @@ -18,7 +18,9 @@ source /usr/share/zsh/site-functions/zsh-autosuggestions.zsh && fpath=(/usr/shar autoload -U colors && colors && setopt prompt_subst ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="fg=5" ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="fg=12" -export PS1="%B%F{#d77189}[%F{#e89cae}%n%F{#d77189}@%M %F{#e6adb8}%~%F{#d77189}]%f%F{#fce9ec}%B$%b%f " export LIBCLANG_PATH=/usr/lib/llvm/20/lib64 source ~/.zprofile +PS1="%B%F{#4b5f61}[%F{#7a8a8d}%n%F{#4b5f61}@%M %F{#4f6469}%~%F{#4b5f61}]%f%F{#b7c0c5}%B%%%b%f " + +export PATH=$PATH:/home/coast/.spicetify diff --git a/config/qutebrowser/autoconfig.yml b/config/qutebrowser/autoconfig.yml new file mode 100644 index 0000000..986632b --- /dev/null +++ b/config/qutebrowser/autoconfig.yml @@ -0,0 +1,10 @@ +# If a config.py file exists, this file is ignored unless it's explicitly loaded +# via config.load_autoconfig(). For more information, see: +# https://github.com/qutebrowser/qutebrowser/blob/main/doc/help/configuring.asciidoc#loading-autoconfigyml +# DO NOT edit this file by hand, qutebrowser will overwrite it. +# Instead, create a config.py - see :help for details. + +config_version: 2 +settings: + content.javascript.clipboard: + https://chatgpt.com: access-paste diff --git a/config/qutebrowser/bookmarks/urls b/config/qutebrowser/bookmarks/urls new file mode 100644 index 0000000..e69de29 diff --git a/config/qutebrowser/config.py b/config/qutebrowser/config.py new file mode 100644 index 0000000..87e98e5 --- /dev/null +++ b/config/qutebrowser/config.py @@ -0,0 +1,47 @@ +config.load_autoconfig(False) + +config.set( + 'content.headers.user_agent', + 'Mozilla/5.0 (Windows; Windows NT 10.1; Win64; x64; en-US) ' + 'AppleWebKit/640.0.0 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/640.0.0' +) + + +c.url.searchengines = { + "DEFAULT": "https://priv.au/search?q={}" +} + +c.url.start_pages = "https://priv.au" +c.url.default_page = "https://priv.au" + +c.aliases['tab-new'] = 'open -t' +c.aliases['tabnew'] = 'open -t' + +# Adblocking info --> +# For yt ads: place the greasemonkey script yt-ads.js in your greasemonkey folder (~/.config/qutebrowser/greasemonkey). +# The script skips through the entire ad, so all you have to do is click the skip button. +# Yeah it's not ublock origin, but if you want a minimal browser, this is a solution for the tradeoff. +# You can also watch yt vids directly in mpv, see qutebrowser FAQ for how to do that. +# If you want additional blocklists, you can get the python-adblock package, or you can uncomment the ublock lists here. +c.content.blocking.enabled = True +# c.content.blocking.method = 'adblock' # uncomment this if you install python-adblock +# c.content.blocking.adblock.lists = [ +# "https://github.com/ewpratten/youtube_ad_blocklist/blob/master/blocklist.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/legacy.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/filters.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/filters-2020.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/filters-2021.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/filters-2022.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/filters-2023.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/filters-2024.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/badware.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/privacy.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/badlists.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/annoyances.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/annoyances-cookies.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/annoyances-others.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/badlists.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/quick-fixes.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/resource-abuse.txt", +# "https://github.com/uBlockOrigin/uAssets/raw/master/filters/unbreak.txt"] + diff --git a/config/qutebrowser/greasemonkey/yt-ads.js b/config/qutebrowser/greasemonkey/yt-ads.js new file mode 100644 index 0000000..932fd29 --- /dev/null +++ b/config/qutebrowser/greasemonkey/yt-ads.js @@ -0,0 +1,19 @@ +// ==UserScript== +// @name Auto Skip YouTube Ads +// @version 1.1.0 +// @description Speed up and skip YouTube ads automatically +// @author jso8910 and others +// @match *://*.youtube.com/* +// ==/UserScript== + + +document.addEventListener('load', () => { + const btn = document.querySelector('.videoAdUiSkipButton,.ytp-ad-skip-button-modern') + if (btn) { + btn.click() + } + const ad = [...document.querySelectorAll('.ad-showing')][0]; + if (ad) { + document.querySelector('video').currentTime = 9999999999; + } +}, true); diff --git a/config/qutebrowser/quickmarks b/config/qutebrowser/quickmarks new file mode 100644 index 0000000..e69de29 diff --git a/dwm/config.h b/dwm/config.h index 22eea52..a07b858 100644 --- a/dwm/config.h +++ b/dwm/config.h @@ -10,7 +10,7 @@ static const unsigned int gappoh = 8; /* horiz outer gap between window static const unsigned int gappov = 8; /* vert outer gap between windows and screen edge */ static const int smartgaps_fact = 1; /* gap factor when there is only one client; 0 = no gaps, 3 = 3x outer gaps */ static const int showbar = 1; /* 0 means no bar */ -static const int topbar = 0; /* 0 means bottom bar */ +static const int topbar = 1; /* 0 means bottom bar */ /* Status is to be shown on: -1 (all monitors), 0 (a specific monitor by index), 'A' (active monitor) */ static const int statusmon = 'A'; diff --git a/dwm/dwm b/dwm/dwm index 55e071f..a341f7c 100755 Binary files a/dwm/dwm and b/dwm/dwm differ diff --git a/dwm/dwm.o b/dwm/dwm.o index 3fecd05..ca5dd55 100644 Binary files a/dwm/dwm.o and b/dwm/dwm.o differ diff --git a/local/bin/ecop b/local/bin/ecop new file mode 100755 index 0000000..6bdb7c3 --- /dev/null +++ b/local/bin/ecop @@ -0,0 +1,2 @@ +#!/bin/zsh +xclip -sel clipboard