19 final thoughts
play

19 Final thoughts CS 2043: Unix Tools and Scripting, Spring 2019 - PowerPoint PPT Presentation

19 Final thoughts CS 2043: Unix Tools and Scripting, Spring 2019 [1] Matthew Milano March 8, 2019 Cornell University 1 Table of Contents 1. Back to desktop environments 2. Linux everywhere 3. Linux everywhere 2 Back to desktop


  1. 19 – Final thoughts CS 2043: Unix Tools and Scripting, Spring 2019 [1] Matthew Milano March 8, 2019 Cornell University 1

  2. Table of Contents 1. Back to desktop environments 2. Linux everywhere 3. Linux everywhere 2

  3. Back to desktop environments

  4. Option 1: KDE Figure 1: KDE 3

  5. Option 2: GNOME Figure 2: GNOME 4

  6. Option 3: XFCE4 Figure 3: XFCE4 5

  7. Tiling window managers • Basic concept: windows don’t “float” or “resize”; they always take all available area • Can sub-divide screen into smaller regions (in half, in quarters, etc). • Applications automatically resize to snap to your new “grid” • don’t move things with the mouse; change “splits” your screen with keyboard shortcuts • some developers swear by these • basically unused outside of serious developer circles. 6

  8. XMonad Figure 4: xmonad 7

  9. Awesome Figure 5: Awesome 8

  10. Linux everywhere

  11. Linux on windows: the old • Git Bash uses MinGW / Cygwin • Demo (I’m supposed to go to the cygwin website, and the git bash installer, then install git bash) 9

  12. Linux on windows: the new • A brief aside: Windows kernel is a federation of components called a hybrid kernel • Windows’ normal runtime is win32, built atop a core kernel layer • We won’t really get into what that means • The Windows Subsystem for Linux is magic • new subsystem like win32 • provides commands/API calls/syscalls from the Linux Kernel • isn’t actually Linux , but is close enough for all your userspace programs to not know the difference • Demo: let’s look at WSL. • There are lots and lots of guides to install online; google it! 10 • You definitely want to install VcXsrv

  13. Package management on windows: what for? • You like automatic dependency management • You like unified “app store style” auto-updating apps • You want to install small, linux-like utilities or programs • Three programs for three roles • Libraries for C/C++/.NET software development: VCPkg or NuGet • Source-based package manager (from the folks at KDE): Craft • Rapidly evolving space: there might be alternatives • google ’em! • Demo time, I hope 11 • Normal applications: Chocolatey

  14. Linux everywhere

  15. What level of Linux do you want? • If you’re on ChomeOS, then you already have Linux! Good • VSCode demo on Windows. • Mostly automatic on Mac, but you have to want it. • Not automatic on Windows, but not hard to do for modern apps • Automatic on Linux — in fact hard to avoid • Integrating your “daily driver” OS with your shell is essential choice. • WSL on Windows / Terminal on Mac • A good alternative unless you’re doing really esoteric stuff easier • Using your OS’s built-in Linux/Unix/Posix functionality often • probably best not to do this in the middle of the semester first • simple things – like wifi, network, graphics – might not work at • but easiest way to get stuck 12 • Installing Linux on raw hardware best way to learn GNU/Linux

  16. References [1] Stephen McDowell, Bruno Abrahao, Hussam Abu-Libdeh, Nicolas Savva, David Slater, and others over the years. “Previous Cornell CS 2043 Course Slides”. 13

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend