Lee al final del archivo explico por que no funciona el historial.
Ya no uso más fish porque es bloated, ahora solo uso bash y tmux y agrego color con .tty-themes.sh.
$ cat ~/.bash_profile
#
# ~/.bash_profile
#
TTY_THEME_FLAG="$HOME/.tty-theme-applied"
if [[ -z "$DISPLAY" && "$TERM" == "linux" && ! -f "$TTY_THEME_FLAG" ]]; then
~/.tty-themes.sh aurora
touch "$TTY_THEME_FLAG"
fi
$HOME/.tty-themes.sh :
#!/bin/bash
case "$1" in
aurora)
printf '\e]P0001500'
printf '\e]P144dd00'
printf '\e]P200ff44'
printf '\e]P3aaff00'
printf '\e]P400dd88'
printf '\e]P566ffaa'
printf '\e]P600ffaa'
printf '\e]P7aaffcc'
printf '\e]P8ffffff'
printf '\e]P944ff44'
printf '\e]PA00ff00'
printf '\e]PBffff00'
printf '\e]PC00ff00'
printf '\e]PD88ffaa'
printf '\e]PE44ffcc'
printf '\e]PFaaffdd'
echo "Aurora"
;;
ice)
printf '\e]P0001a2e'
printf '\e]P1add8e6'
printf '\e]P241bed9'
printf '\e]P3b0e0e6'
printf '\e]P41e90ff'
printf '\e]P568c8dc'
printf '\e]P6b0c4de'
printf '\e]P7dcdcdc'
printf '\e]P8ffffff'
printf '\e]P9ffffff'
printf '\e]PA00ffff'
printf '\e]PB87cefa'
printf '\e]PC00bfff'
printf '\e]PDb0e0e6'
printf '\e]PE00ced1'
printf '\e]PFf0f8ff'
echo "Ice"
;;
*)
echo "Temas: aurora, ice"
;;
esac
clear
#
# ~/.bashrc
#
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
# If you wanna fish autosuggestions yay -S blesh (bloated)
# [[ $- == *i* ]] && source /usr/share/blesh/ble.sh
alias ls='ls --color=auto'
alias grep='grep --color=auto'
PS1='[\u@\h \W]\$ '
# Only run in interactive shells
[[ $- != *i* ]] && return
# Fuentes western (Terminus)
alias f20='sudo setfont ter-i20n'
alias f22='sudo setfont ter-i14b'
alias f24='sudo setfont ter-i24b'
alias f26='sudo setfont ter-i16b'
alias f28='sudo setfont ter-i28b'
alias f30='sudo setfont ter-i32n'
alias f32='sudo setfont ter-i32b'
export EDITOR=vim
# Fuentes con cirílico (ruso + acentos)
alias fru='sudo setfont latarcyrheb-sun32'
alias f='sudo setfont latarcyrheb-sun16'
alias lgc='sudo setfont LatGrkCyr-12x22.psfu'
echo "Font aliases cargados. Uso: f20, f24, f28, f32, fru, lgc, f <fuente>"
# -----------------------------
# TTY / TMUX logic
# -----------------------------
if [[ -z "$TMUX" && "$XDG_VTNR" == "1" ]]; then
bash ~/.tty-themes.sh aurora
tmux attach || exec tmux new-session
fi
if [[ -z "$TMUX" && "$XDG_VTNR" == "5" ]]; then
sudo pacman --noconfirm -Syu
fi
if [[ -z "$TMUX" && "$XDG_VTNR" == "2" ]]; then
bash ~/.tty-themes.sh aurora
fi
if [[ -z "$TMUX" && "$XDG_VTNR" == "3" ]]; then
/home/esotericwarfare/.opencode/bin/opencode opencode
fi
if [[ -z "$TMUX" && "$XDG_VTNR" == "6" ]]; then
mbsync -a
neomutt
fi
# -----------------------------
# Environment variables
# -----------------------------
export WWW_BROWSER=w3m
export BROWSER=w3m
export QT_QPA_PLATFORM=eglfs
export QTWEBENGINE_CHROMIUM_FLAGS="--ignore-gpu-blacklist"
export QT_QPA_EGLFS_INTEGRATION=eglfs_kms
export QT_QPA_EGLFS_FULLSCREEN=1
export XKB_DEFAULT_LAYOUT=es
export XKB_DEFAULT_VARIANT=nodeadkeys
# -----------------------------
# Aliases
# -----------------------------
alias doom="cd doom && bash play_doom.sh"
alias wiby="w3m http://wiby.org"
alias geohot="lynx https://geohot.github.io/blog"
alias ..="cd .."
alias nadeko="w3m https://nadeko.net"
alias ce="lynx http://cursoelectricidad.github.io"
alias el="lynx http://cursoelectrodomesticos.github.io"
alias mc="w3m https://sotwe.com/marianocrosetti"
alias in="lynx https://imlauernews.github.io"
alias im="lynx https://imlauer.github.io"
alias imlauer="lynx http://imlauera.github.io"
alias hp="lynx http://hyperphysics.phy-astr.gsu.edu/hbasees/hframe.html"
alias news="lynx news.ycombinator.com"
alias ls='ls --color=auto'
alias grep='grep --color=auto'
alias ..='cd ..'
alias drudgereport="w3m drudgereport.com"
alias dgg="w3m dgg.gg"
alias mojeek="w3m https://www.mojeek.com/search?q=hola"
alias google="w3m https://leta.mullvad.net/search?q=google&engine=google"
alias images2="w3m https://www.ecosia.org/images?q=ecosia"
alias ecosia="w3m https://www.ecosia.org/search?q=ecosia"
alias blog="w3m imlauer.blogspot.com"
alias tdgg="w3m dgg.gg"
alias imlauera="cha -V imlauera.github.io"
alias analisismatematico2="lynx analisismatematico2.github.io"
alias wimlauera="w3m imlauera.github.io"
alias invidious="w3m https://inv.nadeko.net/feed/subscriptions"
alias cinvidious="cha -V https://inv.nadeko.net/feed/subscriptions"
alias upwork="falkon upwork.com"
alias linkedin="falkon linkedin.com"
alias freelancer="falkon freelancer.com"
alias duolingo="falkon https://duolingo.com/learn"
alias notebooklm="falkon https://notebooklm.google.com"
alias telegram="falkon web.telegram.org"
alias home="w3m $HOME/samba/offline_tastyfish/startpage.html"
alias images="w3m https://pinterest.lurkmore.com/"
alias lyrics="w3m https://genius.lurkmore.com/"
alias rightdao="w3m https://rightdao.com"
alias ttt="torsocks w3m ~/projects/imlauer.github.io/index.html"
alias focus="sudo systemctl stop NetworkManager"
alias f1="bash $HOME/scripts/f1exposure.sh"
# -----------------------------
# PATH
# -----------------------------
export PATH="$HOME/.local/bin:$PATH"
set -o vi
export HISTSIZE=1000000
export HISTFILESIZE=1000000
pacman -S fish
fish_vi_key_bindings
set -U fish_greeting # deshabilita mensaje de bienvenida
Si querés modificar más tu fish podés ejecutar fish_TAB
En .config/fish/config.fish agregá:
if status –is-login if test -z “$DISPLAY” -a $XDG_VTNR = 1 exec dvtm end end
Mis alias actuales:
if status is-interactive
# Commands to run in interactive sessions can go here
end
set -U fish_greeting
#export QT_QPA_PLATFORM=wayland
#alias dgg 'w3m -sixel dgg.gg'
#alias f1 'bash scripts/f1exposure.sh'
#alias google 'cha -V google.com'
#alias wgoogle 'w3m -sixel google.com'
#alias tdgg 'w3m -sixel dgg.gg'
#alias imlauera 'w3m -sixel imlauera.github.io'
#alias cimlauera 'cha -V imlauera.github.io'
#alias invidious 'w3m -sixel https://inv.nadeko.net/feed/subscriptions'
#alias cinvidious 'cha -V https://inv.nadeko.net/feed/subscriptions'
#alias upwork="falkon upwork.com"
#alias linkedin="falkon linkedin.com"
#alias freelancer="falkon freelancer.com"
#alias rcommandline="w3m old.reddit.com/r/commandline"
#alias buenosaires="w3m old.reddit.com/r/BuenosAires"
#alias duolingo="falkon https://duolingo.com/learn"
#alias f1="echo 'Los tiempos están en UTC. Coordinated Universal Time está 3 horas adelantado a Buenos Aires'; bash $HOME/scripts/f1exposure.sh | jq ."
#alias chatgpt="falkon chatgpt.com"
#alias telegram="falkon web.telegram.org"
alias wiby="lynx http://wiby.org/surprise"
alias ce="lynx http://cursoelectricidad.github.io"
alias imlauer="lynx http://imlauera.github.io"
alias hp="lynx http://hyperphysics.phy-astr.gsu.edu/hbasees/hframe.html"
alias 3dgames="lynx https://foros.3dgames.com.ar"
alias news="lynx news.ycombinator.com"
alias argentina="lynx old.reddit.com/r/argentina"
alias ls='ls --color=auto'
alias grep='grep --color=auto'
alias ..="cd .."
#export QT_QPA_PLATFORM=wayland
export QT_QPA_PLATFORM=eglfs
#export QTWEBENGINE_CHROMIUM_FLAGS="--ignore-gpu-blacklist --disable-gpu"
export QTWEBENGINE_CHROMIUM_FLAGS="--ignore-gpu-blacklist"
export QT_QPA_EGLFS_INTEGRATION=eglfs_kms
export QT_QPA_FONTDIR=/lib/Fonts
export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/plugins/platforms
export QT_QPA_EGLFS_PHYSICAL_WIDTH=155
export QT_QPA_EGLFS_PHYSICAL_HEIGHT=86
export QT_QPA_EGLFS_WIDTH=1024
export QT_QPA_EGLFS_HEIGHT=614
export QT_QPA_EGLFS_NO_LIBINPUT=0
#export QT_QPA_EGLFS_KEYBOARD_LAYOUT='es'
#export QT_QPA_EGLFS_KBD_MAP='es'
#export QT_QPA_EGLFS_FULLSCREEN=1
export XKB_DEFAULT_LAYOUT=es
alias drudgereport="lynx drudgereport.com"
alias dgg='w3m dgg.gg'
alias google='cha -V google.com'
alias wgoogle='w3m google.com'
alias blog='w3m imlauer.blogspot.com'
alias tdgg='w3m dgg.gg'
alias imlauera='cha -V imlauera.github.io'
alias analisismatematico2='lynx analisismatematico2.github.io'
alias wimlauera='w3m imlauera.github.io'
alias invidious='w3m https://inv.nadeko.net/feed/subscriptions'
alias cinvidious='cha -V https://inv.nadeko.net/feed/subscriptions'
alias upwork="falkon upwork.com"
alias linkedin="falkon linkedin.com"
alias freelancer="falkon freelancer.com"
alias rcommandline="w3m old.reddit.com/r/commandline"
alias buenosaires="w3m old.reddit.com/r/BuenosAires"
alias duolingo="falkon https://duolingo.com/learn"
alias f1="bash $HOME/scripts/f1exposure.sh"
alias chatgpt="falkon chatgpt.com"
alias telegram="falkon web.telegram.org"
export BROWSER=w3m
if status is-interactive
# Commands to run in interactive sessions can go here
end
#if status --is-login
# if test -z "$DISPLAY" -a $XDG_VTNR = 2
# exec tmux
# end
#end
if test -z "$TMUX" -a $XDG_VTNR = 1
tmux attach || exec tmux new-session
end
if test -z "$TMUX" -a $XDG_VTNR = 5
sudo pacman --noconfirm -Syu
end
if test -z "$TMUX" -a $XDG_VTNR = 6
mbsync -a
neomutt
end
#sudo loadkeys /home/esotericwarfare/mi_mapa.kmap
set -xg WWW_BROWSER w3m
set BROWSER w3m
set -U fish_greeting
export BROWSER=w3m
#export QT_QPA_PLATFORM=wayland
#alias dgg 'w3m -sixel dgg.gg'
#alias f1 'bash scripts/f1exposure.sh'
#alias wgoogle 'cha -V google.com'
#alias wgoogle 'w3m -sixel google.com'
#alias tdgg 'w3m -sixel dgg.gg'
#alias imlauera 'w3m -sixel imlauera.github.io'
#alias cimlauera 'cha -V imlauera.github.io'
#alias invidious 'w3m -sixel https://inv.nadeko.net/feed/subscriptions'
#alias cinvidious 'cha -V https://inv.nadeko.net/feed/subscriptions'
#alias upwork="falkon upwork.com"
#alias linkedin="falkon linkedin.com"
#alias freelancer="falkon freelancer.com"
#alias rcommandline="w3m old.reddit.com/r/commandline"
#alias buenosaires="w3m old.reddit.com/r/BuenosAires"
#alias duolingo="falkon https://duolingo.com/learn"
#alias f1="echo 'Los tiempos están en UTC. Coordinated Universal Time está 3 horas adelantado a Buenos Aires'; bash $HOME/scripts/f1exposure.sh | jq ."
#alias telegram="falkon web.telegram.org"
alias doom="cd doom; bash play_doom.sh;"
alias wiby="w3m http://wiby.org"
alias geohot="lynx https://geohot.github.io/blog"
alias ce="lynx http://cursoelectricidad.github.io"
#alias google="lynx http://google.com"
alias el="lynx http://cursoelectrodomesticos.github.io"
alias mc="w3m https://sotwe.com/marianocrosetti"
alias in="lynx https://imlauernews.github.io"
alias im="lynx https://imlauer.github.io"
alias imlauer="lynx http://imlauera.github.io"
alias hp="lynx http://hyperphysics.phy-astr.gsu.edu/hbasees/hframe.html"
# alias 3dgames="lynx https://foros.3dgames.com.ar"
alias 3dgames="w3m https://foros.3dgames.com.ar"
alias news="lynx news.ycombinator.com"
alias argentina="lynx old.reddit.com/r/argentina"
alias ls='ls --color=auto'
alias grep='grep --color=auto'
alias ..="cd .."
#export QT_QPA_PLATFORM=wayland
export QT_QPA_PLATFORM=eglfs
#export QT_QPA_PLATFORM=linuxfb
#export QTWEBENGINE_CHROMIUM_FLAGS="--ignore-gpu-blacklist --disable-gpu"
export QTWEBENGINE_CHROMIUM_FLAGS="--ignore-gpu-blacklist"
export QT_QPA_EGLFS_INTEGRATION=eglfs_kms
#export QT_QPA_FONTDIR=/lib/Fonts
#export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/plugins/platforms
#export QT_QPA_EGLFS_PHYSICAL_WIDTH=155
#export QT_QPA_EGLFS_PHYSICAL_HEIGHT=86
#export QT_QPA_EGLFS_WIDTH=1024
#export QT_QPA_EGLFS_HEIGHT=614
#export QT_QPA_EGLFS_NO_LIBINPUT=0
#export QT_QPA_EGLFS_KEYBOARD_LAYOUT='es'
#export QT_QPA_EGLFS_KBD_MAP='es'
export QT_QPA_EGLFS_FULLSCREEN=1
export XKB_DEFAULT_LAYOUT=es
export XKB_DEFAULT_VARIANT=nodeadkeys
alias drudgereport="w3m drudgereport.com"
alias dgg='w3m dgg.gg'
#alias google='cha -V google.com'
alias mojeek "w3m https://www.mojeek.com/search?q=hola"
alias google "w3m https://leta.mullvad.net/search?q=google&engine=google"
alias blog='w3m imlauera.blogspot.com'
alias blog='w3m imlauer.blogspot.com'
alias tdgg='w3m dgg.gg'
alias imlauera='cha -V imlauera.github.io'
alias analisismatematico2='lynx analisismatematico2.github.io'
alias wimlauera='w3m imlauera.github.io'
alias invidious='w3m https://inv.nadeko.net/feed/subscriptions'
alias cinvidious='cha -V https://inv.nadeko.net/feed/subscriptions'
alias upwork="falkon upwork.com"
alias linkedin="falkon linkedin.com"
alias home="w3m www.tastyfish.cz/startpage.html"
alias freelancer="falkon freelancer.com"
alias rcommandline="w3m old.reddit.com/r/commandline"
alias buenosaires="w3m old.reddit.com/r/BuenosAires"
alias duolingo="falkon https://duolingo.com/learn"
alias f1="bash $HOME/scripts/f1exposure.sh"
alias notebooklm="falkon https://notebooklm.google.com"
alias telegram="falkon web.telegram.org"
alias images="w3m https://pinterest.lurkmore.com/"
alias lyrics="w3m https://genius.lurkmore.com/"
alias rightdao="w3m https://rightdao.com"
alias ttt="torsocks w3m ~/projects/imlauer.github.io/index.html"
fish_add_path $HOME/.local/bin
set -gx ANDROID_HOME ~/Android/Sdk
set -gx PATH $PATH $ANDROID_HOME/cmdline-tools/bin $ANDROID_HOME/platform-tools
#!/bin/bash
sudo chmod 666 /dev/input/event*
amixer set 'Internal Mic Boost' 50%-
ttyd --port 2020 --writable bash &
angelfish "https://chatgpt.com" "http://127.0.0.1:2020"
Reviso el archivo. El historial en sí parece bien configurado (HISTSIZE, HISTFILESIZE=-1, histappend, PROMPT_COMMAND="history -a;..."), pero hay algo que salta a la vista y es una causa muy probable:
tmux (línea 55-58)if [[ -z "$TMUX" && "$XDG_VTNR" == "1" ]]; then
tmux attach || exec tmux new-session
fi
Este bloque se ejecuta antes de que llegues a las líneas 161-164 donde configurás HISTSIZE, HISTFILESIZE, histappend y el PROMPT_COMMAND con history -a.
Cuando abrís la terminal en la VT1 sin estar en tmux:
.bashrc de arriba hacia abajo.exec tmux new-session (o tmux attach).exec reemplaza el proceso de bash por tmux inmediatamente — nunca llega a ejecutar el resto del archivo, incluidas las líneas que protegen el historial.history -a ni tenía histappend activado.Dentro de tmux, cada pane nuevo sí vuelve a leer el .bashrc completo (porque ahí $TMUX ya está seteado, así que ese if no se dispara), así que en teoría los panes internos deberían estar bien. Pero si vos trabajás directamente en esa sesión exterior (por ejemplo si tmux attach falla silenciosamente, o hay un escenario donde el exec no se dispara y seguís en bash puro), ese shell jamás tiene protegido su historial.
Movete las líneas de historial (161-164) antes del bloque de tmux, así SIEMPRE se aplican pase lo que pase:
export HISTSIZE=1000000
export HISTFILESIZE=-1
shopt -s histappend
PROMPT_COMMAND="history -a;$PROMPT_COMMAND"
# recién ahora el bloque de tmux
if [[ -z "$TMUX" && "$XDG_VTNR" == "1" ]]; then
tmux attach || exec tmux new-session
fi
Si moverlo no soluciona nada, revisá esto (no está en el archivo que subiste, así que no puedo verlo):
~/.bash_logout — es clásico que tenga algo como > ~/.bash_history o history -c para “limpiar” al salir. Fijate con cat ~/.bash_logout.$HISTFILE — confirmá que no esté seteado a /dev/null o algo raro: echo $HISTFILE.~/.bash_history: ls -la ~/.bash_history (por si es un symlink a /dev/null)./etc/bash.bashrc o /etc/profile — a veces distros/scripts globales fuerzan HISTFILESIZE=0 después.sh/dash en algunas de esas VTs.Aparte, un aviso rápido: tenés un token de Discord y API keys de Groq/OpenRouter en texto plano en este archivo. Si en algún momento lo subiste a un repo público o lo compartiste, te conviene rotarlas.
¿Querés que revisemos el .bash_logout o el resultado de echo $HISTFILE para confirmar la causa exacta?