aboutsummaryrefslogtreecommitdiff
path: root/emacs/.emacs.d/init/ycp-system.el
diff options
context:
space:
mode:
Diffstat (limited to 'emacs/.emacs.d/init/ycp-system.el')
-rw-r--r--emacs/.emacs.d/init/ycp-system.el85
1 files changed, 85 insertions, 0 deletions
diff --git a/emacs/.emacs.d/init/ycp-system.el b/emacs/.emacs.d/init/ycp-system.el
new file mode 100644
index 0000000..3d52d34
--- /dev/null
+++ b/emacs/.emacs.d/init/ycp-system.el
@@ -0,0 +1,85 @@
+;;; ycp-system.el -- My config for things working with the underlying system -*- lexical-binding: t -*-
+
+;; Copyright (C) 2023 Free Software Foundation.
+
+;; Author: Yuchen Pei <id@ypei.org>
+;; Protesilaos Stavrou <info@protesilaos.com>
+;; Maintainer: Yuchen Pei <id@ypei.org>
+;; 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 <https://www.gnu.org/licenses/>.
+
+;;; 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)
+
+ (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