diff --git a/.zshrc b/.zshrc index a8b31e6..b2b546b 100644 --- a/.zshrc +++ b/.zshrc @@ -52,6 +52,8 @@ RPROMPT=\$vcs_info_msg_0_%F{244}%*%f zstyle ':vcs_info:git:*' formats '%F{207}(%b)%f' zstyle ':vcs_info:*' enable git +export PATH=$PATH:~/bin + # go export PATH=$PATH:/usr/local/go/bin export PATH=$PATH:~/go/bin diff --git a/bin/screens b/bin/screens index 1f9f2b3..925e0ec 100755 --- a/bin/screens +++ b/bin/screens @@ -41,7 +41,9 @@ if len(sys.argv)>2: # for fixing touch screen # Check the input device ID with `xinput`. # Check the display device name with `xrandr`. +# # `xinput map-to-output ` # eg. xinput map-to-output 12 eDP-1 - - +# +# to rotate (90 degrees to right) the input of the touchscreen: +# `xinput set-prop 'pointer:Goodix Capacitive TouchScreen' 'Coordinate Transformation Matrix' 0 1 0 -1 0 1 0 0 1` diff --git a/bin/timeatlock b/bin/timeatlock new file mode 100755 index 0000000..7025cdb --- /dev/null +++ b/bin/timeatlock @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +current_time=$(date +"%H:%M") +battery_level=$(cat "/sys/class/power_supply/BAT0/capacity") + +echo "timeatlock $current_time h, Battery level: $battery_level %" diff --git a/i3/config b/i3/config index 7ff74ae..497b226 100644 --- a/i3/config +++ b/i3/config @@ -177,7 +177,7 @@ default_border pixel 1 for_window [window_role="alert"] floating enable # having installed feh (sudo apt install feh) -exec feh --bg-fill ~/Sync/wallpapers/geometry02_croped1920x1080.png +exec feh --bg-fill ~/Sync-tablet/wallpapers/geometry02_croped1920x1080.png exec xmodmap .Xmodmap # move current workspace to another display diff --git a/install-new-desktop.sh b/install-new-desktop.sh index e76c91b..fcf405b 100644 --- a/install-new-desktop.sh +++ b/install-new-desktop.sh @@ -14,13 +14,14 @@ cp ./.zshrc ~/.zshrc cp ./.sh_alias ~/.sh_alias mkdir -p ~/bin -cp ./bin/ltx ~/bin/ -cp ./bin/screens ~/bin/ -cp ./bin/wk ~/bin/ +cp -r ./bin/* ~/bin/ cp -r ./alacritty ~/.config/ cp -r ./i3status ~/.config/ +mkdir -p ~/.config/zathura +cp ./zathurarc ~/.config/zathura/ + # assuming that Rust is installed echo "append .gitconfig of this repo lines to the .gitconfig system file to use delta gitdiff tool" diff --git a/nixos/README.md b/nixos/README.md index a2aa475..81e0f04 100644 --- a/nixos/README.md +++ b/nixos/README.md @@ -1,4 +1,7 @@ -from time to time run the following commands to remove stuff from old generations +After nixos installation and config files in place, run the `../install-new-desktop.sh` script to put in place all the config files (vim,nvim,tmux,i3,etc) + + +From time to time run the following commands to remove stuff from old generations ``` # list old generations sudo nix-env --list-generations --profile /nix/var/nix/profiles/system @@ -10,6 +13,10 @@ sudo nix-env --profile /nix/var/nix/profiles/system --delete-generations 9 10 11 sudo nix-env --profile /nix/var/nix/profiles/system --delete-generations +5 +# update +`sudo nix-channel --update` +`sudo nixos-rebuild switch` + # to remove old programs nix-collect-garbage --delete-old ``` diff --git a/nixos/chuwi-configuration.nix b/nixos/chuwi-configuration.nix new file mode 100644 index 0000000..a3994cd --- /dev/null +++ b/nixos/chuwi-configuration.nix @@ -0,0 +1,66 @@ +# This file is meant to be renamed to `configuration.nix` +# Chuwi minibook NixOS configuration + +{ config, pkgs, ... }: + +{ + imports = + [ + ./common-configuration.nix + ./hardware-configuration.nix + ./private-configuration.nix + ]; + + # Bootloader. + boot.loader.systemd-boot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + + networking.hostName = "chuwi"; # Define your hostname. + # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. + + # Enable networking + networking.networkmanager.enable = true; + hardware.cpu.intel.updateMicrocode = true; + + + # Define a user account. Don't forget to set a password with ‘passwd’. + users.users.user = { + isNormalUser = true; + description = "user"; + extraGroups = [ "networkmanager" "wheel" ]; + packages = with pkgs; []; + }; + + # Allow unfree packages + nixpkgs.config.allowUnfree = true; + + # This value determines the NixOS release from which the default + # settings for stateful data, like file locations and database versions + # on your system were taken. It‘s perfectly fine and recommended to leave + # this value at the release version of the first install of this system. + # Before changing this value read the documentation for this option + # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). + system.stateVersion = "24.11"; # Did you read the comment? + + # Chuwi specific: + # fix wifi issues + boot.kernelPackages = pkgs.linuxPackages_latest; + + # fix screen rotation issue + boot.kernelParams = [ + "fbcon=rotate:1" + ]; + services.xserver.xrandrHeads = [ + { + monitorConfig = "Option \"Rotate\" \"right\""; + output = "DSI-1"; + } + ]; + + # some extra packages + environment.systemPackages = with pkgs; [ + # note taking + rnote + xournalpp + ]; +} diff --git a/nixos/common-configuration.nix b/nixos/common-configuration.nix index 01aa139..331a032 100644 --- a/nixos/common-configuration.nix +++ b/nixos/common-configuration.nix @@ -21,6 +21,28 @@ LC_TIME = "es_ES.UTF-8"; }; + services.displayManager = { + defaultSession = "none+i3"; + }; + services.xserver = { + xkb = { # Configure keymap in X11 + layout = "us"; + variant = ""; + }; + + enable=true; + #displayManager = { + # defaultSession = "none+i3"; + #}; + windowManager.i3 = { + enable=true; + extraPackages = with pkgs; [ + dmenu + i3status + i3lock + ]; + }; + }; environment.systemPackages = with pkgs; [ # utilities @@ -41,6 +63,7 @@ gnutar xorg.xmodmap # keyboard remapping xfce.xfce4-screenshooter + pulseaudio # code editors vim @@ -63,6 +86,11 @@ xfce.xfconf # needed to save preferences of thunar xfce.ristretto xfce.tumbler # for thumbnails of imgs + # for detecting usbs: + xfce.thunar-volman + gvfs + polkit_gnome + udiskie # media pavucontrol @@ -93,7 +121,7 @@ clang clang-tools pkg-config - openssl + openssl.dev stdenv rustup wabt # wasm binary toolkit @@ -129,8 +157,21 @@ users.defaultUserShell = pkgs.zsh; environment.shells = with pkgs; [zsh]; + # set default pdf reader to zathura xdg.mime.enable=true; + environment.sessionVariables = { + BROWSER = "zathura"; + }; xdg.mime.defaultApplications = { "application/pdf" = "zathura"; }; + + # gvfs needed for Thunar to detect external disks + services.gvfs.enable = true; + + # bluetooth related + hardware.bluetooth.enable = true; + services.blueman.enable = true; + + #hardware.pulseaudio.enable = true; } diff --git a/nixos/surface-configuration.nix b/nixos/surface-configuration.nix index 354544f..0a081e9 100644 --- a/nixos/surface-configuration.nix +++ b/nixos/surface-configuration.nix @@ -1,8 +1,5 @@ # This file is meant to be renamed to `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’). +# Surface Go 2 NixOS configuration { config, pkgs, ... }: @@ -24,7 +21,7 @@ "/crypto_keyfile.bin" = null; }; - networking.hostName = "nixos"; # Define your hostname. + networking.hostName = "surface"; # Define your hostname. # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. # Configure network proxy if necessary @@ -34,35 +31,6 @@ # Enable networking networking.networkmanager.enable = true; - # Set your time zone. - time.timeZone = "Europe/Madrid"; - - # Select internationalisation properties. - i18n.defaultLocale = "en_US.UTF-8"; - - i18n.extraLocaleSettings = { - LC_ALL = "en_US.UTF-8"; - }; - - # Configure keymap in X11 - services.xserver = { - layout = "us"; - xkbVariant = ""; - - enable=true; - displayManager = { - defaultSession = "none+i3"; - }; - windowManager.i3 = { - enable=true; - extraPackages = with pkgs; [ - dmenu - i3status - i3lock - ]; - }; - }; - # Define a user account. Don't forget to set a password with ‘passwd’. users.users.userc = { isNormalUser = true; @@ -74,30 +42,6 @@ # Allow unfree packages nixpkgs.config.allowUnfree = true; - - programs.zsh.enable = true; - users.defaultUserShell = pkgs.zsh; - environment.shells = with pkgs; [zsh]; - - # 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; - # }; - - # List services that you want to enable: - - # Enable the OpenSSH daemon. - # services.openssh.enable = true; - - # Open ports in the firewall. - # networking.firewall.allowedTCPPorts = [ ... ]; - # networking.firewall.allowedUDPPorts = [ ... ]; - # Or disable the firewall altogether. - # networking.firewall.enable = false; - # This value determines the NixOS release from which the default # settings for stateful data, like file locations and database versions # on your system were taken. It‘s perfectly fine and recommended to leave @@ -109,10 +53,6 @@ # gvfs needed for Thunar to detect external disks services.gvfs.enable = true; - # bluetooth related - hardware.bluetooth.enable = true; - services.blueman.enable = true; - # obs virtual camera boot.extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback diff --git a/nixos/thinkpad-configuration.nix b/nixos/thinkpad-configuration.nix index c4e9014..1095d6b 100644 --- a/nixos/thinkpad-configuration.nix +++ b/nixos/thinkpad-configuration.nix @@ -1,8 +1,5 @@ # This file is meant to be renamed to `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’). +# Thinkpad NixOS configuration { config, pkgs, ... }: @@ -18,35 +15,12 @@ boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; - networking.hostName = "nixos"; # Define your hostname. + networking.hostName = "thinkpad"; # Define your hostname. # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. # Enable networking networking.networkmanager.enable = true; - services.displayManager = { - defaultSession = "none+i3"; - }; - services.xserver = { - xkb = { # Configure keymap in X11 - layout = "us"; - variant = ""; - }; - - enable=true; - #displayManager = { - # defaultSession = "none+i3"; - #}; - windowManager.i3 = { - enable=true; - extraPackages = with pkgs; [ - dmenu - i3status - i3lock - ]; - }; - }; - # Define a user account users.users.user = { isNormalUser = true; @@ -70,9 +44,5 @@ # gvfs needed for Thunar to detect external disks services.gvfs.enable = true; - # bluetooth related - hardware.bluetooth.enable = true; - services.blueman.enable = true; - hardware.pulseaudio.enable = true; } diff --git a/vimconfigbase.vim b/vimconfigbase.vim index 465274e..b94c400 100644 --- a/vimconfigbase.vim +++ b/vimconfigbase.vim @@ -42,3 +42,6 @@ set pastetoggle= " set ignorecase " do case insensitive search set incsearch " show incremental search results as you type + +" disable mouse +set mouse= diff --git a/zathurarc b/zathurarc new file mode 100644 index 0000000..804623b --- /dev/null +++ b/zathurarc @@ -0,0 +1,3 @@ +" this file goes at ~/.config/zathura/zathurarc + +map exec "zathura $FILE"