Skip to content

Un entorno de escritorio probado en Parrot basado en el video de s4vitar pero mas automatizado

Notifications You must be signed in to change notification settings

amorinn/ParrotOS-desktop-enviroment

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ParrotOS desktop enviroment.

Esta es una guía basada en este video de @s4vitar, no es con intención de hacer un plagio, es con intención de aprender y hacerle la vida un poquito más fácil a la gente.

Aquí está el pastebin original.

1. Actualizamos el sistema.

sudo apt upgrade 

Esto lleva un rato...

2. Clonamos este repositorio.

cd ~/Descargas/
git clone https://github.com/amorinn/ParrotOS-desktop-enviroment.git

3. Instalamos los siguientes paquetes:

sudo apt install build-essential git vim xcb libxcb-util0-dev libxcb-ewmh-dev libxcb-randr0-dev libxcb-icccm4-dev libxcb-keysyms1-dev libxcb-xinerama0-dev libasound2-dev libxcb-xtest0-dev libxcb-shape0-dev 

4. Instalamos bspwm y sxhkd:

cd ~/Descargas/
git clone https://github.com/baskerville/bspwm.git
git clone https://github.com/baskerville/sxhkd.git
cd bspwm/
make
sudo make install
cd ../sxhkd/
make
sudo make install
sudo apt install bspwm

5. Cargamos en bspwm y sxhkd ficheros de ejemplo:

mkdir ~/.config/bspwm
mkdir ~/.config/sxhkd
cd ~/Descargas/bspwm/
cp examples/bspwmrc ~/.config/bspwm/
chmod +x ~/.config/bspwm/bspwmrc 
cp examples/sxhkdrc ~/.config/sxhkd/

6. Añadimos keybindings a sxhkd:

Modificamos ~/.config/sxhkd/sxhkdrc borramos su contenido y pegamos los siguiente:

#
# wm independent hotkeys
#
 
# terminal emulator
super + Return
    gnome-terminal
 
# program launcher
super + d
    rofi -show run
 
# make sxhkd reload its configuration files:
super + Escape
    pkill -USR1 -x sxhkd
 
#
# bspwm hotkeys
#
 
# quit/restart bspwm
super + alt + {q,r}
    bspc {quit,wm -r}
 
# close and kill
super + {_,shift + }w
    bspc node -{c,k}
 
# alternate between the tiled and monocle layout
super + m
    bspc desktop -l next
 
# send the newest marked node to the newest preselected node
super + y
    bspc node newest.marked.local -n newest.!automatic.local
 
# swap the current node and the biggest node
super + g
    bspc node -s biggest
 
#
# state/flags
#
 
# set the window state
super + {t,shift + t,s,f}
    bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
 
# set the node flags
super + ctrl + {m,x,y,z}
    bspc node -g {marked,locked,sticky,private}
 
#
# focus/swap
#
 
super + {_,shift + }{Left,Down,Up,Right}
       bspc node -{f,s} {west,south,north,east}
 
 
# focus the node for the given path jump
super + {p,b,comma,period}
    bspc node -f @{parent,brother,first,second}
 
# focus the next/previous node in the current desktop
super + {_,shift + }c
    bspc node -f {next,prev}.local
 
# focus the next/previous desktop in the current monitor
super + bracket{left,right}
    bspc desktop -f {prev,next}.local
 
# focus the last node/desktop
super + {grave,Tab}
    bspc {node,desktop} -f last
 
# focus the older or newer node in the focus history
super + {o,i}
    bspc wm -h off; \
    bspc node {older,newer} -f; \
    bspc wm -h on
 
# focus or send to the given desktop
super + {_,shift + }{1-9,0}
    bspc {desktop -f,node -d} '^{1-9,10}'
 
#
# preselect
#
 
# preselect the direction
super + ctrl + alt + {Left,Down,Up,Right}
    bspc node -p {west,south,north,east}
 
 
# preselect the ratio
super + ctrl + {1-9}
    bspc node -o 0.{1-9}
 
# cancel the preselection for the focused node
super + ctrl + space
    bspc node -p cancel
 
# cancel the preselection for the focused desktop
super + ctrl + alt + space
    bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel
 
#
# move/resize
#
 
# expand a window by moving one of its side outward
#super + alt + {h,j,k,l}
#   bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}
 
# contract a window by moving one of its side inward
#super + alt + shift + {h,j,k,l}
#   bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}
 
# move a floating window
super + ctrl + {Left,Down,Up,Right}
    bspc node -v {-20 0,0 20,0 -20,20 0}
 
