Files
linuxplus/40-package-management-lesson.el
2026-06-16 10:40:35 -04:00

56 lines
1.9 KiB
EmacsLisp

;;; 40-package-management-lesson.el --- package-management-lesson
(defun package-management-lesson ()
"Linux+ lesson for apt vs dnf package management."
(interactive)
(delete-other-windows)
(let ((buf (get-buffer-create "*Package Management Lesson*"))
(shell (or shell-file-name (getenv "SHELL") "/bin/sh")))
(switch-to-buffer buf)
(read-only-mode -1)
(erase-buffer)
(insert
"Linux+ Lesson: Package Management (Debian vs Red Hat)\n"
"=====================================================\n\n"
"You MUST know both ecosystems.\n\n"
"Debian-based systems (Debian, Ubuntu):\n"
" apt update → refresh package list\n"
" apt upgrade → upgrade installed packages\n"
" apt install pkg → install package\n"
" apt remove pkg → remove package\n\n"
"Red Hat-based systems (RHEL, Rocky, Alma):\n"
" dnf check-update → check for updates\n"
" dnf upgrade → upgrade system\n"
" dnf install pkg → install package\n"
" dnf remove pkg → remove package\n\n"
"Hands-on tasks:\n\n"
"DEBIAN VM:\n"
" sudo apt update\n"
" sudo apt install tree\n"
" tree\n"
" sudo apt remove tree\n\n"
"ROCKY VM:\n"
" sudo dnf check-update\n"
" sudo dnf install tree\n"
" tree\n"
" sudo dnf remove tree\n\n"
"What to notice:\n"
"- Command differences (apt vs dnf)\n"
"- Same concepts, different syntax\n\n"
"Linux+ exam traps:\n"
"- apt is NOT used on Red Hat\n"
"- dnf/yum are NOT used on Debian\n\n"
"When finished, run:\n"
" M-x package-management-quiz\n")
(goto-char (point-min))
(view-mode 1)
(split-window-below)
(other-window 1)
(let ((term (get-buffer "*term*")))
(if (buffer-live-p term)
(switch-to-buffer term)
(ansi-term shell "term")))
(other-window -1)))
;;; 40-package-management-lesson.el ends here