Install yay
https://itsfoss.com/install-yay-arch-linux/
sudo pacman -Syu
sudo pacman -S --needed base-devel git
git clone https://aur.archlinux.org/yay.git
- cd yay
makepkg -si
yay --version
yay -S picom-git
yay -S neovim-git
(para tener nvim 10) sino con pacman baja el 9
Extra
shortcuts i3wm
alt + enter
= abrir terminal
alt + shift + q
= cerrar ventana
alt + arrows
= me muevo a esa ventana
alt + shift + arrow
= muevo la ventana actual hacia donde senialo
alt + nums
= abro o me muevo entre escritorios
win + d
= abre lanzador
alt + w
pone la ventana actual en 100% de ancho, en el top de la pantalal veras las demas ventanas por las cuales podes navegar
con alt + arrow
alt + e
volvemos al modo ventanas split
alt+f
pones l;a ventgna actual en fullscreen
shortcut kitty
ctrl + mayus + t
nueva pestania
ctrl + mayus + alt +t
cambiar nombre de pestania
ctrl + mayus + flecha
te moves de ventana
Instalaciones arch
sudo pacman -S i3
sudo pacman -S nitrogen
- para los wallpappersudo pacman -S kitty
- para la terminalsudo pacman -S picom-git
para tener transparencia en las ventanas.sudo pacman -S polybar
- para la barra de tareassudo pacman -S neofetch
para mostrar features del sitemasudo pacman -S rofi
- para ejecutar apps concalt+d
sudo pacman -S vim
- editor de texto , podes usar nano si te gusta mas.sudo pacman -S zoxide
sudo pacman -S fish
DENTRO DE FISH tenemos que hacer esta config para que funcione https://github.com/ajeetdsouza/zoxide
Setup
-
vim .config/i3/config
-
Cambiamos la terminal , buscamos
i3-sensible-terminal
o ** # start a terimnal** y ponemoskitty
-
En # start dmenu cambiamos
dmu
porrofi
seguido de-show drun
quedando asi :bindsys $mod+d exec --no-startup-id rofi -show drun
-
Eliminamos la barra por defaul en #start i3bar to display a workspace
-
Vamos al top del archivo y agregamos
nitrogen
para que se ejecute cuando iniciamos el sistema:exec_always--no-startup-id nitrogen --restore
-
exec_always--no-startup-id picom
-
Creamos un archivo de config para
polybar
para que no se duplique este cuando refresquemos las interfaces:mkdir .config/polybar/launch.sh
y ponemos :pkill polybar polybar
Luego
chmod +x ./launch.sh
-
Ahora ponemos
exec_always --no-startup-id /home/tuuser/.config/polybar/launch.sh
-
Cambiamos los borders:
default_border pixel 0
default_floating_border 0
smart_borders on
gaps outer 0
gaps inner 6
Ahora podemo refrescar todo lo que hicimos con
win + shift + R
-
Install fonts on kity
- Descargamos la fuente desde nerdfont como Iosevka , luego lo descomprimimso con
unzip archivo
- Ahora vamos a
/home/user/.local/share/fonts/
si no tenes fonts creala - volvemos a las descargas y hacemos
cp *.ttf /home/user/.local/share/fonts/
- vamos a kitty con
cntr+shift+f2
font_family Iosevka Nerd Font
bold_font auto
italic_font auto
bold_itealic_font auto
font_size 16
Isntall fonts kitty v2 (recomendada)
- tenemos que tener instlado
yay
yay -S ttf-iosevka
font_family Iosevka
bold_font auto
italic_font auto
bold_itealic_font auto
font_size 16
Config de mornitores
sudo pacman -S xorg-xrandr
xrandr
ves los monitoresxrandr --output displayport1 --left-of displayport-0
ft chatgpt
Entiendo que tienes un problema con la configuración de tus monitores en Arch Linux con i3wm, donde el comportamiento del ratón no es el esperado al moverlo de un monitor a otro. Para corregir esto, puedes utilizar herramientas de configuración de monitores, como xrandr o arandr. Aquí hay algunos pasos que puedes seguir:
-
Identificar tus monitores: Utiliza el comando
xrandr
para listar tus monitores y sus identificadores. Por ejemplo:xrandr
-
Establecer la disposición de los monitores: Utiliza el comando
xrandr
para establecer la disposición de tus monitores. Puedes especificar la posición de cada monitor. Por ejemplo, si tienes dos monitores (llamados HDMI-1 y DP-1) y quieres que el HDMI-1 esté a la izquierda del DP-1, puedes ejecutar el siguiente comando:xrandr --output HDMI-1 --left-of DP-1
Ajusta los nombres de tus monitores según lo que obtuviste en el primer paso.
-
Automatizar la configuración al inicio: Para que la configuración se aplique automáticamente al iniciar i3wm, puedes agregar el comando de configuración a tu archivo de configuración de i3. Este archivo generalmente se encuentra en
~/.config/i3/config
. Agrega la línea correspondiente al final del archivo.exec --no-startup-id xrandr --output HDMI-1 --left-of DP-1
Asegúrate de reemplazar
HDMI-1
yDP-1
con los nombres de tus monitores. -
Reinicia i3wm: Reinicia i3wm para que los cambios surtan efecto. Puedes hacerlo reiniciando tu sesión de usuario o reiniciando el sistema.
Estos pasos deberían ayudarte a configurar correctamente la disposición de tus monitores en i3wm. Si encuentras algún problema, asegúrate de revisar la salida de xrandr
para verificar los nombres y la disposición correcta de tus monitores.
Install inxi
nos permite ver info detallada de nuestro sistema
1.sudo pacman -S inxi
2. inxi -M
vemos inof del mother
Configurar sonido
pacmd
es el comando que se utiliza para interactuar con el servidor de sonido PulseAudio en sistemas basados en Arch Linux y otros sistemas Linux. PulseAudio es un servidor de sonido que proporciona una interfaz para el sistema operativo y las aplicaciones para gestionar el sonido de manera más avanzada y flexible.
Aquí hay algunos usos comunes de pacmd
:
-
Control de dispositivos de audio:
pacmd list-sinks
: Muestra información sobre los dispositivos de salida de audio disponibles.pacmd list-sources
: Muestra información sobre los dispositivos de entrada de audio disponibles.
-
Cambiar dispositivos de audio predeterminados:
pacmd set-default-sink
: Establece el dispositivo de salida predeterminado.pacmd set-default-source
: Establece el dispositivo de entrada predeterminado.
-
Control de volumen:
pacmd set-sink-volume
: Establece el volumen de un dispositivo de salida.pacmd set-source-volume
: Establece el volumen de un dispositivo de entrada.
-
Cambiar perfiles de dispositivos:
pacmd set-sink-port
: Cambia el puerto de un dispositivo de salida.pacmd set-source-port
: Cambia el puerto de un dispositivo de entrada.
-
Lista de módulos cargados:
pacmd list-modules
: Muestra información sobre los módulos cargados en PulseAudio.
Estos son solo algunos ejemplos de cómo se puede utilizar pacmd
para interactuar con el sistema de sonido en un entorno PulseAudio. Es una herramienta poderosa que te permite configurar y controlar diversos aspectos del sonido en tu sistema.
Recuerda que para utilizar pacmd
, necesitarás tener instalado y en ejecución el servidor de sonido PulseAudio en tu sistema. Si aún no lo tienes instalado, puedes hacerlo utilizando el sistema de gestión de paquetes de Arch Linux (pacman
).
Seteando la posta.
- creamos un script en
/home/tuuser/.config/pulseaudio/launch.sh
- si no lo tenes crealo
pulseaudio --start
pacmd set-default-sink acaelnombreonda alsa_output......
Puede ser que si pones el comando por consola ya levante, pero sino mandale ese script.
Usa
cntr+shift+C y cntr+shift+v
para copiar en las terminales los nombres de los dispositivos.
Agregando imagen a neofetch
tenemos que tener instalado sudo pacman -S imagemagick
Inatalar neovim
sudo pacman -S neovim
Instalr docker
Para instalar Docker Compose en Arch Linux, puedes seguir estos pasos:
-
Instalar Docker: Antes de instalar Docker Compose, asegúrate de tener Docker instalado en tu sistema. Puedes instalar Docker ejecutando el siguiente comando:
sudo pacman -S docker
Luego, inicia y habilita el servicio Docker:
sudo systemctl start docker sudo systemctl enable docker
Asegúrate de agregar tu usuario al grupo
docker
para poder ejecutar comandos Docker sin necesidad de usarsudo
:sudo usermod -aG docker $USER
Debes cerrar sesión o reiniciar tu sistema para que los cambios surtan efecto.
-
Instalar Docker Compose: Una vez que Docker esté instalado y configurado, puedes instalar Docker Compose. En Arch Linux, puedes hacer esto utilizando el siguiente comando:
sudo pacman -S docker-compose
Esto instalará Docker Compose en tu sistema.
-
Verificar la instalación: Para verificar que Docker Compose se ha instalado correctamente, puedes ejecutar el siguiente comando:
docker-compose --version
Esto debería mostrar la versión instalada de Docker Compose.
Con estos pasos, deberías tener Docker Compose instalado y listo para usar en tu sistema Arch Linux. Recuerda que es posible que necesites cerrar sesión y volver a iniciarla después de agregar tu usuario al grupo docker
para que los cambios surtan efecto.
install lsd
para colorear ls -l
sudo pacman -S lsd
- vamos a
.config/fish/functions/lsd.fish
function ls
lsd -l $argv
end
funcsavels
- hacemos ls en una temrinal nueva que use fish y se vera coloreado
lsd script
podemos agregar mas asi :
function ls
lsd -l $argv
end
function ls_tree
lsd --tree --depth 2 --blocks permission,size,name
end
``
# intall bat
formatea los cat ,hacemos los mismo que en lsd
# leer pdf
1. `sudo pacman -S evince`
## via terminal
Pero no anda no se porque
1. `sudo pacman -S zathrua`
# Pulse audio drivers
Para instalar los controladores de audio Realtek en Arch Linux, puedes seguir estos pasos:
1. **Identificar el controlador Realtek**: Asegúrate de conocer el modelo específico del chip de audio Realtek que utiliza tu placa base. Puedes encontrar esta información en el sitio web del fabricante de tu placa base o ejecutando comandos como `lspci` en la terminal para identificar el hardware.
2. **Instalar el paquete `alsa-utils`**: Este paquete proporciona utilidades para la configuración y diagnóstico de ALSA (Advanced Linux Sound Architecture), que es el subsistema de audio en Linux. Puedes instalarlo desde los repositorios oficiales de Arch Linux utilizando el siguiente comando:
sudo pacman -S alsa-utils
3. **Verificar la detección de hardware**: Después de instalar `alsa-utils`, puedes verificar si tu hardware de audio Realtek está siendo detectado correctamente ejecutando el siguiente comando en la terminal:
aplay -l
Esto debería mostrar una lista de dispositivos de audio disponibles en tu sistema. Si ves tu dispositivo Realtek en la lista, entonces el kernel de Linux lo está reconociendo correctamente.
4. **Configurar ALSA**: Si ALSA reconoce tu dispositivo, pero no estás obteniendo audio, es posible que necesites configurar ALSA adecuadamente. Puedes hacerlo ajustando los controles de volumen con `alsamixer`:
alsamixer
Usa las teclas de flecha para navegar y ajustar los niveles de volumen. Asegúrate de que los controles no estén en modo silencio (MM) y que los niveles de volumen sean adecuados.
5. **Instalar el paquete `pulseaudio`**: PulseAudio es una capa adicional sobre ALSA que proporciona más funciones y flexibilidad en el manejo del audio. Instálalo desde los repositorios oficiales de Arch Linux:
sudo pacman -S pulseaudio pulseaudio-alsa
6. **Reiniciar servicios**: Después de instalar `pulseaudio`, puedes reiniciar los servicios de ALSA y PulseAudio para asegurarte de que estén funcionando correctamente:
sudo systemctl restart alsa-restore.service sudo systemctl restart alsa-state.service sudo systemctl —user restart pulseaudio
Con estos pasos, deberías tener los controladores de audio Realtek instalados y funcionando en tu sistema Arch Linux. Si experimentas problemas, asegúrate de revisar los registros del sistema (`dmesg` y `/var/log/syslog`) para obtener información adicional sobre cualquier error que pueda estar ocurriendo. Además, las comunidades en línea de Arch Linux suelen ser muy útiles si necesitas ayuda adicional.
# pilibar config
[la dejo aca](https://github.com/nahuelDev23/polybar)
# config horario
Para configurar la hora en Arch Linux, puedes seguir estos pasos:
1. **Verificar la zona horaria actual**: Antes de configurar la hora, es importante verificar la zona horaria actual para asegurarte de que esté correctamente configurada para Argentina/Buenos Aires. Puedes hacerlo ejecutando el siguiente comando en la terminal:
```bash
timedatectl
Esto te mostrará la hora actual y la configuración de la zona horaria.
-
Configurar la zona horaria: Si la zona horaria no está configurada correctamente, puedes configurarla utilizando el comando
timedatectl
. Por ejemplo, para configurar la zona horaria a Buenos Aires, ejecuta el siguiente comando en la terminal:sudo timedatectl set-timezone America/Argentina/Buenos_Aires
-
Sincronizar el reloj del sistema con NTP: Es recomendable sincronizar el reloj del sistema con un servidor NTP (Network Time Protocol) para mantener la hora precisa. Puedes hacerlo ejecutando el siguiente comando:
sudo timedatectl set-ntp true
Esto configurará tu sistema para sincronizar automáticamente la hora con los servidores NTP.
-
Verificar la configuración de la hora: Puedes verificar que la configuración de la hora se haya aplicado correctamente ejecutando nuevamente el comando
timedatectl
.timedatectl
Asegúrate de que la zona horaria y la hora sean las correctas.
Con estos pasos, deberías poder configurar la hora en Arch Linux para que refleje la hora correcta en Buenos Aires, Argentina.
gopass.pw
- instalamos
xclip
- instalsmos
gopass
gpg --full-generate-key
segui los pasos.gopass setup
segui lo pasos
copy password en clipgboard
- gopass show -c websites/github.com/nahueldev23
editar password
- tener
vi
instalado - gopass edit path/of/password -> website/github.com/nahueldev23
Dotfiles
create the repository\
- en
%HOME
creamos $ mkdir dotfiles; cd dotfiles - git init
install dotdrop as a submodule
$ git submodule add https://github.com/deadc0de6/dotdrop.git $ ./dotdrop/bootstrap.sh
use dotdrop
$ ./dotdrop.sh —help
- En
.config/fish/functions
nos creamos un aliasdotdrop.fish
function dotdrop
alias dotdrop=/home/akerman/dotfiles/dotdrop.sh
end
- ahora podes agregar usando
dotdrop import /home/akerman/.config
- para actualizar alguno modificado
dotdrop update /home/akerman/.config
- para instlar
dotdrop install f_bashrc
Fíjate en el detalle, ahora estás utilizando f_bashrc en lugar del archivo de configuración de destino. Esto lo puedes leer en el archivo config.yml que se encuentra en tus archivos de configuración de Dotdrop.
bluetooth
1 │ bluetoothctl 2 │ systemctl status bluetooth 3 │ bluetoohctl 4 │ sudo pacman -S bluez-utils 5 │ sudo pacman -S bluez 6 │ systemctl status bluetooth.service 7 │ systemctl enable bluetooth.service
bluettootclt enta en un CLI, ahi tenes que hacer que busque con scan on
creo.
y cuando tenes el ID poner pais ID y lo conecta.
clima en polybar
sudo pacman -S bc
- https://github.com/GuidoFe/weather-polybar-plugin/blob/main/weather-plugin.sh
- city_name ‘Buenos Aires’
- country_code=‘AR’
#Spellcheck lazyvim
-
bajaete el diccionrio aca
-
descoprimi
-
ve a lazyvim :mkspell $HOME/download/spellchecker.ext
-
:set spellang=es
-
si te preguta si queres bajar el utf8 - SI!
-
usar en modo insert z+=
-
Copias lo que tenes en
/etc/nixos
hacia/home/tu-user/.dotfiles/nix-config
o donde quieras. -
Los archivos
configuration.nix
yhardware.nix
tenes que cambiarle el own:
sudo chown tu-user:users configuration.nix
sudo chown tu-user:users hardware.nix
- Instamos flakes y home-manager:
flakes.nix
{
description = "A simple NixOS flake";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.05";
home-manager = {
url = "github:nix-community/home-manager/release-24.05";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs,home-manager, ... }@inputs: {
# Please replace my-nixos with your hostname
nixosConfigurations.akerman = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.akerman= import ./home.nix;
}
];
};
};
}
home-manager
{config,pkgs,...}:{
# please change the username & home directory to your own
home.username = "akerman";
home.homeDirectory = "/home/akerman";
# link the configuration file in current directory to the specified location in home directory
# home.file.".config/i3/wallpaper.jpg".source = ./wallpaper.jpg;
# link all files in `./scripts` to `~/.config/i3/scripts`
# home.file.".config/i3/scripts" = {
# source = ./scripts;
# recursive = true; # link recursively
# executable = true; # make all files executable
# };
# encode the file content in nix configuration file directly
# home.file.".xxx".text = ''
# xxx
# '';
# set cursor size and dpi for 4k monitor
xresources.properties = {
"Xcursor.size" = 16;
"Xft.dpi" = 172;
};
# Packages that should be installed to the user profile.
home.packages = with pkgs; [
nitch
# archives
zip
xz
unzip
p7zip
# utils
ripgrep # recursively searches directories for a regex pattern
eza # A modern replacement for ‘ls’
fzf # A command-line fuzzy finder
# misc
file
which
tree
gnused
gnutar
gawk
zstd
gnupg
# productivity
glow # markdown previewer in terminal
btop # replacement of htop/nmon
iotop # io monitoring
iftop # network monitoring
# system call monitoring
strace # system call monitoring
ltrace # library call monitoring
lsof # list open files
# system tools
sysstat
lm_sensors # for `sensors` command
ethtool
pciutils # lspci
usbutils # lsusb
];
# basic configuration of git, please change to your own
programs.git = {
enable = true;
userName = "nahuelDev23";
userEmail = "nahuel.dev.23@gmail.com";
};
# hyprland para home-manager
wayland.windowManager.hyprland = {
# Whether to enable Hyprland wayland compositor
enable = true;
# The hyprland package to use
package = pkgs.hyprland;
# Whether to enable XWayland
xwayland.enable = true;
# Optional
# Whether to enable hyprland-session.target on hyprland startup
systemd.enable = true;
};
home.stateVersion = "24.05";
# Let home Manager install and manage itself.
programs.home-manager.enable = true;
}
Hyprland
Para que funcione la configuracion anterior de hyprland
tenemos que activar en configuration.nix
: services.xserver.enable=true;
configuration.nix
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running ‘nixos-help’).
{ config, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
];
# Bootloader.
boot.loader.grub.enable = true;
boot.loader.grub.device = "/dev/sda";
boot.loader.grub.useOSProber = true;
# TODO! OJO con esto
networking.hostName = "nixos"; # Define your hostname.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
# Enable networking
networking.networkmanager.enable = true;
# Set your time zone.
time.timeZone = "America/Argentina/Salta";
# Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "es_AR.UTF-8";
LC_IDENTIFICATION = "es_AR.UTF-8";
LC_MEASUREMENT = "es_AR.UTF-8";
LC_MONETARY = "es_AR.UTF-8";
LC_NAME = "es_AR.UTF-8";
LC_NUMERIC = "es_AR.UTF-8";
LC_PAPER = "es_AR.UTF-8";
LC_TELEPHONE = "es_AR.UTF-8";
LC_TIME = "es_AR.UTF-8";
};
# Configure keymap in X11
services.xserver.xkb = {
layout = "us";
variant = "";
};
# Define a user account. Don't forget to set a password with ‘passwd’.
users.users.akerman = {
isNormalUser = true;
description = "akerman";
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [];
};
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = with pkgs; [
# vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
# wget
];
# Some programs need SUID wrappers, can be configured further or are
# started in user sessions.
# programs.mtr.enable = true;
# programs.gnupg.agent = {
# enable = true;
# enableSSHSupport = true;
# };
nix.settings.experimental-features = [ "nix-command" "flakes" ];
# List services that you want to enable:
# Enable the OpenSSH daemon.
services.openssh.enable = true;
services.xserver.enable=true;
# Open ports in the firewall.
networking.firewall.allowedTCPPorts = [ 22];
networking.firewall.allowedUDPPorts = [ 22];
# Or disable the firewall altogether.
# networking.firewall.enable = false;
system.stateVersion = "24.05"; # Did you read the comment?
}