Hardware Scripting and Device Drivers - sgml/signature GitHub Wiki
Lifecycle
-- Canonical Lifecycle States
CREATE TABLE lifecycle_state (
state_code TEXT PRIMARY KEY, -- e.g., 'active', 'qualified', 'retired'
description TEXT NOT NULL, -- Human-readable explanation
is_terminal BOOLEAN DEFAULT 0 -- Marks if this is a terminal state
);
-- Software Artifact Registry
CREATE TABLE software_artifact (
artifact_id TEXT PRIMARY KEY, -- Unique identifier (e.g., hash, UUID)
name TEXT NOT NULL, -- Human-readable name
version TEXT NOT NULL, -- Semantic version or release tag
current_state TEXT NOT NULL, -- FK to lifecycle_state.state_code
last_updated INTEGER DEFAULT (strftime('%s','now')), -- Unix epoch timestamp
FOREIGN KEY (current_state) REFERENCES lifecycle_state(state_code)
);
-- Hardware Compatibility Mapping
CREATE TABLE hardware_binding (
artifact_id TEXT NOT NULL, -- FK to software_artifact
hardware_model TEXT NOT NULL, -- e.g., 'RouterModelX', 'AvionicsUnitY'
compatibility_notes TEXT, -- Optional constraints or caveats
PRIMARY KEY (artifact_id, hardware_model),
FOREIGN KEY (artifact_id) REFERENCES software_artifact(artifact_id)
);
-- State Transition Ledger
CREATE TABLE lifecycle_transition (
transition_time INTEGER PRIMARY KEY, -- Unix epoch timestamp
artifact_id TEXT NOT NULL, -- FK to software_artifact
from_state TEXT, -- Nullable for initial state
to_state TEXT NOT NULL, -- Must exist in lifecycle_state
actor TEXT, -- Who/what initiated the transition
FOREIGN KEY (to_state) REFERENCES lifecycle_state(state_code)
);
References
- https://learn.microsoft.com/en-us/windows-hardware/drivers/
- https://www.smarthomebeginner.com/pi-hole-setup-guide/
- https://madole.xyz/building-a-raspberrypi-internet-speed-checker-with-nodejs-and-googledocs/
- https://rosettacode.org/wiki/Conway%27s_Game_of_Life#XSLT
- http://gameprogrammingpatterns.com/double-buffer.html
- https://www.jamieweb.net/blog/booting-a-physical-windows-10-disk-using-virtualbox-on-linux/
- https://conferences.oreilly.com/oscon/oscon2014/public/schedule/detail/35038
- https://www.youtube.com/watch?v=BiBvOGP-GNg
- https://reactjsexample.com/game-of-life-in-react-and-redux/
- https://www.gamasutra.com/view/feature/134736/an_intro_to_cellular_automation.php
- https://wayneoutthere.com/brother-printer-scanner-ubuntu-how-to/
- https://liballeg.org/
- https://softwareengineering.stackexchange.com/questions/179501/which-are-the-fundamental-stack-manipulation-operations
- http://www.eurogamer.net/articles/digitalfoundry-2017-soul-reaver-legacy-of-kain-the-genesis-of-todays-open-world-epics
- https://en.wikipedia.org/wiki/Stack_machine
- https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-823-computer-system-architecture-fall-2005/lecture-notes/l03_sixties.pdf
- https://nervous.io/clojure/crypto/2017/09/12/clojure-evm/
- https://thorstenball.com/blog/2017/01/04/a-virtual-brainfuck-machine-in-go/
- https://esolangs.org/wiki/MSM
- https://esolangs.org/wiki/RegexPL
- https://llvm.org/pubs/2008-09-Lightspark.pdf
- https://yosefk.com/blog/my-history-with-forth-stack-machines.html
- https://www.sqlite.org/opcode.html
- https://www.quora.com/What-is-the-difference-between-CPU-and-a-GPU-for-parallel-computing
- http://www.sco.com/developers/java/unix_javaxcomm/javax.comm-ReleaseNotes.html
- http://www.agaveblue.org/howtos/Comm_How-To.shtml
- https://www.oreilly.com/library/view/java-io/1565924851/apas09.html
- https://www.javaworld.com/article/2076664/java-gets-serial-support-with-the-new-javax-comm-package.html
- http://www.java2s.com/Code/Java/Development-Class/OpenaserialportusingJavaCommunications.htm
- https://en.wikibooks.org/wiki/Serial_Programming/Serial_Java
Telephony
- https://www.apnsettingss.com/metropcs-apn-settings/amp/
- https://bestmvno.com/apn-settings/metropcs-apn-settings/
- https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/voice/fax/configuration/15-mt/vf-15-mt-book/Fax_and_Modem_Services_over_IP_Overview.html
- https://gekk.info/articles/ata-dialup.html
MVNO
- https://www.t-mobile.com/support/devices/not-sold-by-t-mobile/byod-t-mobile-data-and-apn-settings
- https://www.4gapn.com/us/en/t-mobile
- https://tamingthedroid.com/mobile-virtual-network-operator-type
EMM386
- https://www.cubic.org/docs/configuring.htm
- https://www.computerhope.com/emm386hl.htm
- https://github.com/search?q=org%3AMicrosoftDocs+regedit+hklm&type=Code
- https://techcommunity.microsoft.com/t5/ask-the-performance-team/useful-wmic-queries/ba-p/375023
- https://blog.emsisoft.com/en/28620/antimalware-service-executable/
- https://www.tenforums.com/microsoft-office-365/14300-how-permanently-disable-cortana.html
- https://wiki.janforman.com/windows
- http://metadataconsulting.blogspot.com/2016/07/windows-10-registry-size-number-of-keys-number-of-key-value-pairs.html
- https://www.pcgamingwiki.com/wiki/Microsoft_Windows
- https://answers.microsoft.com/en-us/windows/forum/all/disable-windows-10-upgrade-remove-software-related/d6c3ae6d-d8a7-4322-bc54-ed007c3f16a3
- https://microsoft.fandom.com/wiki/Windows_Registry
- https://www.tenforums.com/tutorials/109799-turn-off-clipboard-history-windows-10-a.html
- https://support.microsoft.com/en-us/help/310516/how-to-add-modify-or-delete-registry-subkeys-and-values-by-using-a-reg
- https://www.thewindowsclub.com/what-is-yourphone-exe-process-in-windows-10-do-i-remove-it/
Debian
Browsers
- https://howtouselinux.net/linux-security-tools/
- http://dquinton.github.io/debian-install/netinstall/step4.html
- https://github.com/brave/browser-laptop/blob/master/docs/linuxInstall.md
- https://linuxg.net/how-to-install-srware-iron-browser-35-on-ubuntu-debian-fedora-centos-opensuse-mageia-openmandriva-and-derivative-systems/
X11
- https://seanthegeek.net/234/graphical-linux-applications-bash-ubuntu-windows/
- https://www.businessnewsdaily.com/11035-how-to-use-x11-forwarding.html
- https://stackoverflow.com/questions/39182483/how-to-use-x-windows-with-emacs-on-windows-10-bash
Desktops
(replace-cinnamon
(step-1-install-new-desktop
(lxde
(description "Ultra Lightweight")
(commands
"sudo apt update"
"sudo apt install lxde"))
(lxqt
(description "Modern & Light")
(commands
"sudo apt update"
"sudo apt install lxqt"))
(xfce
(description "Polished Yet Lightweight")
(commands
"sudo apt update"
"sudo apt install xfce4 xfce4-goodies")))
(step-2-switch-desktop
(instructions
"Log out of current session"
"At login screen, select session (gear icon)"
"Choose installed desktop environment"
"Log back in"))
(step-3-remove-cinnamon
(uninstall
(commands
"sudo apt remove cinnamon-desktop-environment"
"sudo apt autoremove --purge"))
(remove-ppa
(condition "If Cinnamon was installed via Linux Mint PPA")
(command "sudo add-apt-repository --remove ppa:linuxmint-daily-build-team/daily-builds")))
(optional-cleanup
(restore-ubuntu-desktop
(command "sudo apt install ubuntu-desktop"))
(remove-session-entries
(command "sudo rm /usr/share/xsessions/cinnamon*.desktop"))
(fix-lock-screen-conflicts
(command "gsettings set org.gnome.desktop.screensaver lock-enabled false")))
(optional-benchmark-ram
(tools ps_mem htop free-h)
(note "Can assist with scripting session-based RAM audit")))