console-only-computing.html 6.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <!DOCTYPE html><head><meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" /><meta name="keywords" content="GNU, Emacs, Libre Software, Hurd, Guile, Guix" /><meta name="description" content="GNUcode.me is a website focusing on libre software projects, especially the GNU project." /><link type="application/atom+xml" rel="alternate" title="GNUcode.me -- Feed" href="/feed.xml" /><a rel="me" href="https://fosstodon.org/@thegnuguy"></a><link type="text/css" href="css/footer.min.css" rel="stylesheet"></link><link type="text/css" href="css/header.min.css" rel="stylesheet"></link><link type="text/css" href="css/main.min.css" rel="stylesheet"></link><title>Console only computing — GNUcode.me</title></head><body><header><nav><ul><li><a href="index.html">GNUcode.me</a></li><li><a href="services.html">Services</a></li><li><a href="about.html">About</a></li><li><a href="business-ideas.html">Business-ideas</a></li></ul></nav></header><h1>Console only computing</h1><main><section class="basic-section-padding"><article><h3>by Joshua Branson — February 12, 2022</h3><div><p>For about two weeks now, I have been using Guix System in console mode only.
  2. That means that my laptop currently <em>cannot</em> display images or video. It also
  3. means that I do not have much use for a mouse. It has been an interesting
  4. experience.</p><p>Of course, the average reader of this blog must be asking, “Why?”. Well you are
  5. familiar with dumb and smart phones, yes? Have you ever heard of a <strong>life
  6. computer</strong>? A life computer, is a computer that is so useless, that you want to
  7. stop using it and live your life instead. I personally have been using my laptop
  8. to consume tons of entertainment tv shows, movies, etc. I am starting to feel
  9. like that this is just wasting my life. Some of my good friends do not have time
  10. for useless entertainment-seeking. Since I want to emulate the best of my
  11. friends, I would like to make it nearly impossible for me to consume mindless
  12. entertainment.</p><p>Emacs has been an absolute Godsend for this little experiment. Since, I am
  13. somewhat familiar with Emacs, I am still able to check email (though I still
  14. struggle with reading email with Emacs), write these blog posts, use dired, etc.
  15. I am not certain that I could live in a console only operating system without
  16. Emacs. Also Emacs’s org-mode is wonderful!</p><p>I also found out that <code>Alt-&lt;left arrow key&gt;</code> and <code>Alt-&lt;right arrow key&gt;</code> is a
  17. quick way to cycle through virtual consoles. I am having some issues with being
  18. unable to use numerous websites. This is pretty obvious, because most console
  19. web browsers have little to no support for javascript.</p><p>I am currently wanting to listen to some <a href="https://librevox.org">librevox</a> recordings, but I am not
  20. certain how to navigate the website in console mode. Lynx spits out some errors
  21. that the HTML is badly formatted or something. For now, I am just using the work
  22. computers to download said files. I wonder if there is some sort of free
  23. software tool that will let you search and download audio files from the command
  24. line…I am sure it exists somewhere. <code>youtube-dl</code> would probably be it, but I
  25. feel awkward downloading files from youtube, because I am not certain which
  26. videos are legal for me to download.</p><p>I am planning on continuing to run a console only OS for the forseeable future.
  27. Since I do not feel like I have the power to NOT use my computer to watch lots
  28. of tv shows/movies, I gave my friend the root password to my computer, and I
  29. removed my user ’joshua’ from the <code>wheel</code> group:</p><pre><code>(users (cons* (user-account
  30. (name &quot;joshua&quot;)
  31. (comment &quot;Joshua Branson&quot;)
  32. (group &quot;users&quot;)
  33. (home-directory &quot;/home/joshua&quot;)
  34. (supplementary-groups
  35. '(&quot;audio&quot; &quot;kvm&quot; &quot;netdev&quot;
  36. )))
  37. %base-user-accounts))</code></pre><p>I also set up my computer to use a modified <code>bare-bones.scm</code>, which means that I am
  38. using ’%base-services’ instead of ’%desktop-services’. I kind of wonder how
  39. lean I could make a custom Linux kernel since I am restricting myself to console
  40. computing only.</p><p>I am finding that I would prefer to run some commands as root, like halt,
  41. reboot, and adding in a new wifi network connection. It has actually been a
  42. pleasure to read through <code>man 5 sudoers</code>, which is the file on your computer
  43. that determines who can run which commands. I have not quite figured out how to
  44. set up my user <code>joshua</code> to be able do various tasks like halt, reboot, kill,
  45. etc., but I am looking forward to figuring it out. It will probably look like
  46. something below. Note that I have NOT tested this bit of code.</p><pre><code>;; I can read 'man 5 suoders' for tips about the syntax of suoders file.
  47. ;; the very end of the file has some examples.
  48. (sudoers-file
  49. (plain-file &quot;sudoers&quot;
  50. (string-append (plain-file-content %sudoers-specification)
  51. &quot;CMD_Alias KILL = /run/current-system/profile/bin/kill
  52. CMD_Alias SHUTDOWN = /run/current-system/profile/bin/shutdown
  53. CMD_Alias HALT = /run/current-system/profile/bin/halt
  54. CMD_Alias REBOOT = /run/current-system/profile/bin/reboot
  55. CMD_Alias HERD = /run/current-system/profile/bin/HERD
  56. CMD_Alias NMCLI = /run/current-system/profile/bin/nmcli
  57. joshua ALL = KILL, SHUTDOWN, HALT, REBOOT, HERD, NMCLI, \
  58. sudoedit /etc/somefile, /etc/another-file&quot;
  59. )))</code></pre><p>That’s all that I have for today. See you next time.</p></div></article></section></main><footer><p>© 2020 Joshua Branson. The text on this site is free culture under the Creative Commons Attribution Share-Alike 4.0 International license.</p><p>This website is build with Haunt, a static site generator written in Guile Scheme. Source code is <a href="https://notabug.org/jbranso/gnucode.me">available.</a></p><p>The color theme of this website is based off of the famous <a href="#3f3f3f" target="_blank">zenburn</a> theme.</p></footer></body>