diff options
Diffstat (limited to '.emacs.d/modules/thanos-vm.el')
-rw-r--r-- | .emacs.d/modules/thanos-vm.el | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/.emacs.d/modules/thanos-vm.el b/.emacs.d/modules/thanos-vm.el deleted file mode 100644 index c6d2559..0000000 --- a/.emacs.d/modules/thanos-vm.el +++ /dev/null @@ -1,54 +0,0 @@ -;;; thanos-vm.el --- Manage your virtual machines with emacs -*- lexical-binding: t; -*- - -;; Copyright (C) 2023 Thanos Apollo - -;; Author: Thanos Apollo <[email protected]> -;; Keywords: - -;; This program is free software; you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation, either version 3 of the License, or -;; (at your option) any later version. - -;; This program 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 General Public License for more details. - -;; You should have received a copy of the GNU General Public License -;; along with this program. If not, see <https://www.gnu.org/licenses/>. - -;;; Commentary: - -;; - -;;; Code: - -(defvar vm-directory "~/virtual-machines/") - -(defun vm-create-image () - "Create qcow2 image." - (interactive) - (let ((name (format "%s%s.qcow2" vm-directory (read-string "Name: "))) - (size (format "%s" (read-string "Size(G): ")))) - (shell-command - (format "qemu-img create -f qcow2 %s %sG" name size)))) - - -(defun vm-run () - "Spawn Virtual Machine." - (interactive) - (let ((memory (format "%sG" (read-string "Memory(G): "))) - (cores (read-string "Cores: ")) - (image (read-file-name "Image: " vm-directory)) - (iso (if (y-or-n-p "Load iso?? ") - (read-file-name "ISO: ") - nil))) - (start-process-shell-command - "virtual-machine" nil - (format "qemu-system-x86_64 -enable-kvm -m %s -smp %s -hda %s -vga qxl -device virtio-serial-pci -spice port=5784,disable-ticketing -display spice-app %s " - memory cores image (when iso (concat "-cdrom " iso)))))) - - -(provide 'thanos-vm) -;;; thanos-vm.el ends here |