# Custom move/resize
alt + super + {Left,Down,Up,Right}
    ~/.config/bspwm/scripts/bspwm_resize {west,south,north,east}
# ------------------------------------------------------------------------------------------------```
Y ejecutamos:
```bash
mkdir ~/.config/bspwm/scripts/
cp ~/Descargas/ParrotOS-desktop-enviroment/bspwm_resize ~/.config/bspwm/scripts
chmod +x ~/.config/bspwm/scripts/bspwm_resize

7. Procedemos a instalar la polybar.

Para ello instalamos los siguientes paquetes:

sudo apt install cmake cmake-data pkg-config python3-sphinx libcairo2-dev libxcb1-dev libxcb-util0-dev libxcb-randr0-dev libxcb-composite0-dev python3-xcbgen xcb-proto libxcb-image0-dev libxcb-ewmh-dev libxcb-icccm4-dev libxcb-xkb-dev libxcb-xrm-dev libxcb-cursor-dev libasound2-dev libpulse-dev libjsoncpp-dev libmpdclient-dev libcurl4-openssl-dev libnl-genl-3-dev liuv1-dev

Para instalar la polybar hacemos lo siguiente:

cd ~/Descargas/
git clone --recursive https://github.com/polybar/polybar
cd polybar/
mkdir build
cd build/
cmake ..
make -j$(nproc)
sudo make install

8. Procedemos con la instalación de Picom

Actualizamos el sistema:

sudo apt update

E instalamos los siguientes paquetes:

sudo apt install meson libxext-dev libxcb1-dev libxcb-damage0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-render-util0-dev libxcb-render0-dev libxcb-randr0-dev libxcb-composite0-dev libxcb-image0-dev libxcb-present-dev libxcb-xinerama0-dev libpixman-1-dev libdbus-1-dev libconfig-dev libgl1-mesa-dev libpcre2-dev libevdev-dev uthash-dev libev-dev libx11-xcb-dev libxcb-glx0-dev feh rofi

A continuación

cd ~/Descargas/
git clone https://github.com/ibhagwan/picom.git
cd picom/
git submodule update --init --recursive
meson --buildtype=release . build
ninja -C build
sudo ninja -C build install

9. Reiniciamos y seleccionamos bspwm

Para seleccionar bspwm clickamos encima del circulo blanco que nos aparece en la derecha de nuestro usuario en la pantalla de bloqueo cuando reiniciamos y seleccionamos bspwm y nos logueamos.

Si no quieres reiniciar haz kill -9 -1 .

Una vez dentro se verá todo en negro, al pulsar super + enter se nos abrirá una terminal.

Siendo "super" la tecla de windows

Para conectarse a internet escribe nmcli device wifi para ver las redes disponibles y nmcli device wifi connect "TU WIFI" password "CONTRASEÑA"

10. Instalamos la Hack Nerd Font.

Ejecutamos los siguientes comandos:

cd ~/Descargas/
wget https://github.com/ryanoasis/nerd-fonts/releases/download/v2.1.0/Hack.zip
sudo mv  ~/Descargas/Hack.zip /usr/local/share/fonts
cd /usr/local/share/fonts
unzip Hack.zip
sudo rm Hack.zip
fc-cache -v

y ya tendríamos las Hack Nerd fonts instaladas, ahora nos dirigimos al apartado "Editar" en una terminal y elegimos perfiles, desmarcamos la casilla de "Usar la tipografía de ancho fijo del sistema" y seleccionamos "Hack nerd fonts mono regular". Antes de salir desmarcamos las casillas de "Permitir texto resaltado","Mostrar la barra de menús en los terminales nuevos por defecto" y "Campana del terminal". Y por último vamos a la pestaña de desplazamiento y donde dice "La barra de desplazamiento está:" seleccionamos desconectado.

11. Configuramos un fondo de pantalla:

​Descargamos el fondo y lo movemos al directorio que queramos.

echo "feh --bg-fill /ruta/al/fondo.jpg" >> ~/.config/bspwm/bspwmrc

Siendo "/ruta/al/fondo" la ruta a nuestro fondo. Si quieres puedes utilizar el que ya viene en ~/Descargas/ParrotOS-desktop-enviroment.

12. Configuramos la polybar.

cd ~/Descargas
git clone https://github.com/VaughnValle/blue-sky.git
mkdir ~/.config/polybar
cd ~/Descargas/blue-sky/polybar/
cp * -r ~/.config/polybar
echo '~/.config/polybar/./launch.sh' >> ~/.config/bspwm/bspwmrc
cd fonts
sudo cp * /usr/share/fonts/truetype/
fc-cache -v

Pulsamos super + r para ver la polybar.

Aquí puedes aprender a hacer un módulo para spotify.

13. Configuramos picom.

mkdir ~/.config/picom
cd ~/.config/picom
cp ~/Descargas/blue-sky/picom.conf .

Luego modificamos picom.conf y comentamos 'backend ="glx"' y descomentamos 'backend = "xrender"' ​

Antes de recargar la configuración, hacemos un seguimiento del ratón para saber en qué ventana estamos con el siguiente comando: ​

echo "bspc config focus_follows_pointer true" >> ~/.config/bspwm/bspwmrc

Posteriormente, ejecutamos los siguientes comandos para aplicar los bordeados:

echo 'picom --experimental-backends &' >> ~/.config/bspwm/bspwmrc 
echo 'bspc config border_width 0' >> ~/.config/bspwm/bspwmrc

Y hacemos super + r para ver los cambios.

Si experimentamos lentitud o problemas de rendimiento probamos a volver a descomentar 'backend = "glx"' y a comentar 'backend = "xrender"' en ~/.config/picom/picom.comf y si eso no funciona jugamos con los ajustes de picom.comf

14. Instalamos el tema nord para rofi.

En una terminal escribimos rofi-theme-selector y se nos abrirá rofi con un a selección de temas para elegir, abajo de todo estará el tema nord, ponemos el seleccionador encima y pulsamos alt + a.

15. Configuramos la polybar.

Ejecutamos:

echo "xsetroot -cursor_name left_ptr &" >> ~/.config/bspwm/bspwmrc

Para configurar el estilo de la polybar editamos ~/.config/polybar/current.ini y modificamos todo a nuestro antojo.

16. Instalamos Slim y Slimlock.

sudo apt update
sudo apt install slim libpam0g-dev libxrandr-dev libfreetype6-dev libimlib2-dev libxft-dev​
cd ~/Descargas/
git clone https://github.com/joelburget/slimlock.git
cd slimlock/
sudo make
sudo make install
cd ~/Descargas/blue-sky/slim
sudo cp slim.conf /etc/
sudo cp slimlock.conf /etc
cd ~/Descargas
git clone https://github.com/adi1090x/slim_themes.git
cd /slim-themes/themes
mv /overlay /default
sudo cp -r  default /usr/share/slim/themes

Y reiniciamos el equipo.

17. Instalamos la powerlevel10k.

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ~/powerlevel10k
echo 'source ~/powerlevel10k/powerlevel10k.zsh-theme' >>~/.zshrc 

Despues escribimos zsh y empezará la configuración de la powerlevel10k, elegimos las opciones que mas se adapten a nosotros. Y lo volvemos a hacer con el usuario Root. Ahora tendremos que hacer que la zsh sea nuestra shell predeterminada con estos dos comandos:

usermod --shell /usr/bin/zsh tuUsuario 

Donde pone "tuUsuario" pones tu usuario 😐.

usermod --shell /usr/bin/zsh root

Y enlazamos el .zshrc de nuestro usuario con el de Root:

sudo ln -s -f ~/.zshrc /root/.zshrc 

Luego editamos el archivo .p10k a nuestro gustos y con nuestros propios colores. Para arreglar un problema de permisos al migrar de su a nuestro usuario ejecutamos los siguientes comandos.

chown tuUsuario:tuUsuario /root
chown tuUsuario:tuUsuario /root/.cache -R
chown tuUsuario:tuUsuario /root/.local -R

18. Instalamos bat, lsd, fzf y ranger.

cd ~/Descargas/
wget https://github.com/Peltoche/lsd/releases/download/0.20.1/lsd_0.20.1_amd64.deb
wget https://github.com/sharkdp/bat/releases/download/v0.18.3/bat_0.18.3_amd64.deb
sudo dpkg -i *.deb
sudo apt install fzf ranger

19. Instalamos plugins para la zsh.

cd /usr/share
sudo mkdir zsh-plugins
sudo chown tuUsuario:tuUsuario zsh-plugins
cd zsh-plugins
wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/plugins/sudo/sudo.plugin.zsh

20. Configuramos los aliases.

cd ~/Descargas/ParrotOS-desktop-enviroment
cat aliases >> ~/.zshrc

Resultados.

1 3

2021-12-07-151326_1920x1080_scrot

About

Un entorno de escritorio probado en Parrot basado en el video de s4vitar pero mas automatizado

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages