├── .bash_profile ├── .bashrc ├── .gitattributes ├── .gitconfig ├── .gitignore ├── .inputrc ├── ags ├── .gitignore ├── app.ts ├── env.d.ts ├── package.json ├── run.sh ├── src │ ├── util.ts │ └── widget │ │ ├── AsciiCava.tsx │ │ ├── Board1.tsx │ │ ├── Board2.tsx │ │ ├── Board3.tsx │ │ ├── PoweMenu.tsx │ │ ├── SystemMonitor.tsx │ │ └── TogglePowerMenu.tsx ├── style.scss └── tsconfig.json ├── bat └── bat.config ├── cava └── config ├── clipse ├── config.json └── custom_theme.json ├── code-flags.conf ├── fastfetch ├── amongus.txt ├── config.jsonc └── logo.txt ├── fcitx5 ├── conf │ ├── cached_layouts │ ├── chttrans.conf │ ├── classicui.conf │ ├── cloudpinyin.conf │ ├── notifications.conf │ ├── pinyin.conf │ ├── punctuation.conf │ └── quickphrase.conf ├── config └── profile ├── gtk-3.0 ├── bookmarks ├── libadwaita-tweaks.css ├── libadwaita.css └── settings.ini ├── kitty ├── current-theme.conf ├── kitty.conf └── kitty.conf.bak ├── lazygit └── config.yml ├── ly-config.ini ├── ly └── config.ini ├── mpv ├── input.conf ├── mpv.conf └── scripts │ └── pause-replay.lua ├── niri ├── config.kdl ├── config.kdl.bak └── fire-close.frag ├── nwg-drawer └── drawer.css ├── spicetify └── config-xpui.ini ├── spotify-launcher.conf ├── ssh-config ├── starship.toml ├── swaync ├── README.md ├── config.json └── style.css ├── tray-tui └── config.toml ├── wallpaper ├── chill │ ├── Biryulyovo_Zapadnoye_District-blur.webp │ ├── Biryulyovo_Zapadnoye_District.webp │ ├── snowmoutain-lake.jpg │ ├── snowmoutain-night.png │ ├── wallhaven-0wyj16.jpg │ ├── wallhaven-d5wlmj.jpg │ ├── wallhaven-kxw957.jpg │ └── wallhaven-oxxkz9.jpg ├── red.png └── simple.png ├── way-edges ├── .prettierrc ├── config.jsonc └── schema.json └── yazi ├── init.lua ├── keymap.toml ├── keymap.toml.bak ├── package.toml ├── plugins ├── chmod.yazi │ ├── LICENSE │ ├── README.md │ └── main.lua ├── full-border.yazi │ ├── LICENSE │ ├── README.md │ └── main.lua ├── max-preview.yazi │ ├── LICENSE │ ├── README.md │ └── main.lua ├── toggle-view.yazi │ ├── LICENSE │ ├── README.md │ └── main.lua └── what-size.yazi │ ├── LICENSE │ ├── README.md │ └── main.lua ├── theme.toml └── yazi.toml /.bash_profile: -------------------------------------------------------------------------------- 1 | # 2 | # ~/.bash_profile 3 | # 4 | 5 | [[ -f ~/.bashrc ]] && . ~/.bashrc 6 | 7 | export PATH=/home/ogios/go/bin:/home/ogios/.cargo/bin:$PATH 8 | 9 | export PATH="/home/ogios/.bun/bin:$PATH" 10 | 11 | export PATH="$PATH:/home/ogios/.local/bin" 12 | # Created by $(pipx) on 2024-11-12 10:24:56 13 | 14 | # Load pyenv automatically by appending 15 | # the following to 16 | # ~/.bash_profile if it exists, otherwise ~/.profile (for login shells) 17 | # and ~/.bashrc (for interactive shells) : 18 | 19 | export PYENV_ROOT="$HOME/.pyenv" 20 | [[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH" 21 | eval "$(pyenv init - bash)" 22 | 23 | # Restart your shell for the changes to take effect. 24 | -------------------------------------------------------------------------------- /.bashrc: -------------------------------------------------------------------------------- 1 | # 2 | # ~/.bashrc 3 | # 4 | 5 | # If not running interactively, don't do anything 6 | [[ $- != *i* ]] && return 7 | 8 | # random number 0-10 9 | function rnum() { 10 | echo -n $((RANDOM % 11)) 11 | } 12 | 13 | sttt scanline -d 0.4 -c "$(rnum)" 14 | 15 | alias ls='ls --color=auto' 16 | alias grep='grep --color=auto' 17 | PS1='[\u@\h \W]\$ ' 18 | 19 | # 设置代理函数 20 | function on() { 21 | export https_proxy=http://127.0.0.1:7890 22 | export http_proxy=http://127.0.0.1:7890 23 | export all_proxy=socks5://127.0.0.1:7890 24 | 25 | git config --global http.proxy http://127.0.0.1:7890 26 | git config --global https.proxy http://127.0.0.1:7890 27 | } 28 | # 取消代理函数 29 | function off() { 30 | unset https_proxy 31 | unset http_proxy 32 | unset all_proxy 33 | 34 | git config --global --unset http.proxy 35 | git config --global --unset https.proxy 36 | } 37 | 38 | eval "$(starship init bash)" 39 | 40 | export MCFLY_RESULTS=50 41 | eval "$(mcfly init bash)" 42 | 43 | # # HSTR configuration - add this to ~/.bashrc 44 | # alias hh=hstr # hh to be alias for hstr 45 | # export HSTR_CONFIG=hicolor # get more colors 46 | # shopt -s histappend # append new history items to .bash_history 47 | # export HISTCONTROL=ignorespace # leading space hides commands from history 48 | # export HISTFILESIZE=10000 # increase history file size (default is 500) 49 | # export HISTSIZE=${HISTFILESIZE} # increase history size (default is 500) 50 | # # ensure synchronization between bash memory and history file 51 | # export PROMPT_COMMAND="history -a; history -n; ${PROMPT_COMMAND}" 52 | # function hstrnotiocsti { 53 | # { READLINE_LINE="$({ &1 1>&3 3>&-)"; } 3>&1 54 | # READLINE_POINT=${#READLINE_LINE} 55 | # } 56 | # # if this is interactive shell, then bind hstr to Ctrl-r (for Vi mode check doc) 57 | # if [[ $- =~ .*i.* ]]; then bind -x '"\C-r": "hstrnotiocsti"'; fi 58 | # export HSTR_TIOCSTI=n 59 | 60 | # Use bash-completion, if available 61 | [[ $PS1 && -f /usr/share/bash-completion/bash_completion ]] && 62 | # . /usr/share/bash-completion/bash_completion 63 | . /usr/share/bash-completion/bash_completion 64 | 65 | alias tserv_start="systemctl --user restart cptserv-server" 66 | alias tserv_close="systemctl --user stop cptserv-server" 67 | 68 | alias ssh-agent-cyg='eval `ssh-agent -s`' 69 | 70 | # yazi 71 | function yy() { 72 | local tmp="$(mktemp -t "yazi-cwd.XXXXXX")" 73 | yazi "$@" --cwd-file="$tmp" 74 | if cwd="$(cat -- "$tmp")" && [ -n "$cwd" ] && [ "$cwd" != "$PWD" ]; then 75 | cd -- "$cwd" 76 | fi 77 | rm -f -- "$tmp" 78 | } 79 | 80 | # default editor 81 | # export EDITOR=neovide 82 | export EDITOR=nvim 83 | 84 | function wre() { 85 | pkill -9 way-edges 86 | nohup way-edges daemon 2>&1 >/tmp/way-edges.log & 87 | } 88 | 89 | # Created by `pipx` on 2024-11-12 10:24:56 90 | # export PATH="$PATH:/home/ogios/.local/bin" 91 | 92 | alias ghc="git clone" 93 | export NEOVIDE_FORK=1 94 | 95 | # fastfetch 96 | yy 97 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | wallpaper/* filter=lfs diff=lfs merge=lfs -text 2 | wallpaper/simple.png filter=lfs diff=lfs merge=lfs -text 3 | wallpaper/chill filter=lfs diff=lfs merge=lfs -text 4 | wallpaper/red.png filter=lfs diff=lfs merge=lfs -text 5 | wallpaper/chill/snowmoutain-night.png filter=lfs diff=lfs merge=lfs -text 6 | wallpaper/chill/wallhaven-0wyj16.jpg filter=lfs diff=lfs merge=lfs -text 7 | wallpaper/chill/wallhaven-d5wlmj.jpg filter=lfs diff=lfs merge=lfs -text 8 | wallpaper/chill/wallhaven-kxw957.jpg filter=lfs diff=lfs merge=lfs -text 9 | wallpaper/chill/wallhaven-oxxkz9.jpg filter=lfs diff=lfs merge=lfs -text 10 | wallpaper/chill/snowmoutain-lake.jpg filter=lfs diff=lfs merge=lfs -text 11 | wallpaper/chill/* filter=lfs diff=lfs merge=lfs -text 12 | -------------------------------------------------------------------------------- /.gitconfig: -------------------------------------------------------------------------------- 1 | [user] 2 | email = ogios@foxmail.com 3 | name = ogios 4 | 5 | ; [url "git@github.com:"] 6 | ; insteadOf = https://github.com/ 7 | 8 | [url "git@github.com-ogios:ogios/"] 9 | insteadOf = git@github.com:ogios/ 10 | 11 | [url "git@github.com-sussybot5258:sussybot5258/"] 12 | insteadOf = git@github.com:sussybot5258/ 13 | 14 | [url "git@github.com-sussybot5258:GreyCatAI/"] 15 | insteadOf = git@github.com:GreyCatAI/ 16 | 17 | 18 | [filter "lfs"] 19 | clean = git-lfs clean -- %f 20 | smudge = git-lfs smudge -- %f 21 | process = git-lfs filter-process 22 | required = true 23 | 24 | [diff "lockb"] 25 | binary = true 26 | textconv = bun 27 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | */ 2 | /* 3 | *.log 4 | 5 | lazygit/state.yml 6 | 7 | !.gitignore 8 | 9 | !bat/** 10 | !btop/** 11 | !cava/** 12 | !foot/** 13 | !kitty 14 | !kitty/** 15 | !lazygit/** 16 | !mpv 17 | !mpv/** 18 | !niri/** 19 | !gtk-3.0 20 | !gtk-3.0/** 21 | !swaync 22 | !swaync/** 23 | !yazi 24 | !yazi/** 25 | !ly 26 | !ly/** 27 | !way-edges 28 | !way-edges/** 29 | !fcitx5 30 | !fcitx5/** 31 | !spicetify 32 | !spicetify/config-xpui.ini 33 | !niri 34 | !niri/** 35 | !clipse 36 | !clipse/** 37 | !wallpaper 38 | !wallpaper/** 39 | !nwg-drawer 40 | !nwg-drawer/** 41 | !fastfetch 42 | !fastfetch/** 43 | !ags 44 | !ags/** 45 | !tray-tui 46 | !tray-tui/** 47 | 48 | !starship.toml 49 | !code-flags.conf 50 | !.bashrc 51 | !.bash_profile 52 | !.gitconfig 53 | !.gitattributes 54 | !ssh-config 55 | !spotify-launcher.conf 56 | !ly-config.ini 57 | !.inputrc 58 | -------------------------------------------------------------------------------- /.inputrc: -------------------------------------------------------------------------------- 1 | "\ek": previous-history 2 | "\ej": next-history 3 | 4 | "\el": "lazygit\n" 5 | "\em": "nvim\n" 6 | "\ei": "neovide\n" 7 | "\eo": "yy\n" 8 | -------------------------------------------------------------------------------- /ags/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | @girs/ 3 | package-lock.json 4 | -------------------------------------------------------------------------------- /ags/app.ts: -------------------------------------------------------------------------------- 1 | import { App } from "astal/gtk4"; 2 | import style from "./style.scss"; 3 | import SystemMonitor from "./src/widget/SystemMonitor"; 4 | import PoweMenu from "./src/widget/PoweMenu"; 5 | import TogglePowerMenu from "./src/widget/TogglePowerMenu"; 6 | 7 | App.start({ 8 | css: style, 9 | main() { 10 | App.get_monitors().map((m) => SystemMonitor(m, "ags-backdrop")); 11 | App.get_monitors().map((m) => SystemMonitor(m, "ags-front")); 12 | App.get_monitors().map(PoweMenu.window); 13 | App.get_monitors().map(TogglePowerMenu.TogglePowerMenu); 14 | }, 15 | requestHandler(request: string, res) { 16 | if (request === "power-menu") { 17 | PoweMenu.toggle(); 18 | } 19 | res(""); 20 | }, 21 | }); 22 | -------------------------------------------------------------------------------- /ags/env.d.ts: -------------------------------------------------------------------------------- 1 | declare const SRC: string 2 | 3 | declare module "inline:*" { 4 | const content: string 5 | export default content 6 | } 7 | 8 | declare module "*.scss" { 9 | const content: string 10 | export default content 11 | } 12 | 13 | declare module "*.blp" { 14 | const content: string 15 | export default content 16 | } 17 | 18 | declare module "*.css" { 19 | const content: string 20 | export default content 21 | } 22 | -------------------------------------------------------------------------------- /ags/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "astal-shell", 3 | "dependencies": { 4 | "astal": "/usr/share/astal/gjs", 5 | "tiny-byte-size": "^1.1.0" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /ags/run.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | GSK_RENDERER=cairo ags run --gtk4 4 | -------------------------------------------------------------------------------- /ags/src/util.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogios/dots/5071752d58b3ca7e97df4a897f78db2310d54321/ags/src/util.ts -------------------------------------------------------------------------------- /ags/src/widget/AsciiCava.tsx: -------------------------------------------------------------------------------- 1 | import Cava from "gi://AstalCava"; 2 | const cava = Cava.get_default()!; 3 | 4 | import { bind, exec, GLib, Variable } from "astal"; 5 | import { Gtk, Widget } from "astal/gtk4"; 6 | 7 | cava?.set_bars(12); 8 | const bars = Variable(""); 9 | const blocks = [ 10 | "\u2581", 11 | "\u2582", 12 | "\u2583", 13 | "\u2584", 14 | "\u2585", 15 | "\u2586", 16 | "\u2587", 17 | "\u2588", 18 | ]; 19 | // Assuming blocks is constant, move it outside 20 | const BLOCKS_LENGTH = blocks.length; 21 | const EMPTY_BARS = "".padEnd(12, "\u2581"); 22 | 23 | export default function AudioVisualizer() { 24 | cava?.connect("notify::values", () => { 25 | const values = cava.get_values(); 26 | const barArray = new Array(values.length); 27 | 28 | for (let i = 0; i < values.length; i++) { 29 | const val = values[i]; 30 | const index = Math.min(Math.floor(val * 8), BLOCKS_LENGTH - 1); 31 | barArray[i] = blocks[index]; 32 | } 33 | 34 | const b = barArray.join(""); 35 | console.log(barArray); 36 | bars.set(b); 37 | }); 38 | 39 | return