;;; ycp-system.el -- My config for things working with the underlying system -*- lexical-binding: t -*- ;; Copyright (C) 2023 Free Software Foundation. ;; Author: Yuchen Pei ;; Package-Requires: ((emacs "28.2")) ;; This file is part of dotfiles. ;; dotfiles is free software: you can redistribute it and/or modify it under ;; the terms of the GNU Affero General Public License as published by ;; the Free Software Foundation, either version 3 of the License, or ;; (at your option) any later version. ;; dotfiles is distributed in the hope that it will be useful, but WITHOUT ;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY ;; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General ;; Public License for more details. ;; You should have received a copy of the GNU Affero General Public ;; License along with dotfiles. If not, see . ;;; Commentary: ;; My config for things working with the underlying system that do not ;; seem to be clients to system utilities. Covers process monitor, ;; tramp etc. ;;; Code: ;;; `proced' (process monitor, similar to `top') (my-package proced (:delay 30) (setq proced-auto-update-flag t) (setq proced-auto-update-interval 5) (setq proced-descend t) (setq proced-filter 'user)) ;;; `tramp' (my-package tramp (:delay 15) (setq tramp-default-method "ssh") (setq explicit-shell-file-name "/bin/bash") (add-to-list 'tramp-remote-path 'tramp-own-remote-path) ;; keep backup files locally rather than remote (setq tramp-backup-directory-alist backup-directory-alist) (with-eval-after-load 'tramp-cache (setq tramp-persistency-file-name (locate-user-emacs-file "tramp"))) ;; Use discovered value for ssh options (setq tramp-ssh-controlmaster-options "") (connection-local-set-profile-variables 'termux-bash '((explicit-shell-file-name . "/data/data/com.termux/files/usr/bin/bash") (shell-file-name . "/data/data/com.termux/files/usr/bin/bash") (tramp-remote-path . ("/data/data/com.termux/files/usr/bin")))) (connection-local-set-profiles `(:application tramp :protocol "ssh" :machine ,(my-get-from-local my-tramp-termux-machine)) 'termux-bash) (connection-local-set-profile-variables 'ghcup-bash '((tramp-remote-path . ("~/.ghcup/bin" "~/.local/bin" tramp-default-remote-path)))) (connection-local-set-profiles `(:application tramp :protocol "ssh" :machine ,(my-get-from-local my-tramp-ghcup-machine)) 'ghcup-bash) (connection-local-set-profile-variables 'guix-bash '((explicit-shell-file-name . "/run/current-system/profile/bin/sh") (shell-file-name . "/run/current-system/profile/bin/sh") (tramp-remote-path . ("/run/current-system/profile/bin" "/run/current-system/profile/sbin")))) (connection-local-set-profiles `(:application tramp :protocol "ssh" :machine ,(my-get-from-local my-tramp-guix-machine)) 'guix-bash) (connection-local-set-profile-variables 'adb-shell '((explicit-shell-file-name . "/system/bin/sh"))) (connection-local-set-profiles '(:application tramp :protocol "adb") 'adb-shell) ) (provide 'ycp-system) ;;; ycp-system.el ends here