From e43f3c403ff49e87641bb6c745080760f272446f Mon Sep 17 00:00:00 2001 From: jdlugosz963 Date: Sat, 15 Oct 2022 14:03:46 +0200 Subject: Update dotfiles --- .bash_profile | 3 +- .config/emacs/init.el | 50 ++- .config/emacs/jd/jd-mu4e.el | 30 +- .config/guix/channels.scm | 19 - .config/guix/manifests/desktop.scm | 22 - .config/guix/manifests/emacs.scm | 77 ---- .config/guix/systems/base-system.scm | 115 ------ .config/guix/systems/viking.scm | 27 -- .config/ranger/rc.conf | 760 ----------------------------------- Guix.org | 276 ------------- bin/activate-profiles | 39 -- bin/update-profiles | 22 - 12 files changed, 38 insertions(+), 1402 deletions(-) delete mode 100644 .config/guix/channels.scm delete mode 100644 .config/guix/manifests/desktop.scm delete mode 100644 .config/guix/manifests/emacs.scm delete mode 100644 .config/guix/systems/base-system.scm delete mode 100644 .config/guix/systems/viking.scm delete mode 100644 .config/ranger/rc.conf delete mode 100644 Guix.org delete mode 100755 bin/activate-profiles delete mode 100755 bin/update-profiles diff --git a/.bash_profile b/.bash_profile index debd6e7..8182e2b 100644 --- a/.bash_profile +++ b/.bash_profile @@ -1,2 +1 @@ -export PATH="$PATH:$HOME/.local/bin" -export TERM=xterm +export PATH="$HOME/bin:$PATH" diff --git a/.config/emacs/init.el b/.config/emacs/init.el index 011d660..c77dbe8 100644 --- a/.config/emacs/init.el +++ b/.config/emacs/init.el @@ -4,7 +4,7 @@ (message "Emacs loaded in %s with %d garbage collections." (format "%.2f seconds" (float-time - (time-subtract after-init-time before-init-time))) + (time-subtract after-init-time before-init-time))) gcs-done)) (defun jd/startup () @@ -27,23 +27,23 @@ (setq user-emacs-directory "~/.cache/emacs") (require 'package) - (setq package-archives '(("melpa" . "https://melpa.org/packages/") - ("org" . "https://orgmode.org/elpa/") - ("gnu-devel" . "https://elpa.gnu.org/devel/") - ("elpa" . "https://elpa.gnu.org/packages/"))) - (package-initialize) +(setq package-archives '(("melpa" . "https://melpa.org/packages/") + ("org" . "https://orgmode.org/elpa/") + ("gnu-devel" . "https://elpa.gnu.org/devel/") + ("elpa" . "https://elpa.gnu.org/packages/"))) +(package-initialize) - (unless package-archive-contents - (package-refresh-contents)) +(unless package-archive-contents + (package-refresh-contents)) - (unless (package-installed-p 'use-package) - (package-install 'use-package)) +(unless (package-installed-p 'use-package) + (package-install 'use-package)) -;; (setq use-package-always-ensure t) +(setq use-package-always-ensure t) - (add-to-list 'load-path ".config/emacs/jd/") +(add-to-list 'load-path ".config/emacs/jd/") - (require 'use-package) +(require 'use-package) (use-package general :config @@ -135,7 +135,7 @@ ("C-k" . ivy-previous-line) ("C-j" . ivy-next-line) :map ivy-switch-buffer-map - ("C-k" . ivy-previous-line)) + ("C-k" . ivy-previous-line)) :config (ivy-mode 1)) @@ -405,10 +405,10 @@ :after lsp) (defun jd/python-mode-setup () - (let ((project-venv-path (concat (projectile-project-root) "venv/"))) - (when (projectile--directory-p project-venv-path) - (pyvenv-activate project-venv-path) - (pyvenv-mode)))) + (let ((project-venv-path (concat (projectile-project-root) "venv/"))) + (when (projectile--directory-p project-venv-path) + (pyvenv-activate project-venv-path) + (pyvenv-mode)))) ;; (use-package python-mode ;;TODO: find alternative ;; :hook (python-mode . lsp-deferred) @@ -416,8 +416,8 @@ ;; :config ;; (add-to-list 'auto-mode-alist '("\\.py\\'" . python-mode))) - (use-package pyvenv - :after python-mode) +(use-package pyvenv + :after python-mode) (use-package typescript-mode :mode ("\\.ts\\'") @@ -465,9 +465,9 @@ :after lsp-mode :hook (lsp-mode . company-mode) :bind (:map company-active-map - ("" . company-complete-selection)) - (:map lsp-mode-map - ("" . company-indent-or-complete-common)) + ("" . company-complete-selection)) + (:map lsp-mode-map + ("" . company-indent-or-complete-common)) :custom (company-minimum-prefix-length 1) (company-idle-delay 0.0) @@ -551,8 +551,6 @@ (use-package dired-ranger) -(use-package dired-single) - (use-package dired :ensure nil :commands (dired dired-jump) @@ -565,7 +563,7 @@ "h" 'dired-up-directory "t" 'dired-create-empty-file "T" 'dired-toggle-marks - "l" 'dired-single-buffer) + "l" 'dired-find-file) (setq dired-kill-when-opening-new-dired-buffer t) (evil-define-key 'normal dired-mode-map (kbd "q") 'kill-current-buffer)) diff --git a/.config/emacs/jd/jd-mu4e.el b/.config/emacs/jd/jd-mu4e.el index 084354d..cda39f2 100644 --- a/.config/emacs/jd/jd-mu4e.el +++ b/.config/emacs/jd/jd-mu4e.el @@ -1,8 +1,4 @@ -(add-to-list 'load-path "/usr/share/emacs/site-lisp/mu4e") - - -(use-package org-msg - :ensure t) +(use-package org-msg) (use-package mu4e :defer 20 @@ -33,18 +29,18 @@ (mu4e-sent-messages-behavior . sent) )) ,(make-mu4e-context - :name "Gmail" - :match-func (lambda (msg) (when msg - (string-prefix-p "/gmail" (mu4e-message-field msg :maildir)))) - :vars '( - (user-full-name . "Jakub Dlugosz") - (user-mail-address . "jdlugosz963@gmail.pl") - (mu4e-sent-folder . "/gmail/\[Gmail\]/Wys\&AUI-ane") - (mu4e-trash-folder . "/gmail/\[Gmail\]/Kosz") - (mu4e-drafts-folder . "/gmail/\[Gmail\]/Wersje\ robocze") - (mu4e-refile-folder . "/gmail/Archive") - (mu4e-sent-messages-behavior . sent) - )))) + :name "Gmail" + :match-func (lambda (msg) (when msg + (string-prefix-p "/gmail" (mu4e-message-field msg :maildir)))) + :vars '( + (user-full-name . "Jakub Dlugosz") + (user-mail-address . "jdlugosz963@gmail.pl") + (mu4e-sent-folder . "/gmail/\[Gmail\]/Wys\&AUI-ane") + (mu4e-trash-folder . "/gmail/\[Gmail\]/Kosz") + (mu4e-drafts-folder . "/gmail/\[Gmail\]/Wersje\ robocze") + (mu4e-refile-folder . "/gmail/Archive") + (mu4e-sent-messages-behavior . sent) + )))) (setq mail-user-agent 'mu4e-user-agent message-send-mail-function 'smtpmail-send-it diff --git a/.config/guix/channels.scm b/.config/guix/channels.scm deleted file mode 100644 index ab15010..0000000 --- a/.config/guix/channels.scm +++ /dev/null @@ -1,19 +0,0 @@ -(list - (channel - (name 'guix) - (url "https://git.savannah.gnu.org/git/guix.git") - ;; (url "file:///home/daviwil/Projects/Code/guix")) - (introduction - (make-channel-introduction - "9edb3f66fd807b096b48283debdcddccfea34bad" - (openpgp-fingerprint - "BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA")))) - (channel - (name 'nonguix) - (url "https://gitlab.com/nonguix/nonguix") - ;; Enable signature verification: - (introduction - (make-channel-introduction - "897c1a470da759236cc11798f4e0a5f7d4d59fbc" - (openpgp-fingerprint - "2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5"))))) diff --git a/.config/guix/manifests/desktop.scm b/.config/guix/manifests/desktop.scm deleted file mode 100644 index 17f7fef..0000000 --- a/.config/guix/manifests/desktop.scm +++ /dev/null @@ -1,22 +0,0 @@ -(specifications->manifest - '( - - "flatpak" - - "pulsemixer" - - "blueman" - - "xev" - "xset" - "xrdb" - "xhost" - "xmodmap" - "setxkbmap" - "xrandr" - "arandr" - "xss-lock" - "libinput" - "xinput" - -)) diff --git a/.config/guix/manifests/emacs.scm b/.config/guix/manifests/emacs.scm deleted file mode 100644 index c6ff413..0000000 --- a/.config/guix/manifests/emacs.scm +++ /dev/null @@ -1,77 +0,0 @@ -(specifications->manifest - '("emacs" - ;;"emacs-native-comp" - - "emacs-general" - - "emacs-undo-tree" - "emacs-evil" - "emacs-evil-collection" - - "emacs-diminish" - "emacs-doom-themes" - "font-hack" - - "emacs-hl-todo" - - "emacs-counsel" - "emacs-ivy" - - "emacs-which-key" - - "emacs-doom-modeline" - - "emacs-hydra" - - "emacs-beacon" - - "emacs-org" - - "emacs-evil-org" - - "emacs-toc-org" - - "emacs-visual-fill-column" - - "emacs-org-superstar" - - "emacs-org-roam" - - "emacs-lsp-mode" - "emacs-lsp-ivy" - - "emacs-pyvenv" - ;; "emacs-python-mode" - - "emacs-typescript-mode" - "emacs-web-mode" - "emacs-tide" - "emacs-flycheck" - - "emacs-yaml-mode" - - "emacs-docker" - - "emacs-company" - - "emacs-projectile" - - "emacs-neotree" - - "emacs-magit" - - "emacs-vterm" - - ; "emacs-dired-single" - "emacs-dired-hacks" - "emacs-all-the-icons-dired" - - "emacs-emms" - - "emacs-pdf-tools" - - "mu" - - "emacs-elfeed" - -)) diff --git a/.config/guix/systems/base-system.scm b/.config/guix/systems/base-system.scm deleted file mode 100644 index 7c67fad..0000000 --- a/.config/guix/systems/base-system.scm +++ /dev/null @@ -1,115 +0,0 @@ -(define-module (base-system) - #:use-module (gnu) - #:use-module (gnu services pm) - #:use-module (gnu services docker) - #:use-module (gnu services networking) - #:use-module (gnu services virtualization) ; todo make - #:use-module (gnu packages vim) - #:use-module (gnu services desktop) - #:use-module (gnu packages xorg) - #:use-module (gnu packages emacs) - #:use-module (gnu packages file-systems) - #:use-module (gnu packages linux) - #:use-module (gnu packages audio) - #:use-module (gnu packages pulseaudio) - #:use-module (gnu packages version-control) - #:use-module (gnu packages package-management)) - ; #:use-module (nongnu packages linux) - ; #:use-module (nongnu system linux-initrd)) - -(use-service-modules ssh) -(use-package-modules certs) -(use-service-modules desktop xorg) - -(define-public base-operating-system - (operating-system - (host-name "base") - (timezone "Europe/Warsaw") - (locale "en_US.utf8") - (keyboard-layout (keyboard-layout "pl")) - - ;; Use non-free Linux and firmware - ;; (kernel linux) - ;; (firmware (list linux-firmware)) - ;; (initrd microcode-initrd) - - (bootloader (bootloader-configuration - (bootloader grub-efi-bootloader) - (targets "/boot/efi"))) - ;; (keyboard-layout keyboard-layout))) - - ;; Guix doesn't like it when there isn't a file-systems - ;; entry, so add one that is meant to be overridden - (file-systems (cons* - (file-system - (mount-point "/tmp") - (device "none") - (type "tmpfs") - (check? #f)) - %base-file-systems)) - - ;; Users - (users (cons (user-account - (name "jakub") - (comment "Jakub Dlugosz") - (group "users") - (home-directory "/home/jakub") - (supplementary-groups '( - "wheel" - "netdev" - "kvm" - "tty" - "input" - "docker" - "lp" - "audio" - "video"))) - %base-user-accounts)) - - - ;; Packages - (packages (append (list - git - exfat-utils - fuse-exfat - stow - vim - emacs - bluez - bluez-alsa - pulseaudio - tlp - ncurses - xf86-input-libinput - nss-certs) ;; For https connection - %base-packages)) - - - ;; Services - (services - (append - (list - - (service elogind-service-type) - (service openssh-service-type) - (service network-manager-service-type) - (service slim-service-type) - (service tlp-service-type - (tlp-configuration - (cpu-boost-on-ac? #t) - (wifi-pwr-on-bat? #t))) - (bluetooth-service #:auto-enable? #t) - (service docker-service-type) - (service wpa-supplicant-service-type)) - (service libvirt-service-type - (libvirt-configuration - (unix-sock-group "libvirt") - (tls-port "16555"))) - (set-xorg-configuration - (xorg-configuration - (keyboard-layout keyboard-layout))) - - %base-services)) - - ;; Allow resolution of '.local' host names with mDNS - (name-service-switch %mdns-host-lookup-nss))) diff --git a/.config/guix/systems/viking.scm b/.config/guix/systems/viking.scm deleted file mode 100644 index 00b279e..0000000 --- a/.config/guix/systems/viking.scm +++ /dev/null @@ -1,27 +0,0 @@ -(define-module (viking) - #:use-module (base-system) - #:use-module (gnu)) - -(operating-system - (inherit base-operating-system) - (host-name "viking") - - (bootloader - (bootloader-configuration - (bootloader grub-bootloader) - (target "/dev/sda"))) - - (mapped-devices - (list (mapped-device - (source - (uuid "75a1ebd7-13c2-442f-80ff-1b5e59522e29")) - (target "cryptroot") - (type luks-device-mapping)))) - - (file-systems - (cons* (file-system - (mount-point "/") - (device "/dev/mapper/cryptroot") - (type "ext4") - (dependencies mapped-devices)) - %base-file-systems))) diff --git a/.config/ranger/rc.conf b/.config/ranger/rc.conf deleted file mode 100644 index ac7ca93..0000000 --- a/.config/ranger/rc.conf +++ /dev/null @@ -1,760 +0,0 @@ -# =================================================================== -# This file contains the default startup commands for ranger. -# To change them, it is recommended to create either /etc/ranger/rc.conf -# (system-wide) or ~/.config/ranger/rc.conf (per user) and add your custom -# commands there. -# -# If you copy this whole file there, you may want to set the environment -# variable RANGER_LOAD_DEFAULT_RC to FALSE to avoid loading it twice. -# -# The purpose of this file is mainly to define keybindings and settings. -# For running more complex python code, please create a plugin in "plugins/" or -# a command in "commands.py". -# -# Each line is a command that will be run before the user interface -# is initialized. As a result, you can not use commands which rely -# on the UI such as :delete or :mark. -# =================================================================== - -# =================================================================== -# == Options -# =================================================================== - -# Which viewmode should be used? Possible values are: -# miller: Use miller columns which show multiple levels of the hierarchy -# multipane: Midnight-commander like multipane view showing all tabs next -# to each other -set viewmode miller -#set viewmode multipane - -# How many columns are there, and what are their relative widths? -set column_ratios 1,3,4 - -# Which files should be hidden? (regular expression) -set hidden_filter ^\.|\.(?:pyc|pyo|bak|swp)$|^lost\+found$|^__(py)?cache__$ - -# Show hidden files? You can toggle this by typing 'zh' -set show_hidden false - -# Ask for a confirmation when running the "delete" command? -# Valid values are "always", "never", "multiple" (default) -# With "multiple", ranger will ask only if you delete multiple files at once. -set confirm_on_delete multiple - -# Use non-default path for file preview script? -# ranger ships with scope.sh, a script that calls external programs (see -# README.md for dependencies) to preview images, archives, etc. -#set preview_script ~/.config/ranger/scope.sh - -# Use the external preview script or display simple plain text or image previews? -set use_preview_script true - -# Automatically count files in the directory, even before entering them? -set automatically_count_files true - -# Open all images in this directory when running certain image viewers -# like feh or sxiv? You can still open selected files by marking them. -set open_all_images true - -# Be aware of version control systems and display information. -set vcs_aware false - -# State of the four backends git, hg, bzr, svn. The possible states are -# disabled, local (only show local info), enabled (show local and remote -# information). -set vcs_backend_git enabled -set vcs_backend_hg disabled -set vcs_backend_bzr disabled -set vcs_backend_svn disabled - -# Truncate the long commit messages to this length when shown in the statusbar. -set vcs_msg_length 50 - -# Use one of the supported image preview protocols -set preview_images true - -# Set the preview image method. Supported methods: -# -# * w3m (default): -# Preview images in full color with the external command "w3mimgpreview"? -# This requires the console web browser "w3m" and a supported terminal. -# It has been successfully tested with "xterm" and "urxvt" without tmux. -# -# * iterm2: -# Preview images in full color using iTerm2 image previews -# (http://iterm2.com/images.html). This requires using iTerm2 compiled -# with image preview support. -# -# This feature relies on the dimensions of the terminal's font. By default, a -# width of 8 and height of 11 are used. To use other values, set the options -# iterm2_font_width and iterm2_font_height to the desired values. -# -# * terminology: -# Previews images in full color in the terminology terminal emulator. -# Supports a wide variety of formats, even vector graphics like svg. -# -# * urxvt: -# Preview images in full color using urxvt image backgrounds. This -# requires using urxvt compiled with pixbuf support. -# -# * urxvt-full: -# The same as urxvt but utilizing not only the preview pane but the -# whole terminal window. -# -# * kitty: -# Preview images in full color using kitty image protocol. -# Requires python PIL or pillow library. -# If ranger does not share the local filesystem with kitty -# the transfer method is changed to encode the whole image; -# while slower, this allows remote previews, -# for example during an ssh session. -# Tmux is unsupported. -# -# * ueberzug: -# Preview images in full color with the external command "ueberzug". -# Images are shown by using a child window. -# Only for users who run X11 in GNU/Linux. -# set preview_images_method w3m -set preview_images_method ueberzug - -# Delay in seconds before displaying an image with the w3m method. -# Increase it in case of experiencing display corruption. -set w3m_delay 0.02 - -# Manually adjust the w3mimg offset when using a terminal which needs this -set w3m_offset 0 - -# Default iTerm2 font size (see: preview_images_method: iterm2) -set iterm2_font_width 8 -set iterm2_font_height 11 - -# Use a unicode "..." character to mark cut-off filenames? -set unicode_ellipsis false - -# BIDI support - try to properly display file names in RTL languages (Hebrew, Arabic). -# Requires the python-bidi pip package -set bidi_support false - -# Show dotfiles in the bookmark preview box? -set show_hidden_bookmarks true - -# Which colorscheme to use? These colorschemes are available by default: -# default, jungle, snow, solarized -set colorscheme default - -# Preview files on the rightmost column? -# And collapse (shrink) the last column if there is nothing to preview? -set preview_files true -set preview_directories true -set collapse_preview true - -# Wrap long lines in plain text previews? -set wrap_plaintext_previews false - -# Save the console history on exit? -set save_console_history true - -# Draw the status bar on top of the browser window (default: bottom) -set status_bar_on_top false - -# Draw a progress bar in the status bar which displays the average state of all -# currently running tasks which support progress bars? -set draw_progress_bar_in_status_bar true - -# Draw borders around columns? (separators, outline, both, or none) -# Separators are vertical lines between columns. -# Outline draws a box around all the columns. -# Both combines the two. -set draw_borders none - -# Display the directory name in tabs? -set dirname_in_tabs false - -# Enable the mouse support? -set mouse_enabled true - -# Display the file size in the main column or status bar? -set display_size_in_main_column true -set display_size_in_status_bar true - -# Display the free disk space in the status bar? -set display_free_space_in_status_bar true - -# Display files tags in all columns or only in main column? -set display_tags_in_all_columns true - -# Set a title for the window? Updates both `WM_NAME` and `WM_ICON_NAME` -set update_title false - -# Set the tmux/screen window-name to "ranger"? -set update_tmux_title true - -# Shorten the title if it gets long? The number defines how many -# directories are displayed at once, 0 turns off this feature. -set shorten_title 3 - -# Show hostname in titlebar? -set hostname_in_titlebar true - -# Abbreviate $HOME with ~ in the titlebar (first line) of ranger? -set tilde_in_titlebar false - -# How many directory-changes or console-commands should be kept in history? -set max_history_size 20 -set max_console_history_size 50 - -# Try to keep so much space between the top/bottom border when scrolling: -set scroll_offset 8 - -# Flush the input after each key hit? (Noticeable when ranger lags) -set flushinput true - -# Padding on the right when there's no preview? -# This allows you to click into the space to run the file. -set padding_right true - -# Save bookmarks (used with mX and `X) instantly? -# This helps to synchronize bookmarks between multiple ranger -# instances but leads to *slight* performance loss. -# When false, bookmarks are saved when ranger is exited. -set autosave_bookmarks true - -# Save the "`" bookmark to disk. This can be used to switch to the last -# directory by typing "``". -set save_backtick_bookmark true - -# You can display the "real" cumulative size of directories by using the -# command :get_cumulative_size or typing "dc". The size is expensive to -# calculate and will not be updated automatically. You can choose -# to update it automatically though by turning on this option: -set autoupdate_cumulative_size false - -# Turning this on makes sense for screen readers: -set show_cursor false - -# One of: size, natural, basename, atime, ctime, mtime, type, random -set sort natural - -# Additional sorting options -set sort_reverse false -set sort_case_insensitive true -set sort_directories_first true -set sort_unicode false - -# Enable this if key combinations with the Alt Key don't work for you. -# (Especially on xterm) -set xterm_alt_key false - -# Whether to include bookmarks in cd command -set cd_bookmarks true - -# Changes case sensitivity for the cd command tab completion -set cd_tab_case sensitive - -# Use fuzzy tab completion with the "cd" command. For example, -# ":cd /u/lo/b" expands to ":cd /usr/local/bin". -set cd_tab_fuzzy false - -# Avoid previewing files larger than this size, in bytes. Use a value of 0 to -# disable this feature. -set preview_max_size 0 - -# The key hint lists up to this size have their sublists expanded. -# Otherwise the submaps are replaced with "...". -set hint_collapse_threshold 10 - -# Add the highlighted file to the path in the titlebar -set show_selection_in_titlebar true - -# The delay that ranger idly waits for user input, in milliseconds, with a -# resolution of 100ms. Lower delay reduces lag between directory updates but -# increases CPU load. -set idle_delay 2000 - -# When the metadata manager module looks for metadata, should it only look for -# a ".metadata.json" file in the current directory, or do a deep search and -# check all directories above the current one as well? -set metadata_deep_search false - -# Clear all existing filters when leaving a directory -set clear_filters_on_dir_change false - -# Disable displaying line numbers in main column. -# Possible values: false, absolute, relative. -set line_numbers false - -# When line_numbers=relative show the absolute line number in the -# current line. -set relative_current_zero false - -# Start line numbers from 1 instead of 0 -set one_indexed false - -# Save tabs on exit -set save_tabs_on_exit false - -# Enable scroll wrapping - moving down while on the last item will wrap around to -# the top and vice versa. -set wrap_scroll false - -# Set the global_inode_type_filter to nothing. Possible options: d, f and l for -# directories, files and symlinks respectively. -set global_inode_type_filter - -# This setting allows to freeze the list of files to save I/O bandwidth. It -# should be 'false' during start-up, but you can toggle it by pressing F. -set freeze_files false - -# Print file sizes in bytes instead of the default human-readable format. -set size_in_bytes false - -# Warn at startup if RANGER_LEVEL env var is greater than 0, in other words -# give a warning when you nest ranger in a subshell started by ranger. -# Special value "error" makes the warning more visible. -set nested_ranger_warning true - -# =================================================================== -# == Local Options -# =================================================================== -# You can set local options that only affect a single directory. - -# Examples: -# setlocal path=~/downloads sort mtime - -# =================================================================== -# == Command Aliases in the Console -# =================================================================== - -alias e edit -alias q quit -alias q! quit! -alias qa quitall -alias qa! quitall! -alias qall quitall -alias qall! quitall! -alias setl setlocal - -alias filter scout -prts -alias find scout -aets -alias mark scout -mr -alias unmark scout -Mr -alias search scout -rs -alias search_inc scout -rts -alias travel scout -aefklst - -# =================================================================== -# == Define keys for the browser -# =================================================================== - -# Basic -map Q quitall -map q quit -copymap q ZZ ZQ - -map R reload_cwd -map F set freeze_files! -map reset -map redraw_window -map abort -map change_mode normal -map ~ set viewmode! - -map i display_file -map scroll_preview 1 -map scroll_preview -1 -map ? help -map W display_log -map w taskview_open -map S shell $SHELL - -map : console -map ; console -map ! console shell%space -map @ console -p6 shell %%s -map # console shell -p%space -map s console shell%space -map r chain draw_possible_programs; console open_with%space -map f console find%space -map cd console cd%space - -map chain console; eval fm.ui.console.history_move(-1) - -# Change the line mode -map Mf linemode filename -map Mi linemode fileinfo -map Mm linemode mtime -map Mh linemode humanreadablemtime -map Mp linemode permissions -map Ms linemode sizemtime -map MH linemode sizehumanreadablemtime -map Mt linemode metatitle - -# Tagging / Marking -map t tag_toggle -map ut tag_remove -map " tag_toggle tag=%any -map mark_files toggle=True -map v mark_files all=True toggle=True -map uv mark_files all=True val=False -map V toggle_visual_mode -map uV toggle_visual_mode reverse=True - -# For the nostalgics: Midnight Commander bindings -map help -map rename_append -map display_file -map edit -map copy -map cut -map console mkdir%space -map console delete -#map console trash -map exit - -# In case you work on a keyboard with dvorak layout -map move up=1 -map move down=1 -map move left=1 -map move right=1 -map move to=0 -map move to=-1 -map move down=1 pages=True -map move up=1 pages=True -map move right=1 -#map console delete -map console touch%space - -# VIM-like -copymap k -copymap j -copymap h -copymap l -copymap gg -copymap G -copymap -copymap - -map J move down=0.5 pages=True -map K move up=0.5 pages=True -copymap J -copymap K - -# Jumping around -map H history_go -1 -map L history_go 1 -map ] move_parent 1 -map [ move_parent -1 -map } traverse -map { traverse_backwards -map ) jump_non - -map gh cd ~ -map ge cd /etc -map gu cd /usr -map gd cd /dev -map gl cd -r . -map gL cd -r %f -map go cd /opt -map gv cd /var -map gm cd /media -map gi eval fm.cd('/run/media/' + os.getenv('USER')) -map gM cd /mnt -map gs cd /srv -map gp cd /tmp -map gr cd / -map gR eval fm.cd(ranger.RANGERDIR) -map g/ cd / -map g? cd /usr/share/doc/ranger - -# External Programs -map E edit -map du shell -p du --max-depth=1 -h --apparent-size -map dU shell -p du --max-depth=1 -h --apparent-size | sort -rh -map yp yank path -map yd yank dir -map yn yank name -map y. yank name_without_extension - -# Filesystem Operations -map = chmod - -map cw console rename%space -map a rename_append -map A eval fm.open_console('rename ' + fm.thisfile.relative_path.replace("%", "%%")) -map I eval fm.open_console('rename ' + fm.thisfile.relative_path.replace("%", "%%"), position=7) - -map pp paste -map po paste overwrite=True -map pP paste append=True -map pO paste overwrite=True append=True -map pl paste_symlink relative=False -map pL paste_symlink relative=True -map phl paste_hardlink -map pht paste_hardlinked_subtree -map pd console paste dest= -map p` paste dest=%any_path -map p' paste dest=%any_path - -map dD console delete -map dT console trash - -map dd cut -map ud uncut -map da cut mode=add -map dr cut mode=remove -map dt cut mode=toggle - -map yy copy -map uy uncut -map ya copy mode=add -map yr copy mode=remove -map yt copy mode=toggle - -# Temporary workarounds -map dgg eval fm.cut(dirarg=dict(to=0), narg=quantifier) -map dG eval fm.cut(dirarg=dict(to=-1), narg=quantifier) -map dj eval fm.cut(dirarg=dict(down=1), narg=quantifier) -map dk eval fm.cut(dirarg=dict(up=1), narg=quantifier) -map ygg eval fm.copy(dirarg=dict(to=0), narg=quantifier) -map yG eval fm.copy(dirarg=dict(to=-1), narg=quantifier) -map yj eval fm.copy(dirarg=dict(down=1), narg=quantifier) -map yk eval fm.copy(dirarg=dict(up=1), narg=quantifier) - -# Searching -map / console search%space -map n search_next -map N search_next forward=False -map ct search_next order=tag -map cs search_next order=size -map ci search_next order=mimetype -map cc search_next order=ctime -map cm search_next order=mtime -map ca search_next order=atime - -# Tabs -map tab_new -map tab_close -map tab_move 1 -map tab_move -1 -map tab_move 1 -map tab_move -1 -map gt tab_move 1 -map gT tab_move -1 -map gn tab_new -map gc tab_close -map uq tab_restore -map tab_open 1 -map tab_open 2 -map tab_open 3 -map tab_open 4 -map tab_open 5 -map tab_open 6 -map tab_open 7 -map tab_open 8 -map tab_open 9 -map tab_shift 1 -map tab_shift -1 - -# Sorting -map or set sort_reverse! -map oz set sort=random -map os chain set sort=size; set sort_reverse=False -map ob chain set sort=basename; set sort_reverse=False -map on chain set sort=natural; set sort_reverse=False -map om chain set sort=mtime; set sort_reverse=False -map oc chain set sort=ctime; set sort_reverse=False -map oa chain set sort=atime; set sort_reverse=False -map ot chain set sort=type; set sort_reverse=False -map oe chain set sort=extension; set sort_reverse=False - -map oS chain set sort=size; set sort_reverse=True -map oB chain set sort=basename; set sort_reverse=True -map oN chain set sort=natural; set sort_reverse=True -map oM chain set sort=mtime; set sort_reverse=True -map oC chain set sort=ctime; set sort_reverse=True -map oA chain set sort=atime; set sort_reverse=True -map oT chain set sort=type; set sort_reverse=True -map oE chain set sort=extension; set sort_reverse=True - -map dc get_cumulative_size - -# Settings -map zc set collapse_preview! -map zd set sort_directories_first! -map zh set show_hidden! -map set show_hidden! -copymap -copymap -map zI set flushinput! -map zi set preview_images! -map zm set mouse_enabled! -map zp set preview_files! -map zP set preview_directories! -map zs set sort_case_insensitive! -map zu set autoupdate_cumulative_size! -map zv set use_preview_script! -map zf console filter%space -copymap zf zz - -# Filter stack -map .d filter_stack add type d -map .f filter_stack add type f -map .l filter_stack add type l -map .m console filter_stack add mime%space -map .n console filter_stack add name%space -map .# console filter_stack add hash%space -map ." filter_stack add duplicate -map .' filter_stack add unique -map .| filter_stack add or -map .& filter_stack add and -map .! filter_stack add not -map .r filter_stack rotate -map .c filter_stack clear -map .* filter_stack decompose -map .p filter_stack pop -map .. filter_stack show - -# Bookmarks -map ` enter_bookmark %any -map ' enter_bookmark %any -map m set_bookmark %any -map um unset_bookmark %any - -map m draw_bookmarks -copymap m um ` ' - -# Generate all the chmod bindings with some python help: -eval for arg in "rwxXst": cmd("map +u{0} shell -f chmod u+{0} %s".format(arg)) -eval for arg in "rwxXst": cmd("map +g{0} shell -f chmod g+{0} %s".format(arg)) -eval for arg in "rwxXst": cmd("map +o{0} shell -f chmod o+{0} %s".format(arg)) -eval for arg in "rwxXst": cmd("map +a{0} shell -f chmod a+{0} %s".format(arg)) -eval for arg in "rwxXst": cmd("map +{0} shell -f chmod u+{0} %s".format(arg)) - -eval for arg in "rwxXst": cmd("map -u{0} shell -f chmod u-{0} %s".format(arg)) -eval for arg in "rwxXst": cmd("map -g{0} shell -f chmod g-{0} %s".format(arg)) -eval for arg in "rwxXst": cmd("map -o{0} shell -f chmod o-{0} %s".format(arg)) -eval for arg in "rwxXst": cmd("map -a{0} shell -f chmod a-{0} %s".format(arg)) -eval for arg in "rwxXst": cmd("map -{0} shell -f chmod u-{0} %s".format(arg)) - -# =================================================================== -# == Define keys for the console -# =================================================================== -# Note: Unmapped keys are passed directly to the console. - -# Basic -cmap eval fm.ui.console.tab() -cmap eval fm.ui.console.tab(-1) -cmap eval fm.ui.console.close() -cmap eval fm.ui.console.execute() -cmap redraw_window - -copycmap -copycmap - -# Move around -cmap eval fm.ui.console.history_move(-1) -cmap eval fm.ui.console.history_move(1) -cmap eval fm.ui.console.move(left=1) -cmap eval fm.ui.console.move(right=1) -cmap eval fm.ui.console.move(right=0, absolute=True) -cmap eval fm.ui.console.move(right=-1, absolute=True) -cmap eval fm.ui.console.move_word(left=1) -cmap eval fm.ui.console.move_word(right=1) - -copycmap -copycmap - -# Line Editing -cmap eval fm.ui.console.delete(-1) -cmap eval fm.ui.console.delete(0) -cmap eval fm.ui.console.delete_word() -cmap eval fm.ui.console.delete_word(backward=False) -cmap eval fm.ui.console.delete_rest(1) -cmap eval fm.ui.console.delete_rest(-1) -cmap eval fm.ui.console.paste() - -# And of course the emacs way -copycmap -copycmap -copycmap -copycmap -copycmap -copycmap -copycmap -copycmap -copycmap - -# Note: There are multiple ways to express backspaces. (code 263) -# and (code 127). To be sure, use both. -copycmap - -# This special expression allows typing in numerals: -cmap false - -# =================================================================== -# == Pager Keybindings -# =================================================================== - -# Movement -pmap pager_move down=1 -pmap pager_move up=1 -pmap pager_move left=4 -pmap pager_move right=4 -pmap pager_move to=0 -pmap pager_move to=-1 -pmap pager_move down=1.0 pages=True -pmap pager_move up=1.0 pages=True -pmap pager_move down=0.5 pages=True -pmap pager_move up=0.5 pages=True - -copypmap k -copypmap j -copypmap h -copypmap l -copypmap g -copypmap G -copypmap d -copypmap u -copypmap n f -copypmap p b - -# Basic -pmap redraw_window -pmap pager_close -copypmap q Q i -pmap E edit_file - -# =================================================================== -# == Taskview Keybindings -# =================================================================== - -# Movement -tmap taskview_move up=1 -tmap taskview_move down=1 -tmap taskview_move to=0 -tmap taskview_move to=-1 -tmap taskview_move down=1.0 pages=True -tmap taskview_move up=1.0 pages=True -tmap taskview_move down=0.5 pages=True -tmap taskview_move up=0.5 pages=True - -copytmap k -copytmap j -copytmap g -copytmap G -copytmap u -copytmap n f -copytmap p b - -# Changing priority and deleting tasks -tmap J eval -q fm.ui.taskview.task_move(-1) -tmap K eval -q fm.ui.taskview.task_move(0) -tmap dd eval -q fm.ui.taskview.task_remove() -tmap eval -q fm.ui.taskview.task_move(-1) -tmap eval -q fm.ui.taskview.task_move(0) -tmap eval -q fm.ui.taskview.task_remove() - -# Basic -tmap redraw_window -tmap taskview_close -copytmap q Q w diff --git a/Guix.org b/Guix.org deleted file mode 100644 index e2c9ef8..0000000 --- a/Guix.org +++ /dev/null @@ -1,276 +0,0 @@ -#+TITLE: Guix Configuration file - -* Resources -[[https://guix.gnu.org/manual/en/html_node/index.html][guix]] -[[https://github.com/daviwil/dotfiles/blob/master/Systems.org][daviwil/dotfiles]] - -* Managing profiles -Source: [[https://github.com/daviwil/dotfiles/blob/master/Systems.org#profile-management][daviwil/dotfiles]] -** Activate profiles - -#+begin_src sh :tangle bin/activate-profiles :shebang #!/bin/sh - # Source: https://github.com/daviwil/dotfiles/blob/master/Systems.org#profile-management - - GREEN='\033[1;32m' - RED='\033[1;30m' - NC='\033[0m' - GUIX_EXTRA_PROFILES=$HOME/.guix-extra-profiles - - profiles=$* - if [[ $# -eq 0 ]]; then - profiles="$HOME/.config/guix/manifests/*.scm"; - fi - - for profile in $profiles; do - # Remove the path and file extension, if any - profileName=$(basename $profile) - profileName="${profileName%.*}" - profilePath="$GUIX_EXTRA_PROFILES/$profileName" - manifestPath=$HOME/.config/guix/manifests/$profileName.scm - - if [ -f $manifestPath ]; then - echo - echo -e "${GREEN}Activating profile:" $manifestPath "${NC}" - echo - - mkdir -p $profilePath - guix package --manifest=$manifestPath --profile="$profilePath/$profileName" - - # Source the new profile - GUIX_PROFILE="$profilePath/$profileName" - if [ -f $GUIX_PROFILE/etc/profile ]; then - . "$GUIX_PROFILE"/etc/profile - else - echo -e "${RED}Couldn't find profile:" $GUIX_PROFILE/etc/profile "${NC}" - fi - else - echo "No profile found at path" $profilePath - fi - done - -#+end_src - -** Update profiles - -#+begin_src sh :tangle bin/update-profiles :shebang #!/bin/sh - # Source: https://github.com/daviwil/dotfiles/blob/master/Systems.org#profile-management - - GREEN='\033[1;32m' - NC='\033[0m' - GUIX_EXTRA_PROFILES=$HOME/.guix-extra-profiles - - profiles=$* - if [[ $# -eq 0 ]]; then - profiles="$GUIX_EXTRA_PROFILES/*"; - fi - - for profile in $profiles; do - profileName=$(basename $profile) - profilePath=$GUIX_EXTRA_PROFILES/$profileName - - echo - echo -e "${GREEN}Updating profile:" $profilePath "${NC}" - echo - - guix package --profile="$profilePath/$profileName" --manifest="$HOME/.config/guix/manifests/$profileName.scm" - done - -#+end_src - -* Channels -#+begin_src scheme :tangle .config/guix/channels.scm - (list - (channel - (name 'guix) - (url "https://git.savannah.gnu.org/git/guix.git") - ;; (url "file:///home/daviwil/Projects/Code/guix")) - (introduction - (make-channel-introduction - "9edb3f66fd807b096b48283debdcddccfea34bad" - (openpgp-fingerprint - "BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA")))) - (channel - (name 'nonguix) - (url "https://gitlab.com/nonguix/nonguix") - ;; Enable signature verification: - (introduction - (make-channel-introduction - "897c1a470da759236cc11798f4e0a5f7d4d59fbc" - (openpgp-fingerprint - "2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5"))))) -#+end_src - -* Systems -** Base - -#+begin_src scheme :tangle .config/guix/systems/base-system.scm - - (define-module (base-system) - #:use-module (gnu) - #:use-module (gnu services pm) - #:use-module (gnu services docker) - #:use-module (gnu services networking) - #:use-module (gnu services virtualization) ; todo make - #:use-module (gnu packages vim) - #:use-module (gnu services desktop) - #:use-module (gnu packages xorg) - #:use-module (gnu packages emacs) - #:use-module (gnu packages file-systems) - #:use-module (gnu packages linux) - #:use-module (gnu packages audio) - #:use-module (gnu packages pulseaudio) - #:use-module (gnu packages version-control) - #:use-module (gnu packages package-management)) - ; #:use-module (nongnu packages linux) - ; #:use-module (nongnu system linux-initrd)) - - (use-service-modules ssh) - (use-package-modules certs) - (use-service-modules desktop xorg) -#+end_src - -*Packages* - #+begin_src scheme :noweb-ref packages :noweb yes - - ;; Packages - (packages (append (list - git - exfat-utils - fuse-exfat - stow - vim - emacs - bluez - bluez-alsa - pulseaudio - tlp - ncurses - xf86-input-libinput - nss-certs) ;; For https connection - %base-packages)) - - #+end_src - - *Services* - #+begin_src scheme :noweb-ref services :noweb yes - - ;; Services - (services - (append - (list - - (service elogind-service-type) - (service openssh-service-type) - (service network-manager-service-type) - (service slim-service-type) - (service tlp-service-type - (tlp-configuration - (cpu-boost-on-ac? #t) - (wifi-pwr-on-bat? #t))) - (bluetooth-service #:auto-enable? #t) - (service docker-service-type) - (service wpa-supplicant-service-type)) - (service libvirt-service-type - (libvirt-configuration - (unix-sock-group "libvirt") - (tls-port "16555"))) - (set-xorg-configuration - (xorg-configuration - (keyboard-layout keyboard-layout))) - - %base-services)) - - #+end_src - - *Users Accounts* - #+begin_src scheme :noweb-ref users :noweb yes - - ;; Users - (users (cons (user-account - (name "jakub") - (comment "Jakub Dlugosz") - (group "users") - (home-directory "/home/jakub") - (supplementary-groups '( - "wheel" - "netdev" - "kvm" - "tty" - "input" - "docker" - "lp" - "audio" - "video"))) - %base-user-accounts)) - -#+end_src - -*Base operating system* -#+begin_src scheme :tangle .config/guix/systems/base-system.scm :noweb yes - - (define-public base-operating-system - (operating-system - (host-name "base") - (timezone "Europe/Warsaw") - (locale "en_US.utf8") - (keyboard-layout (keyboard-layout "pl")) - - ;; Use non-free Linux and firmware - ;; (kernel linux) - ;; (firmware (list linux-firmware)) - ;; (initrd microcode-initrd) - - (bootloader (bootloader-configuration - (bootloader grub-efi-bootloader) - (targets "/boot/efi"))) - ;; (keyboard-layout keyboard-layout))) - - ;; Guix doesn't like it when there isn't a file-systems - ;; entry, so add one that is meant to be overridden - (file-systems (cons* - (file-system - (mount-point "/tmp") - (device "none") - (type "tmpfs") - (check? #f)) - %base-file-systems)) - <> - <> - <> - ;; Allow resolution of '.local' host names with mDNS - (name-service-switch %mdns-host-lookup-nss))) - -#+end_src - -** Systems -*** Viking - -#+begin_src scheme :tangle .config/guix/systems/viking.scm - (define-module (viking) - #:use-module (base-system) - #:use-module (gnu)) - - (operating-system - (inherit base-operating-system) - (host-name "viking") - - (bootloader - (bootloader-configuration - (bootloader grub-bootloader) - (target "/dev/sda"))) - - (mapped-devices - (list (mapped-device - (source - (uuid "75a1ebd7-13c2-442f-80ff-1b5e59522e29")) - (target "cryptroot") - (type luks-device-mapping)))) - - (file-systems - (cons* (file-system - (mount-point "/") - (device "/dev/mapper/cryptroot") - (type "ext4") - (dependencies mapped-devices)) - %base-file-systems))) -#+end_src diff --git a/bin/activate-profiles b/bin/activate-profiles deleted file mode 100755 index a4373cf..0000000 --- a/bin/activate-profiles +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/sh -# Source: https://github.com/daviwil/dotfiles/blob/master/Systems.org#profile-management - -GREEN='\033[1;32m' -RED='\033[1;30m' -NC='\033[0m' -GUIX_EXTRA_PROFILES=$HOME/.guix-extra-profiles - -profiles=$* -if [[ $# -eq 0 ]]; then - profiles="$HOME/.config/guix/manifests/*.scm"; -fi - -for profile in $profiles; do - # Remove the path and file extension, if any - profileName=$(basename $profile) - profileName="${profileName%.*}" - profilePath="$GUIX_EXTRA_PROFILES/$profileName" - manifestPath=$HOME/.config/guix/manifests/$profileName.scm - - if [ -f $manifestPath ]; then - echo - echo -e "${GREEN}Activating profile:" $manifestPath "${NC}" - echo - - mkdir -p $profilePath - guix package --manifest=$manifestPath --profile="$profilePath/$profileName" - - # Source the new profile - GUIX_PROFILE="$profilePath/$profileName" - if [ -f $GUIX_PROFILE/etc/profile ]; then - . "$GUIX_PROFILE"/etc/profile - else - echo -e "${RED}Couldn't find profile:" $GUIX_PROFILE/etc/profile "${NC}" - fi - else - echo "No profile found at path" $profilePath - fi -done diff --git a/bin/update-profiles b/bin/update-profiles deleted file mode 100755 index 81129ec..0000000 --- a/bin/update-profiles +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/sh -# Source: https://github.com/daviwil/dotfiles/blob/master/Systems.org#profile-management - -GREEN='\033[1;32m' -NC='\033[0m' -GUIX_EXTRA_PROFILES=$HOME/.guix-extra-profiles - -profiles=$* -if [[ $# -eq 0 ]]; then - profiles="$GUIX_EXTRA_PROFILES/*"; -fi - -for profile in $profiles; do - profileName=$(basename $profile) - profilePath=$GUIX_EXTRA_PROFILES/$profileName - - echo - echo -e "${GREEN}Updating profile:" $profilePath "${NC}" - echo - - guix package --profile="$profilePath/$profileName" --manifest="$HOME/.config/guix/manifests/$profileName.scm" -done -- cgit v1.2.3