summaryrefslogtreecommitdiff
path: root/md
diff options
context:
space:
mode:
Diffstat (limited to 'md')
-rw-r--r--md/notes/xos.md113
-rw-r--r--md/notes/xos/nmount.md4
2 files changed, 117 insertions, 0 deletions
diff --git a/md/notes/xos.md b/md/notes/xos.md
new file mode 100644
index 0000000..20ed149
--- /dev/null
+++ b/md/notes/xos.md
@@ -0,0 +1,113 @@
+title:XOS
+keywords:linux,qemu,raspi,linux,x201,x230,x260
+
+# XOS
+
+
+## Intro
+
+XOS is X-os like Mac-OS but X-os. Idea behind the name is that main hardware
+where its suppose to run is thinkpads X series. As I have few x201,x230 and
+next upgrade is for x260 then thats the hardware. And its just one-man army
+project then its enought. Also you can get x201 for sometime less then <100usd
+then its not some kind of elitist 1000usd lappy people or some diy soldering
+guru SoC project. So yes here is main thing anyone with some common lappy could
+run it especially from those countries whom western-politicians call by 3rd world
+countries. Yes 100USD is still big money for someone, but what could be cheaper
+and still be some sensible and good hw. There is enought of thinkpad X series
+fans soooo ... for sure there is alot of support and info around.
+
+## Mini projects
+
+| name | descr |
+| --- | --- |
+| [nmount](./xos/nmount.md) | mount alternative |
+
+## Philosophy
+
+Make it simple, make it portable, no dependencies, make it static.
+Simple its about simple to use rather then make its so technicaly hard to use
+that any alternative is better. Portable means works on any distro with compilcation
+or without recompilation, anu distro means any version distro. No specific
+version of distro should be supported, only thing is supported is kernel versions
+and kernel features, dont care about libc or anything standart.
+Static only static can combain all of that. MacOS and Windows have alot of programms
+that just installs and works without downloading dependencies. So idea is same,
+you download it and it works, no anything extra is needed. If you cant pack
+workable binary for everyone then its your issue not user issue.
+
+
+### Command line
+
+As usual core-utils and most of the tools lack of sensible options and some of
+the tasks are hard to do with core-utils then thats should be fixed. All commands
+should have good enought help, and help should be good enought that there is no
+need for man pages.
+
+All commands are configurable and match in functionality if they have GUI. And
+all commands are compatible with pipelining. There is few attempts from rust community
+to do something like this for few utils. But more is needed to change general
+expirience from using command line utils. One of the simplies example is ls.
+Why i can in windows sort by any field I whant? Why I can just list files in dir,
+I need to use "find ./". So there is alot of should change and be rethinked
+how command line should work. Functionality should be as good as GUI tools, all
+tools have common interfaces for piping without hacks, POSIX incompatability is the must now.
+
+### Manuals
+
+Man pages ... who reads them if there is better interface to search and view
+information like google that points to man7.org or to api providers or documentation
+of actual projects. Something like turbo pascal help would be nice to have,
+and something like MacOS where there is enought docs without connecting to
+internet. Internet is hostile place not all people have access to external
+resource because of cenzorship or poor internet connection.
+
+### Services
+
+Each service should just run without any config files, if its doesnt work as
+single binary it should be fixed. So when you start some http service it should
+work and reply that if there is no interface then announce error, and where interface
+appears then start working. Should be possible to run everything in any order,
+no any kind of dependenices even they seams logical, it should have recovery state
+and work.
+
+## Hardware
+
+All hardware from X series should work out of the box, there should be clear
+and single way how to run all capabilites of hardware, all should be usable.
+BT just works, cameras can play videos and all buttons on laptop are working.
+All HW have defined tested profiles so everything is tested to work.
+
+## Languages
+
+C,Ocaml,Go
+
+C - as its universal portable language, where you can write API once and
+reuse it from all other languages. All system interfaces should be written in it
+as it allows to expse them to all other languages.
+
+Ocaml - anything that needs parsing or complex problems to solve. Good feature
+is its compiles to static lib, all parsers and shells should be wriiten in it
+
+Go - standart library have everything that may be needed to communicate with
+internet so its good language for that.
+
+Its good enought combo of languages to address all fields system programming,
+parsing and internet technologies.
+
+
+## GUI
+
+Probably GUI is never be the case for it, too much work needs to make GUI work,
+one possible solutions is dwm style GUI or just qemu output display, or just remote
+browser desktop so no real GUI implementation needed. And its sounds more
+interesting and flexible to run.
+
+## Goals
+
+Get system booting, get ethernet working, get ip address and get irc client.
+Thats would be nice goal to archive. Plan maximum is to get
+some KVM load any distro and show virtual display, that will make possible distro
+to run and never update and never brake anything.
+
+And on journey to those goals produce ar much as possible notes.
diff --git a/md/notes/xos/nmount.md b/md/notes/xos/nmount.md
new file mode 100644
index 0000000..7c3ed8d
--- /dev/null
+++ b/md/notes/xos/nmount.md
@@ -0,0 +1,4 @@
+title:nmount - alternative mount
+keywords:linux,qemu,mount.linux,
+
+# nmount - alternative mount \ No newline at end of file