summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorP. J. McDermott <pjm@nac.net>2011-11-04 14:20:32 (EDT)
committer P. J. McDermott <pjm@nac.net>2011-11-04 14:20:32 (EDT)
commit45c8f12b620eea28b818d9f23447328aeb1e9d8f (patch)
tree3e1cf8389e6f8402a8719fff41ffdafad2586dfe
downloadsig-gnu-linux-notes-45c8f12b620eea28b818d9f23447328aeb1e9d8f.zip
sig-gnu-linux-notes-45c8f12b620eea28b818d9f23447328aeb1e9d8f.tar.gz
sig-gnu-linux-notes-45c8f12b620eea28b818d9f23447328aeb1e9d8f.tar.bz2
Initial commit.
-rw-r--r--activities-ideas.txt24
-rw-r--r--bradley-kuhn-talk.txt37
-rw-r--r--gnu-linux-fundraiser.txt72
-rw-r--r--topics/boot.txt63
-rw-r--r--topics/shell-tut.txt126
-rw-r--r--topics/shell.txt131
-rw-r--r--topics/topics.txt12
7 files changed, 465 insertions, 0 deletions
diff --git a/activities-ideas.txt b/activities-ideas.txt
new file mode 100644
index 0000000..918dd1f
--- /dev/null
+++ b/activities-ideas.txt
@@ -0,0 +1,24 @@
+events with NULL
+ contact kashifuddin qazi <kmq2@njit.edu> about that if he's still in NJIT
+an install fest or two to get people started
+ show people GNU/Linux on hardware or in a VM
+ show them multiboot with GNU GRUB
+ show them the selection and features of DEs
+some tutorials
+ software packaging
+ modifying packaged software (excercising freedom 1)
+ Linux LVM2
+ possibly building a custom Linux-based OS
+ as suggested by Grant
+ BusyBox/Linux or GNU/Linux (LFS-style)
+ introduction to the Unix shell
+ overview of GNU Screen
+go to a Debian-NYC Novice Night?
+ if they still run
+guest speaker?
+ look into inviting a GNU speaker to talk about GNU/Linux & software freedom
+ probably need to find funds for travel expenses
+ do a survey to see how many people would show up
+set up a (franken)server in the ACM office
+fund raising idea: sell copies of GNU/Linux on CDs and DVDs
+ Selling on Campus Policy: http://www.njit.edu/doss/policies/selling.php
diff --git a/bradley-kuhn-talk.txt b/bradley-kuhn-talk.txt
new file mode 100644
index 0000000..2fe6d5e
--- /dev/null
+++ b/bradley-kuhn-talk.txt
@@ -0,0 +1,37 @@
+Bradley Kuhn
+ holds BS and MS in CS
+ former Exec Dir of FSF for 3 years
+ former political analyst and technology director of SFLC for over 5 years
+ now Exec Dir of Conservancy and board member of FSF
+date
+ November
+ bkuhn asks for as late as possible, maybe week of 2011-11-14
+ weekday? weekend?
+funding
+ travel costs - train ticket(s) from NYC to Newark
+ "small honorarium" to Conservancy
+speech
+ "Software Freedom and the GNU Generation" is "a bit stale"
+ recent talks too detailed for students
+ working on a new talk "Making a Career out of Software Freedom"
+day of the talk
+ will need somewhere to speak, probably Ballroom in CC
+ can spend all day on campus
+ allocate a room in which students and faculty can talk with bkuhn about FS
+ ACM office?
+ a conference room?
+ CC 2nd floor?
+ some classroom somewhere?
+publicity
+ e-mail all of CCS through Sarah Vandermark
+ hand out flyers in classes maybe
+ post flyers around campus
+TODO
+ find funding - IN PROGRESS
+ reserve the Ballroom
+ find a room for meetings after the talk
+ organize a recording
+ figure out food (maybe he'll just go down to GDS)
+ figure out if he'll bring his laptop and if we can connect it to a projector
+ ???
+ profit?
diff --git a/gnu-linux-fundraiser.txt b/gnu-linux-fundraiser.txt
new file mode 100644
index 0000000..35a9822
--- /dev/null
+++ b/gnu-linux-fundraiser.txt
@@ -0,0 +1,72 @@
+four step process to raise funds for ACM & increase membership in SIG GNU/Linux:
+ 1. Sell copies of GNU/Linux
+ 2. Invite buyers to SIG meetings for help
+ 3. ???
+ 4. Profit
+
+possible distributions:
+ definitely:
+ Debian
+ versions: 6.0.3, testing by request
+ architectures: x86, x86-64, others by request
+ editions: CD set, DVD set, netinstall CD, sources (36 CDs or 6 DVDs)
+ live DVDs? other DEs?
+ total items: 9
+ x86 CDs (all DEs), x86-64 CDs (all DEs),
+ x86 DVDs (all DEs), x86-64 DVDs (all DEs),
+ x86 netinstall CD, x86-64 netinstall CD,
+ sources CDs, sources DVDs,
+ live CDs and DVDs
+ Trisquel
+ versions: 5.0, 4.5.1
+ architectures: x86, x86-64
+ editions: default CD, i18n DVD, mini CD, netinstall CD, sources DVD
+ total items: 9
+ probably:
+ gNewSense
+ versions: 2.3
+ architectures: x86
+ editions: default, sources (1.8 GiB tar archive)
+ total items: 2
+ BLAG
+ OH NOES, NO SOURCE IMAGES, LEGAL BAD STUFF
+ Dragora
+ versions: 2.1
+ architectures: x86, x86-64
+ editions: default, sources DVD
+ total items: 3
+ Ubuntu (will need a warning label about recommendations of non-free sw)
+ versions: 10.10, 11.04, 11.10
+ architectures: x86, x86-64
+ editions: installable live CD, sources CDs
+ total items: 3
+ Fedora (may need a warning label)
+ versions: 15
+ architectures: x86, x86-64
+ editions: installable live CD, ???
+ source DVD (find sources for live images)
+ total items: 3+
+ maybe not:
+ Dyne:bolic
+ OH NOES, NO SOURCE IMAGES, LEGAL BAD STUFF
+ Parabola
+ OH NOES, NO SOURCE IMAGES, LEGAL BAD STUFF
+
+display:
+ descriptions, screenshots, information about editions
+ provide live images for people to try if they bring laptops
+ otherwise refer people to h-node for information on drivers
+
+time:
+ probably after guest speech
+ so people know what's so magical and moral about this software
+
+kiosk:
+ maybe some kind of Debian testing/unstable system showing DEs:
+ GNOME 3
+ GNOME 3 in fallback mode
+ KDE SC 4.6
+ Xfce
+ LXDE
+ LightDM and different users to show different DEs
+ or some kind of mix of Vs running different OSes
diff --git a/topics/boot.txt b/topics/boot.txt
new file mode 100644
index 0000000..3d03935
--- /dev/null
+++ b/topics/boot.txt
@@ -0,0 +1,63 @@
+BIOS
+ firmware image on ROM chip
+ ROM is either a dual in-line package or plastic leaded chip carrier
+ POST
+ initializes HW, e.g. memory, video card, keyboard, USB hosts
+ finds a bootable device (HDD, ODD, USB flash drive, etc.)
+ reads MBR and executes stage 1 boot loader
+boot loader, e.g. GNU GRUB
+ may offer user OS list and/or some other interactive IX (e.g. CLI)
+ will load a kernel, e.g. Linux, into memory and begin its execution
+Linux
+ initializes memory, interrupts, etc.
+ may mount initial ramdisk
+ loads and schedules init and kernel threads
+initial ramdisk
+ finds root filesystem
+ loads required drivers and runs required utilities to mount root fs
+ e.g. for RAID, LVM2, ext4
+ checks for a suspend-to-disk virtual memory image and resumes if found
+ look at initrd on Debian:
+ $ gunzip -c /boot/initrd.img-`uname -r` | cpio --extract
+ warning: will extract to current working directory
+init
+ multiple implementations
+ GNU/Linux:
+ System V-style init
+ systemd
+ Upstart
+ runit
+ OpenRC
+ Initng
+ BSDs:
+ own lightweight and modular daemon
+ BusyBox/Linux:
+ own lightweight daemon
+ SysV-style:
+ runlevels
+ 0 - halt
+ 1 - single-user mode
+ 2-5 - multi-user mode
+ 6 reboot
+ reads /etc/inittab
+ default runlevel
+ actions of runlevels
+ Ctrl+Alt+Del behavior
+ programs to control TTYs (e.g. /sbin/getty)
+ etc.
+ runs initialization scripts
+ `/etc/rcN.d/* start`, where N = runlevel
+ links to /etc/init.d/*
+ cron, servers, ACPI daemon, Network Manager, DMs, etc.
+getty
+ prints /etc/issue, unless disabled
+ prompts for username
+ calls /bin/login
+login
+ prompts for password
+ loads user environment
+ starts user's default shell (e.g. /bin/bash)
+display manager
+ starts X.org server
+ prompts for user name and password
+ starts window manager and desktop shell
diff --git a/topics/shell-tut.txt b/topics/shell-tut.txt
new file mode 100644
index 0000000..0a73cb0
--- /dev/null
+++ b/topics/shell-tut.txt
@@ -0,0 +1,126 @@
+first steps and basic output
+ how shell reads input - three methods
+ use of "echo" built-in utility
+ ex: hello world
+simple commands, field splitting, and quoting
+ ex: maybe cd, mkdir/touch, etc.
+tilde and pathname expansion
+ ex: cd with tildes
+ ex: cd/mkdir/touch with pathname expansions
+parameters
+ defining variables and expanding their values
+ positional parameters, special parameters, and shell variables
+ ex: assign variables
+ ex: expand and print variables and positional parameters
+command substitution
+ ex: commands in subshells, output assigned to variables
+arithmetic expansion
+ ex: some expressions, assignments, etc.
+shell commands
+ revisit simple commands
+ command search and execution
+ pipelines
+ lists
+ sequential
+ asynchronous
+ AND
+ OR
+ compound commands
+ grouping
+ subshell vs current shell, shell execution environment:
+ open files
+ working directory
+ shell parameters
+ shell functions
+ shell options
+ shell aliases
+ if
+ show "test"/"[" command
+ while
+ ex: loop over positional parameters
+ #! /bin/sh
+ while [ $# -gt 0 ]; do
+ printf '%s\n' "$1"
+ shift
+ done
+ ex: read from input
+ until
+ for
+ case
+ functions
+exit status
+I/O redirection
+built-in utilities
+ colon
+ export
+ break [n]
+ continue [n]
+ dot
+ eval
+ exec
+ exit
+ export
+ return
+ set
+ shift
+ unset
+utilities
+ cat
+ cd
+ chgrp
+ chmod
+ chown
+ cp
+ date
+ dd
+ df
+ diff
+ dirname
+ du
+ echo
+ expr
+ false
+ file
+ fold
+ getopts
+ grep
+ head
+ id
+ kill
+ ln
+ lp
+ ls
+ mailx
+ mesg
+ mkdir
+ mkfifo
+ more
+ mv
+ nice
+ pr
+ printf
+ ps
+ pwd
+ read
+ rm
+ rmdir
+ sed
+ sh
+ sleep
+ sort
+ stty
+ tail
+ test
+ time
+ touch
+ tr
+ true
+ uniq
+ wc
+ who
+
+example scripts:
+ screen-batt
+ /usr/local/lib/pjrand.sh and /usr/local/bin/screensaver
+ /bin/which of Debian (ex. of IFS)
+ changelog-gen
diff --git a/topics/shell.txt b/topics/shell.txt
new file mode 100644
index 0000000..d98d249
--- /dev/null
+++ b/topics/shell.txt
@@ -0,0 +1,131 @@
+introduce the shell interpreter
+ POSIX.1-2008 XCU 2.1
+ shell reads input from:
+ a specified file,
+ '-c' option argument, or
+ stdin (interactive mode)
+ shell splits input lines into tokens and parses them
+ shell expands words
+ shell performs I/O redirection
+ shell executes functions, built-in commands, files, etc.
+parameters and variables
+ positional parameters
+ POSIX.1-2008 XCU 2.5.1
+ decimal numbers greater than 0, e.g. $1 and $2
+ multiple-digit numbers should be enclosed in braces
+ assigned with:
+ shell arguments when shell starts
+ function arguments when a function is called
+ can be reassigned using 'set' built-in command
+ special parameters
+ POSIX.1-2008 XCU 2.5.2
+ @
+ all positional parameters
+ *
+ all positional parameters
+ #
+ number of positional parameters
+ ?
+ exit status of most recent command pipeline
+ -
+ current option flags
+ $
+ process ID of shell
+ !
+ process ID of most recent background command
+ 0
+ name of shell or shell script
+ shell variables
+ POSIX.1-2008 XCU 2.5.3
+ HOME
+ pathname of user's home directory
+ IFS
+ delimiters for field splitting
+ default: <space> <tab> <newline>
+ LINENO
+ line number of current script, if any
+ PATH
+ list of paths which should be searched for commands
+ PS1
+ prompt value to be expanded and written to standard error
+ default value: "$ "
+ PWD
+ absolute pathname of the current working directory
+word expansions
+ tilde expansion
+ POSIX.1-2008 XCU 2.6.1
+ tilde-prefix: unquoted tilde at the beginning of a word
+ followed by all unquoted characters until first unquoted slash
+ login name is all characters in tilde-prefix following tilde
+ if login name is empty (tilde-prefix == "~")
+ expanded to value of HOME
+ else
+ expanded to home directory associated with login name
+ parameter expansion
+ POSIX.1-2008 XCU 2.6.2
+ ${expression} or $expression
+ expression:
+ parameter
+ parameter:-word
+ parameter:=word
+ parameter:?word or parameter:?
+ parameter:+word
+ #parameter
+ parameter%word
+ parameter%%word
+ parameter#word
+ parameter##word
+ command substitution
+ POSIX.1-2008 XCU 2.6.3
+ $(command)
+ or
+ `command`
+ expanding:
+ shell executes command in a subshell
+ shell replaces substitution with stdout of the command
+ newlines within command are allowed
+ nesting
+ `command1 \`command2 foo\` bar`
+ $(command1 $(command2 foo) bar)
+ arithmetic expansion
+ POSIX.1-2008 XCU 2.6.4
+ $((expression))
+ expanding:
+ shell processes expression
+ shell replaces substitution with value of the expression
+ arithmetic:
+ signed long integer precision
+ decimal, octal, and hexadecimal constants
+ e.g. 42, 052, 0x2A
+ operators:
+ ( ), unary +, unary -, +, -, *, /, %
+ ~, !, <<, >>, &, ^, |
+ <, <=, >, >= ==, !=, &&, ||, expr ? expr : expr
+ =, +=, -=, *=, /=, %=, <<=, >>=, &= ^=, |=
+ shell variables
+ if x has an integer value, then the following are equivalent:
+ $((x + 1)) $(($x + 1))
+ field splitting
+ POSIX.1-2008 XCU 2.6.5
+ IFS is a set of delimiters, at which unquoted fields are split
+ pathname expansion
+ POSIX.1-2008 XCU 2.6.6
+ POSIX.1-2008 XCU 2.13
+ performed unless 'set -f' was run
+ patterns
+ ? matches any single character
+ * matches multiple (0 or more) characters
+ [ opens RE bracket expansion
+ if pattern does not match any existing files
+ pattern string is left unchanged
+redirection
+ input redirection
+ [n]<word
+ n: optional file descriptor number (default: 0, stdin)
+ word: name of file
+ output redirection
+ [n]>word
+ [n]>|word
+ n default: 1, stdout
+ appending redirected output
+ [n]>>word
diff --git a/topics/topics.txt b/topics/topics.txt
new file mode 100644
index 0000000..31bd704
--- /dev/null
+++ b/topics/topics.txt
@@ -0,0 +1,12 @@
+mdadm RAID
+Linux LVM2
+signals and threads
+introduction to the UNIX shell
+usage of dd
+overview of GNU Screen
+set up a server
+ do stuff with it, I don't know
+
+projects?
+ GNU/Linux or BusyBox/Linux, LFS-style
+ server