/tech/ - Technology

Technology & Computing


New Reply
Name
X
Sage
Subject
Message
Files Max 5 files32MB total
Password
[New Reply]


1592689471044.png (u)
[Hide] (100.4KB, 587x575)
Repost of the Julay /tech/ sticky with some minor edits: https://archive.vn/znAXT
Beginner Info
If you would like to try out GNU/Linux because of https://itvision.altervista.org/why-windows-10-sucks.html, you can do one of the following:
0) Install a GNU/Linux distribution of your choice in a Virtual Machine (preferably using KVM or Oracle VirtualBox for newfriends).
1) Use a live image and to boot directly into the GNU/Linux distribution without installing anything (keep in mind that the performance of live distros might be very different than from distro that was booted from your HDD, as most distros are loaded in RAM and don't include the proprietary drivers for NVIDIA GPUs or up-to-date Mesa libraries in their isos).
2) Dual boot the GNU/Linux distribution of your choice along with Windows (make sure to install Windows first, as it can "replace" GRUB or other UNIX bootloaders, and troubleshooting of Windows replacing your bootloader of choice might be painful for people that just started learning about the Linux kernel)
3) Go balls deep and replace everything with GNU/Linux (you really shouldn't do this, if you don't know what you're putting yourself into, see: https://itvision.altervista.org/why.linux.is.not.ready.for.the.desktop.current.html).

Resources:
Use your web browser and search engine of choice. Good comparison between them is hosted here:
https://digdeeper.neocities.org/ghost/browsers.html
https://digdeeper.neocities.org/ghost/search.html
If not sure which browser to choose, just use the Tor Browser Bundle:
https://www.torproject.org/
or paste these commands to your terminal emulator of choice (please make sure to first learn what they're exactly doing):
$ sudo apt install torbrowser-launcher (Debian, Ubuntu, Linux Mint or just simply apt-based distros)
$ sudo pacman -S base-devel git python && git clone https://aur.archlinux.org/pikaur.git && cd pikaur && makepkg -si
$ cd .. && rm -rf pikaur && pikaur -S tor-browser (pacman-based distros)
$ xbps-install -S torbrowser-launcher (Void Linux)
If you "bricked" yourself and can't launch Xorg/Wayland, then try installing an terminal-only browser like Lynx and using it troubleshoot your mistake.

Type these commands to your terminal emulator to learn more about various commands:
$ man command
$ info command
$ command -h/--help
$ help builtin/keyword

Don't know what to look for?
$ apropos something

Check the wikis (most troubleshoots work for all distros):
https://wiki.archlinux.org
https://wiki.gentoo.org
8chan /tech/'s wiki on GNU/Linux:
https://wiki.cloveros.ga/Main_Page
4chan /g/'s wiki on GNU/Linux:
https://wiki.installgentoo.com/index.php/Category:GNU/Linux

Watch videos on JewTube:
https://github.com/omarroth/invidious/wiki/Invidious-Instances (Invidious is unreliable now, keeping this link anyways)
https://yt-dl.org/ (Either install it from pip or the distro repos)

>What distro should I choose?
1. Ubuntu, or it's flavors like Xubuntu, Kubuntu or even forks like Linux Mint (only LTS or LMDE) and KDE Neon (only LTS)
- Groovy Gorilla 20.10 is the semi-rolling release of Ubuntu (still containing mostly stable and out-of-date packages)
- Focal Fossa 20.04 is the current LTS (long term support) release of Ubuntu and thus is the most supported by corporations like Canonical (corporation behind Ubuntu) and it's partners, Valve, GOG.com and hardware manufactures in general. It just works™
2. Debian GNU/Linux
- Stable (“buster”)
It's the stable/LTS and the "true" release of Debian. Contains a lot of outdated, but stable packages and is the easiest to install release of Debian.
- Testing (“bullseye”)
Is the testing release of Debian, which still contains a few outdated packages to be more stable. It's packages later go to the stable channel.
- Unstable (“sid”)
Is the rolling release of Debian and with the help of Debian Experimental, can be nearly as rolling as Arch or even Gentoo. It's packages after enough testing (usually a week) later go to the testing channel.
>How do I install Debian's experimental packages?
https://wiki.debian.org/DebianExperimental
If you want something that has insane support and one of the largest communities out there, or just simply something that gives users more choices than Ubuntu, then this is the distro for you.
3. Arch Linux
Is a rolling distro with a semi-minimalistic approach to GNU/Linux, meaning you install it only from the console itself with pre-compiled binary packages (packages that are ready to install). Can be easily broken, if the end-user doesn't know how to avoid troubleshooting it. It's primary audience are users that want bigger control of their system. and people who want to stay on the most-up-to-date versions of their favorite programs. Good for learning how GNU/Linux works.
4. Manjaro Linux/EndeavourOS
Are forks of Arch Linux with the Calameres installer. Manjaro has it's own repositories, with package release channel similar to Debian's, while EndeavourOS tries to stay as close to Arch as it is possible. Decent, if you're one of those people which never read manuals.
5. Gentoo GNU/Linux
Is a distro that is very similar to Arch, but is much more stable and up-to-date thanks to you getting in control of configuring and compiling everything from the source code. Is also much harder/longer to setup than Arch's installation process, but compiling everything from it's source can result in overall better performance of programs that you use daily. Nothing can beat it when it comes to avoiding systemd. Perfect for learning how your UNIX systems actually work.
6. Linux From Scratch (LFS), Guix or NixOS
if somehow Gentoo didn't made you comfy with it, then with these distros you possibly can't get comfier except if you make the switch to BSD-based systems.

Even more info here:
https://wiki.cloveros.ga/Babbies_first_Linux
https://distrowatch.com/
https://wiki.installgentoo.com/index.php/Babbies_First_Linux

If you don't care about having a modern desktop and want to avoid systemd, make sure to give the distros listed by this website a try:
https://nosystemd.org/

If you prefer 100% libre, free as in speech distros:
https://www.gnu.org/distros/free-distros.en.html

>What are some cool programs?
https://wiki.archlinux.org/index.php/list_of_applications
https://directory.fsf.org/wiki/Main_Page
https://suckless.org/rocks/
https://github.com/fossasia/mew
>What are some cool terminal commands?
https://www.commandlinefu.com/commands/browse (doesn't work without JavaScript enabled)
https://cheat.sh/
>Where can I learn the command line?
https://mywiki.wooledge.org/BashGuide
https://www.grymoire.com/Unix
https://overthewire.org/wargames/bandit
>Where can I learn more about Free Software?
https://www.gnu.org/philosophy/philosophy.html
>How can I run Windows software?
Install the drivers for your GPU:
https://github.com/lutris/lutris/wiki/Installing-drivers
Then install Wine (Wine Is Not an Emulator) and preferably the 'Staging' branch of it:
https://wiki.winehq.org/Download
Lastly read this:
https://www.winehq.org/documentation
Also, make sure to learn about winetricks, DXVK and Windows .dll files in general.
Aside from not being in line with the UNIX philosophy is Linux Mint unsubstantial as a starter OS?
Replies: >>555 >>561 >>623
>>552
Linux Mint is good because it's just Ubuntu with some of the cancer removed. And Ubuntu is good because there are a lot of retard proof guides on how to do things with it. Ubuntu is bad because it's stock repository is very lackluster.

In my experience MX Linux should be the recommended debian "beginner" distribution. It's repositories are a lot more robust and it comes with a good custom software suite. One of the biggest turn-offs for me when I first started using Linux was that the Ubuntu flavors and their software "stores" were some of the most clunky and slow software I've ever used in my entire life. MX Linux on the other hand comes with a very intuitive and fast package manager GUI, alongside having synaptic installed.

I've also never ran into a single machine that couldn't install it. Meanwhile shit like (((Manjaro))) is a coin toss as to whether it will even install.
Replies: >>570
I got a question for people who use the linux-libre kernel. Is installing hardware drivers that were removed complicated? Do you have to recompile the kernel for every new device?

>>552
I've installed it for many people as a replacement for W10 and haven't had any issues so far. Asides some boot problems thanks to UEFI but that could happen with any distro.
>>555
What about LMDE?
Replies: >>571
>>570
>LMDE
It's literally just a yet another Debian-based distro. The only difference between Ubuntu and Debian are different repositories. Ubuntu has either LTS, semi-"rolling" or unofficial PPA repos, while Debian has Stable, Testing and Unstable repositories.
>derp deeper
hmm seems like its a good thing i missed Julay
>>530 (OP) 
>https://itvision.altervista.org/why.linux.is.not.ready.for.the.desktop.current.html
>Anonymous comments are pre-moderated disabled. I'm tired of anonymous haters who have nothing to say. Besides, Disqus sports authentification via Google/Twitter/Facebook and if you don't have any of these accounts then I'm sorry for your seclusion. You might as well not exist at all.
>not having a Google/Twitter/Facebook account makes you pretty much a persona non grata on his eye
Holy shit what a fucking faggot, that really comes rich from somebody who is a FOSS developer, doesn't that faggot know that those 3 are the worst companies to exist when it comes to privacy and data protection?
Replies: >>591
>>587
FOSS is full of idiots that can't make money, what's your point?
Replies: >>593
>>591
Corporations are full of idiots that wageslaves for their (((bosses))), what's your point?
Replies: >>594
>>593
At least they are not all commie trannies like the Foss idiot pussies.
Replies: >>595 >>599
>>594
You're telling falsehoods, anon.
4bdc2073c94038decd98671b2fc860a58abf1daa5526bc11deccd737056bc0cd.jpg (u)
[Hide] (3MB, 4128x3096)
If anyone somehow missed this news:

The CentOS Project Just Committed Suicide
>In shocking news the CentOS project announced today that are shifting their Linux distribution to be based on the beta (non-stable) branch of Red Hat Enterprise Linux, rather than the stable branch. And that they are terminating CentOS 8 updates at the 31st of December, 2021.
https://fosspost.org/centos-project-suicide/
https://archive.fo/2IRSU
Replies: >>600
dean.png (u)
[Hide] (235KB, 200x261)
>>594
CoCfaggotry and commie trannies came from corporate HRfaggotry. The cancer killing free software has already chewed its way through the business world and parasitised a good chunk of it, and now it's here for us.
The good news is that they don't have the same legal options for fucking over wrongthinkers as they do in a regular business, mostly just social pressure. The bad news is that most programemrs are autistic fucks who don't handle that well, letting the more social shitters run circles around them. There is still hope, however: if a single noteworthy dev puts up any meaningful resistance or if a newcomer gives them the finger while still making good shit, he could inspire others to follow him and the entire takeover will collapse. This is why they're so insistent on making EVERY project and EVERY developer cave to their whims, no matter how small: most of their power is soft power and a single charismatic opponent could wipe the floor with them.
Replies: >>644 >>2270
leopard_seal_wins__by_silverkiwi78-d544tgh.jpg (u)
[Hide] (65.4KB, 900x643)
>>597
just in time for DAY OF THE SEAL
39476396.jpg (u)
[Hide] (49KB, 420x604)
>>552
I've used many "beginner" distros as my daily driver, or on a second machine; but Linux Mint is still what I install on my friend's and family member's computers whenever their winbloat 10 installation corrupts itself (or they corrupt it themselves; or they get infected with ransomware and think they have to pay the ransom (which I've witnessed first-hand, and it's sad to watch something so preventable happen)).

Like OP said about Ubuntu, Linux Mint also "just werks". It requires no more technical knowledge to read emails and watch youtube videos on Linux Mint than it does to do those same tasks on winbloat 10. But that's not the reason why I always choose Linux Mint to install on my friend's and family's fried laptops. After all, Manjaro, Endeavour and of course Ubuntu are also equally easy to use and have their own strengths over Mint.

The reason why I install Linux Mint on their laptops is for compatibility: every time I've installed a distro for someone, they think they still have to open their browser and go to a website in order to download a piece of software like you have to do on winbloat. Even when I show them how to access their distros repos, they still prefer to get their software via their browser and I know full well that when I leave and go back home, that's how they'll likely be downloading all their software. Given that many websites provide their Linux ports exclusively in the form of DEB packages, then if I'd installed an Arch-based distro on their laptop, pacman wouldn't be able to do anything with the DEB package they downloaded and they'd likely get very frustrated, ring me up and then I'd have to go to their house just to type "sudo apt install X package" into a terminal for them.

>tl;dr most people shouldn't even be within 50 feet of a computer, but since they still have one, all you can do is set it up for them such that they can use it exactly as they would use winbloat 10. They won't change their habits for a new OS because they can't understand how one OS is different to another.
Replies: >>629
>>623
Installing random shit you found on the Internet on a Linux desktop is a lot more dangerous than with Windows, considering there's basically no security model for X or Wayland. Would these brainlets at least use a web facing frontend to the package manager?
Replies: >>630
>>629
Where else would those .deb packages be hosted? It's a very different situation than on windows where thousands of sites out there have software packaged with spyware included, worst case scenario the installer needs to grab a .NET version to make it run on W7/8/10. Or where the official windows store is mostly filled with garbage.

Asides for github/gitlab and sourceforge I can't think of many places I've downloaded .deb packages from.
>>599
You inspire hope in me Anon. Thanks.
awe.gif (u)
[Hide] (6.6KB, 104x133)
5ac1ef55c81da7e519c1f5d5966a1d539958e54d487a3b5290a03a0420d60659.gif (u)
[Hide] (1.5MB, 687x687)
Why Gentoo? 
* You can choose the features you want to be compiled in packages (less bloat, better security)
* Can be fully optimized and riced to your liking! https://archive.is/TbXbC
* Say no to botnet, Say hello to Mister God!
* Portage is a very nice package manager, even though it resolves dependencies rather slowly... well, you could try using PyPy3: https://archive.is/j0YPV
* Gentoo is stable but has fresh packages available. You can choose which packages you want to be ""Bleeding Edge"" (use the ~arch keyword. for example: ~amd64)
* You can filter software based on the license, or in other words, you can install just Free Software as defined by the FSF


Why aren't you running Gentoo already?
>inb4 I have low-end Neetpad
Use distcc: https://wiki.gentoo.org/wiki/Distcc
>What are the alternatives to Gentoo?
* Funtoo
* Artix
* OpenBSD (imo the most usable *BSD)
* Source Mage GNU/Linux (SMGL)
* Slackware
* LFS (heh) perhaps with pkgsrc...?
* TempleOS


Links
* Packages: https://packages.gentoo.org
* Overlays: https://overlays.gentoo.org
* Unofficial list of overlays with package search: https://gpo.zugaina.org/Overlays
* USE Flags: https://www.gentoo.org/support/use-flags/ (Pro Tip: Install gentoolkit and use equery u package)


Install Gentoo
Gentoo Handbook ( https://wiki.gentoo.org/wiki/Handbook:AMD64 ) is the official installation guide. I think that there is little point in rewriting everything here, but I am going to provide some tips for installing and using Gentoo.
>Which profile to use?
If you are unsure, select the newest one that is not marked as experimental and that has "desktop" in its name.
Want to partition using gparted? Want to have access to GUI while installing? Use SystemRescueCD https://www.system-rescue-cd.org

You should compile the kernel manually, as sys-kernel/genkernel messes up sometimes but it's fine to use it to generate your initramfs: genkernel [--microcode] --install initramfs
Pro Tip: If you use GRUB, add GRUB_CMDLINE_LINUX="slub_debug=P page_poison=1 nosmt=force l1tf=full" to your /etc/default/grub to keep the CIA out if you are on X86/AMD64 ( https://raw.githubusercontent.com/torvalds/linux/master/Documentation/admin-guide/kernel-parameters.txt )

>inb4 too dumb to compile the kernel manually
Use a pre-built kernel: https://wiki.gentoo.org/wiki/Handbook:AMD64/Installation/Kernel#Alternative:_Using_distribution_kernels
Pro Tip: Enable symlink USE flag for sys-kernel/gentoo-sources and initramfs USE for sys-kernel/linux-firmware
Also: https://wiki.gentoo.org/wiki/Microcode https://wiki.gentoo.org/wiki/AMD_microcode https://wiki.gentoo.org/wiki/Intel_microcode

Oh, and one thing about USE flags: Avoid adding local USE flags to your /etc/portage/make.conf  (these are local to the package, while global USE flags have the same meaning everywhere) Also, it's better to not enable too many USE flags in your make.conf, however disabling things is fine. If you need some USE flag just for one package, then add it to your /etc/portage/package.use file/directory instead of enabling it system-wide in your make.conf


Portage can use GPG to validate snapshots
>https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/Features#Validated_Gentoo_repository_snapshots
>https://wiki.gentoo.org/wiki/Portage_Security
>https://wiki.gentoo.org/wiki/Project:Portage/Repository_verification


Useful tools 
>https://wiki.gentoo.org/wiki/Useful_Portage_tools
app-portage/gentoolkit      - Contains various utilities, such as equery and glsa-check. pls install. It can save your life someday.
app-portage/eix             - Search packages faster. Rember to run eix-update
app-portage/layman          - Manage your overlays (read below) You can also use eselect-repository instead, if you want to.
app-portage/cpuid2cpuflags  - Find out the correct CPU_FLAGS_X86 for your make.conf

Add extra configuration options for Eix:
# read eix's man-page
cat /etc/portage/env/eix-extra-econf.conf
  EXTRA_ECONF="--enable-strong-security --enable-optimization"

cat /etc/portage/package.env
  app-portage/eix eix-extra-econf.conf

emerge --oneshot --noreplace hwinfo app-portage/cpuid2cpuflags mirrorselect
emerge --noreplace gentoolkit eix layman tmux bc

Enable etckeeper:
cat /etc/.gitignore
  shadow*
  gshadow*
  ssh/ssh_host_*
  ssl/private/*

emerge etckeeper dev-vcs/git
sudo -i # or: su -
cd /etc
etckeeper init
etckeeper commit 'initial commit'
git gc
Replies: >>933 >>982 >>2234
32c91285cd8cf0101ebaf37c4cf34ec435b3519659471173bf20e2a74a2b0102.jpg (u)
[Hide] (411.2KB, 566x800)
>>932
Overlays 
Get list of available overlays by running layman -L
Instead of using layman, you can also use eselect repository, if you want: https://wiki.gentoo.org/wiki/Eselect/Repository

When you have found an overlay you want to add, you really should first mask all packages from that overlay by editing your /etc/portage/package.mask file/directory.
After you masked the packages, add the overlay: layman --add OverlayName After adding the desired overlay, update your overlays: layman -S (The reason for masking all packages in overlays, is to keep your system 100% halal/kosher.)
Finally, you have to unmask the packages you want to install from the overlay, by adding its name in your /etc/portage/package.unmask file/directory. 

For example:
possible language: bash, relevance: 10
cat /etc/portage/package.mask
  */*::torbrowser

# you could also use the guru overlay
layman -a torbrowser
layman -S

emerge --pretend --verbose torbrowser-launcher # for pedagogical reasons

cat /etc/portage/package.unmask
  #...
  www-client/torbrowser-launcher::torbrowser
  #...
# Read the ebuild before installing the package from the overlay
emerge torbrowser-launcher
For more info on writing your own ebuilds and creating overlays:
>https://wiki.gentoo.org/wiki/Basic_guide_to_write_Gentoo_Ebuilds
>https://wiki.gentoo.org/wiki/Ebuild_repository
>https://wiki.gentoo.org/wiki/Handbook:AMD64/Portage/CustomTree
>https://wiki.gentoo.org/wiki/Custom_ebuild_repository
>https://devmanual.gentoo.org


package.use and friends
These can be either files or directories containing files. You can find these in /etc/portage/ directory.
Pro Tip: It's often convenient to have a file called zzAutomatic (or similar) in these directories (if you chose to use directories instead of files, that is.) Because this way when you tell portage to make changes to your configs, it will modify these files instead of some random files in your package.use (actually you need to use dispatch-conf (or similar) to apply the changes)
Pro Tip: You should try to not enable every USE flag in your make.conf, use package.use instead! (Especially with local USE flags, as the function of local USE flags varies between packages!)

package.use contains the per-package USE flag settings. For example: 
possible language: php, relevance: 16
# This is a comment
# -Minus sign means that we are going to disable(!) the USE flag.
# By default the CIA is trying to trick the user into installing OpenSSL with harmful features enabled. You can fix this by customizing the USE flags for the OpenSSL pakcage.
# Also, FYI, Gentoo does have *UNOFFICIAL* "support" for LibreSSL: https://wiki.gentoo.org/wiki/Project:LibreSSL (tl;dr you need to add the community-maintained libressl overlay)

cat /etc/portage/package.use/security_and_crypt
  dev-libs/openssl -sslv3 -tls-heartbeat -zlib
package.keywords (used to be called package.accept_keywords) here you can enable keywords for packages. The ~arch keyword (where "arch" is the desired architecture, for example ~amd64) enables testing/unstable packages, so in other words you can install newer versions and packages that aren't marked as stable yet. For example, to allow installation of games-misc/katawa-shoujo (games, etc. are often marked as unstable), add the following to your package.keywords:

# Actually, just download the VN from https://www.katawa-shoujo.com 
games-misc/katawa-shoujo ~amd64
package.mask and package.unmask were covered in the section regarding overlays.
package.license allows you to allow/block installation of a package based on its license. If you want to set this globally, for example to only install Free software, add  ACCEPT_LICENSE="-* @FREE" to your make.conf.

If you want to accept makemkv eula, edit your package.license:
cat /etc/portage/package.license
  media-video/makemkv MakeMKV-EULA
package.env and /etc/portage/patches allow you to, for exmple, set custom CFLAGS per package (for example for debugging purposes) or apply patches:
>https://wiki.gentoo.org/wiki/Handbook:AMD64/Portage/Advanced
>https://wiki.gentoo.org/wiki/Debugging
>https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces
>https://wiki.gentoo.org/wiki//etc/portage/package.env
>https://wiki.gentoo.org/wiki//etc/portage/patches
>https://wiki.gentoo.org/wiki/Patches


Example (incomplete) make.conf
possible language: perl, relevance: 29
CFLAGS="-march=native -Os -pipe -fno-plt"
CFLAGS="-march=native -O2 -pipe -fstack-protector-strong -fstack-clash-protection"
CXXFLAGS="${CFLAGS}"
FCFLAGS="${CFLAGS}"
FFLAGS="${CFLAGS}"

CPU_FLAGS_X86="..." # use cpuid2cpuflags
MAKEOPTS="-j4 --load-average=4.0"
EMERGE_DEFAULT_OPTS="--ask --complete-graph=y --with-bdeps=y --backtrack=1000 --jobs=3 --load-average=4.0" # you might want to also read about --keep-going 
LC_MESSAGES=C

# Remove wayland/pulseaudio USE flag from the list if you aren't going to use it
# Enabling pulseaudio USE will pull in pukeaudio
USE="X wayland xft elogind bluray bdplus aacs cdr dvd hardened pie pic vtv ssp crypt ssl openssl system-ssl socks socks5 unicode alsa ffmpeg offensive pulseaudio -suid -upnp -upnp-av -zeroconf -binary -deprecated -nls -gnome -kde -bluetooth -gps -geoip -geoip2 -geolocation -telemetry"

ACCEPT_LICENSE="-* @FREE"

VIDEO_CARDS="nouveau amdgpu radeonsi vesa"
INPUT_DEVICES="evdev libinput"
GRUB_PLATFORMS="efi-64 pc"
GENTOO_MIRRORS="..." # use mirrorselect

Post Install
possible language: perl, relevance: 11
USE="motif X -gtk -gtk2 -athena -Xaw3d" emerge app-editors/{neovim,emacs} # install editor
# it might be a good idea to install busybox with static USE enabled
emerge --noreplace gentoolkit lm-sensors smartmontools tmux debugedit gdb bc busybox net-misc/openntpd app-crypt/gnupg
# X11
emerge --noreplace x11-base/xorg{-server,-drivers} x11-apps/xdm  # or...
# wayland
# sway is (almost) drop-in replacement for i3(gaps)
emerge --noreplace sway x11-terms/alacritty

useradd -m -G video,audio,users,wheel sleeper
rc-update add ntpd default
rc-service ntpd restart

# make sure everything is up-to-date and remove old/unused/unselected packages
emerge --ask --update --deep --newuse --with-bdeps=y --keep-going @world
emerge --ask --depclean
Replies: >>2234
c19e017e774fb0a02ed02d581fa9766abdedfffa94f386e1b1dba751df50016b.jpg (u)
[Hide] (782.7KB, 1100x799)
DO_IT_LIKE_A_WHITE_MAN.mp4 (u)
[Hide] (409.3KB, 640x368, 00:09)
say-hello-to-mister-god.webm (u)
[Hide] (964.1KB, 1120x720, 00:08)
TempleOS Video Archive
* https://archive.org/details/TerryADavis_TempleOS_Archive
* https://ia600600.us.archive.org/31/items/TerryADavis_TempleOS_Archive/videos/
* There are also a few channels on YT


TempleOS ISO Archive
* https://archive.org/details/TempleOS_ISO_Archive
* https://archive.org/download/TempleOS_ISO_Archive
* Download version 4.13 because it has most programs (like After Egypt)
* Shrine (unofficial TOS distro) https://github.com/minexew/Shrine
* You must install TOS inside a VM; Use QEMU, VirtualBox or VMware. To get sound, your VM must support PC speaker. (Note that sound doesn't work with VirtualBox)
* TempleOS FAQ: https://web.archive.org/web/20161129044519/http://www.templeos.org/Wb/Doc/FAQ.html
* HolyC: https://web.archive.org/web/20170325000321/http://www.templeos.org/Wb/Doc/HolyC.html
* Compiler overview: https://web.archive.org/web/20170305045826/http://www.templeos.org/Wb/Doc/CompilerOverview.html
* Guidelines: https://web.archive.org/web/20170306232214/http://www.templeos.org/Wb/Doc/GuideLines.html
* Demands: https://web.archive.org/web/20170305045050/http://www.templeos.org/Wb/Doc/Demands.html

possible language: rust, relevance: 11
TempleOS

You can't do anything until you burn a TempleOS CD/DVD from the ISO file
and boot it, or you aim your virtual machine's CD/DVD at the ISO file
and boot.

TempleOS is 64-bit and will not run on 32-bit hardware.

TempleOS requires 512 Meg of RAM minimum and can have 256 Gig of RAM or more!

TempleOS files are compressed with a nonstandard LZW format and the source
code can only be compiled by the TempleOS compiler because it is HolyC, a
nonstandard C/C++ dialect.  You must boot TempleOS.  Then, you can compile it
because it is 100% open source and all source present on the distro.

If attempting to run on native hardware, TempleOS may require you to enter I/O
port addresses for the CD/DVD drive and the hard drive.  In Windows, you can
find I/O port info in the Accessories/System Tools/System Info/Hardware
Resources/I/O ports.  Look for and write down "IDE", "ATA" or "SATA" port numbers.
In Linux, use "lspci -v".  Then, boot the TempleOS CD and try all combinations.
(Sorry, it's too difficult for TempleOS to figure-out port numbers, automatically.)
TempleOS Charter (abridged)

* TempleOS is God's official temple.  Just like Solomon's temple, this is a 
community focal point where offerings are made and God's oracle is consulted.

* God said 640x480 16 color graphics is a covenant like circumcision.  Children 
will do offerings.  Think of 16 colors like the Simpson's cartoons.  In the 
future, even if one GPU were universal, we would keep 640x480 16 color and not 
use GPU acceleration.  Graphics operations should be transparent, not hidden in 
a GPU.

* God said to use a single-voice 8-bit signed MIDI-like sample for sound.  God 
does not want death screams, perhaps, because God has PTSD or soldiers have 
PTSD.  (Imagine wounded on battlefields.) 

* God said His temple must be perfect.  We don't think twice about breaking 
compatibility.  God said we do a seven year release cycle.  I say the PC 
hardware follows a 49 year, jubilee cycle, like broadcast TV upgrades.

* The vision is the same usage model and niche as the Commodore 64 -- a 
non-networked, simple machine where programming was the goal, not just a means 
to an end.  However, it is modern, 64-bit and multi-cored.  It is special 
purpose, not general purpose, so some things it will not do.  Also, it's a 
kayak, not a Titanic. The priority is user developers, not 3rd party developers.

* We do not put any hooks for future changes.  "Perfect" means we always act as 
though it is final, for all time.  Microsoft allowed the Windows BMP file format 
to adapt to the future and it became grotesque.

* Low line count is the highest good, so it is easy to learn the whole thing.  
Users should see the light at the end of the tunnel.  One file system, for 
example, is better than many file systems.

* There is a limit of 100,000 lines of code for all time, not including 
applications and demos.  Code comments count, however.  Currently, there are 
81,502 lines of code.  3rd party libraries are banned because they circumvent 
the intent of this limit.  The vision is a Commodore 64 ROM -- a fixed core API 
that is the only dependency of applications.  Dependency on components and 
libraries creates a hell that is no longer blissful.
 
* Minimal abstraction is a goal.  Sheep are fools.  They always respect a design 
that is more complicated than another.  Any genius can make it complicated.  
Like in physics, it takes a supra-genius to make it simple.

* One platform. x86_64 PC compatibles.  Desk-tops are all we design for, but 
laptops can tag along.

* All hardware access will be done through x86 IN/OUT instructions, not PCI 
drivers.  A frame buffer for VGA is an exception.

* One driver for each class of device.  Limited exceptions are allowed.  With 
divergent device capabilities, it is a nightmare for user applications and what 
is gained?  A three bttn mouse is like a leg you cannot put weight on.

* Ring-0-only.  Everything runs in kernel mode, including user applications.

* Full access to everything.  All memory, I/O ports, instructions, and similar 
things must never be off limits.  All functions, variables and class members 
will be accessible.  There are no C++ public/private protections and all 
functions, even secondary ones in the kernel, can be called.

* Single-address-map as though paging is not used.  Long mode requires paging, 
however, so the nearest thing is keeping all memory identity-mapped.

* No networking, so malware is not an issue.

* No encryption or passwords.  Files are compressed, not encrypted.

* Free and public domain.

* 100% open source with all source included.

* Documents are not for printing.  They're dynamic, intended for the scrn.

* Just one 8x8 fixed-width font.  No Unicode, just Extended ASCII.  Other 
countries can make their own versions.  The versions should be just for one 
language and platform.

* No multimedia.  Sounds and images will be primarily calculated in real-time, 
not fetched from storage.


* "Commodore 64" is a trademark owned by Polabe Holding NV.
* "The Simpsons" is a trademark owned by Fox.
* "Windows" is a trademark owned by MicroSoft Corp.
>>980
I haven't tried Gentoo but I main Void so I can give you an idea what it's like. But take it with a grain of salt as this is just my personal experience, and Void is only my second distro ever after Ubuntu which I quickly abandoned... Here are my key points.
 - Text-based installer using dialog. Very easy to use coming from Windows but the partitioning can be tricky, so refer to the handbook or watch a youtube video.
 - Barebones ISO available if you wanna go the Arch/Gentoo way, otherwise go with the XFCE ISO (package list here http://0x0.st/--At.txt ). Alternatively you can use their mklive tool (which I surprisingly found easy to use) to create your own custom, live-bootable, installable ISO. You can make a custom base configuration (in a VM for example) and install that instead of going with a "stock" ISO right away, if you like.
 - Active IRC channel and subreddit, great source of help even if you're new to linux altogether.
 - Pretty fast and lightweight. A base install (without xorg) is less than half a gig and boots in a couple seconds, adding a DM + DE takes an extra 3-5 seconds to reach the desktop.
 - Package manager is efficient but command line only, although you can install a graphical front-end for it like Octoxbps, which I use. Downloaded packages are cached by default and remain in cache until you either completely clear it or run xbps-remove -O to remove obsolete packages.
 - There are only 4 repos total; 2 for 64-bit and 2 for 32-bit. The software selection is good but not AUR good (complete list here https://voidlinux.org/packages ), so you will sometimes have to compile from source or look up xbps-src on github. Creating local repos is easy (literally 1 command), creating your own packages is supposedly just as easy but I haven't tried it.

Hope this helps.
Replies: >>982
>>981
Yes thanks for replying to my post I deleted.
The deleted post was something like this:
>>932
>are void linux and devuan good alternatives to gentoo?
First time witching to new GNU+Linux, planning on trying Debian as a daily driver while setting up LFS on a different parition as an excercise and to get to know Linux better.
Is this a good idea or should I try something braindead like de-GNOMEd Ubuntu first?
Replies: >>1114 >>1120 >>1147
>>1110
You need only to be able to complete the install process and, in case you can't find the solution to something in man pages, connect to the Internet and install a web browser. You shouldn't need to try Ubuntu first. The more something is made easy to use, the more its functionality is obscured, the more it retards your learning. LFS seems to be a lot of instruction following and waiting, something to do when you're very experienced and have nothing better to do with your time. You could probably learn more quickly from books.
My opinion as a beginner.
>>1110
I tried using Debian for a while, but the biggest issue I had was not knowing the difference between DEs when I first installed it, so I chose XFCE which I absolutely hated. KDE is the closest to Win10 so choose that for a good middle ground. Also if you're using an Nvidia card you're going to have a miserable time dealing with nouveau or Nvidia's nonexistant proprietary drivers.
Replies: >>1147
>>1110
Debian's fine, and if you want a non-systemd alternative there's Devuan. You'll get a nice ISO with a DE pre-installed so you can get started quickly, but you can always change anything you don't like later.

>>1120
Nvidia's proprietary driver works nicely on laptops that are officially supported tbh
>>530 (OP) 
I love Linux but Linux makes me sad
>>530 (OP) 
The only distro worth using in your list is Gentoo, delete the thread and try again faggot.
e31ccfedafb91c4150bbbfd0b605a6cdf1d7cf333803403791a6a6638e729fb9.jpg (u)
[Hide] (849KB, 2463x2463)
I'm thinking of switching to Void, but I heard there was some fuckery with the lead dev disappearing a while back. Have the current devs sorted shit out or is it in risk of dying? 
Have they finally unfucked the sound drivers yet?
Just look up Void's official Twitter account through Nitter.
Replies: >>2188 >>2271
ClipboardImage.png (u)
[Hide] (110.2KB, 630x613)
ClipboardImage.png (u)
[Hide] (12.4KB, 649x160)
ClipboardImage.png (u)
[Hide] (14.8KB, 629x153)
ClipboardImage.png (u)
[Hide] (64.7KB, 615x551)
>>2187
I wish I hadn't.
Replies: >>2189 >>2190 >>2233
>>2188
I thought it's the spammer again, if only I knew how bad things really are.
>>2188
Wow, at least arch community aren't pozzed like this kind of level. How horrifying.
Replies: >>2192
>>2190
>systemd 
I just want an OS that isn't shit, why does everything have to be gay?
Replies: >>2193 >>2196
>>2192
Because people like you only use things but don't make things.
Replies: >>2194
>>2193
I haven't been chosen by God, I can't make an entire OS by myself and maintain it.
Replies: >>2195
>>2194
Literally nobody is. Even Terry didn't make an OS that's generally usable.
>>2192
artixlinux.org
Replies: >>2197
>>2196
I've seen it mentioned before, but sites that write about distros are always shit. How is it?
Replies: >>2198 >>2205
>>2197
It's just arch without systemd, still got elogind and other shit though. Have access to arch and aur packages.
Replies: >>2203
82db19f8724e74462a488c7e932bba4f92fe23f5182d959fb47e1d6108a23a0f.jpg (u)
[Hide] (23.6KB, 342x342)
>using devuan linux
>paranoid that i'm somehow going to install systemdicks by mistake
>paranoid that I already have
is there a way i can check?
Replies: >>2200 >>2204
>>2199
man apt?
online search "apt search installed"?
Replies: >>2201
>>2200
is there a specific name it'd be under? it wouldn't just be "systemd" wouldn't it?
Replies: >>2202
>>2201
Who knows, may be searching "debian systemd package" helps?
https://packages.debian.org/search?keywords=systemd
>>2198
Sounds neat, I'll give it a try eventually.
>>2199
>antisystemd fags don't even know how to check what's installed on their computer
I can't believe people are still falling for all the trolling about systemd. If you want sysvinit use a BSD. It's that simple Whoever was spamming about systemd being the systemdevil really did a number on your brain. Consider not posting on image boards if you're truly this credulous.
>>2197
>How is it?
I couldn't make dnscrypt-proxy work on it for shit, but otherwise it's fine and does the job of mitigating systemd quite well.
>>2204
Don't all the BSDs still use a BSD init?  SysV is different, it's how Debian used to be setup.
>>2204
>it's either systemd or sysvinit
>taking random schizo seriously
Your post has more to do with /tech/ than his, but you are just as retarded.
>>2204
>shilling systemd using a retard as proxy
How about you get back to sucking pottering's systemdick, you ignorant retard faggot? shitd is not linux.
02dbe3235eec66df062f3e4560cfd21104d245960ed47fcb249d7d2c5b06d85c.PNG (u)
[Hide] (302.8KB, 351x367)
>>2204
I switched to Devuan not because I am afraid of systemd. If anything, I would be all for it as a standardized system that other programs would build on for support, something I believe the Linux ecosystem really needs. My problem is that the developers are braindead retards that would rather spend more time sucking each other off over their bloated dumpster fire of a system than actually fixing it and making it useful, combined with their technological incompetence (I believe Poettering didn't even know what RAID was) and virtue signalling (labelling everyone against systemd as racists). Similar to the stunt Void Linux just pulled, I want my computer to just run shit without having any backdoors/unnecessary garbage built into it and the developers of its software to do just that: develop software and not act like they're gatekeepers of something they have no part of.
I don't people ever talk about this but do you guys realise poettering basically became the goto for corporations and big projects? Steam uses lib32-systemd on artix, it doesn't even start if you have all systemd dependencies but no systemd(this was how it was a year ago), wine pipes sound into pulseaudio instead of alsa, firefox creates pulse files even if you don't use paudio but use systemd. 
Valve just decided "fuck it systemd is a must now" and it was a dependency.
Replies: >>2222
>>2220
Big corporations will always go for the path of least resistance as well as what is being perceived as the "future" that's corporate enough. SystemD is what RedHat sponsors, so the choice is made. Valve uses it for two reasons. One, the company as a whole is amazingly stupid even if it employs smart people. Two, the only official support they offer on Linux, besides their SteamOS, is that it works on Ubuntu. Ubuntu uses systemd and it doesn't start without it because see reason one. What else do you expect from a company that makes you run a fucking web browser as an interface to their video game launcher program?
>>530 (OP) 
>niggercities
<¿habla taco que queso?
>>2188
Disliking wares for the sake of other's beliefs and perceptions is just beyond autsim, schizophrenia or any other mental-illneses.
Replies: >>2241
GdlS4rf.jpg (u)
[Hide] (144.6KB, 1500x1000)
>>932
>>933
No.
>>2233
>dropping a product because it's made by people who hate you when their opinions will most likely impact the future of the product and also introduce a non-zero chance they will try and fuck with you is "beyond autism"
No, you are just retarded. Doesn't matter if wares are free or not. If not free, you pay them to support their beliefs and perceptions. If free, you use it so they can say a thousand people uses this and get funding, which is spent on their beliefs and perceptions.
Do you think the same for unpopular beliefs and perceptions? Looks like not being retarded makes you a mentally ill schizo autist.
>>599
I don't see why the good ones don't even try to use mullerian mimicry (mimicking these noxious people to avoid trouble).
I've seen some though who are crypto-trannies (they aren't actually into lgbt but they just do it so they can stay in their "culturally enriched" company/branch and so that they won't lose their job).
I'm not really into these politics and social/soft science bullshit but I can see myself making online accounts that claim I support "BLM" like everyone else.

As they say, blend with the herd. Be a crypto.
Replies: >>2271
>>2187
see >>2270
Not all of "supporters" are true supporters.
Anonymity and deceptiveness does not need to stand out for its beliefs, instead fakes it to their own advantage.
>>530 (OP) 
>want to avoid SystemD
>use Artix
>recently learned that Steam depends on SystemDalthough i installed it and it seemed fine without it, but haven't done through testing
>might switch back to EndeavorOS
Replies: >>2294
>>2290
Steam depends on lib32-systemd, there was (!)bug that didn't let steam open without 64bit-systemd but i think they fixed it because it works with just lib32-systemd.

This only goes to show how misunderstood systemd really is, and how the community has overreacted to the absolutely false rumours regarding it fully incorporating entire linux distributions.

Instead of joyfully accepting the superb multimedia experiences that systemd could be bringing to your workstation, living room media player and laptop, instead of appreciating the beauty of its design, the grace it bestows upon higher-level software that could exist without knowing what init system is being used  - BUT WHY SHOULD IT?! - ... I now see the light! I now understand why Dota2 MUST be engulfed by systemd. The three lanes must be defined in the kernel, the creeps must be spawned by a systemd timer ... and one can only assume the true meaning of systemctl daemon-reload! (hint: actual daemons!)

I feel ashamed by my past. I bow to thee, systemd, bringer of colourful virtual creatures that I can click upon and kill. The elders say it was also used to start services, but that's obviously nonsense from the extremist naysayers. Heretics!
SystemD is the final conclusion of universe, it will engulf everything to the point that it becomes the ultimate singularity and become the monad of the universe.
>On 2021-07-06, the sys-apps/opentmpfiles package was masked due to a
>root privilege escalation vulnerability (CVE-2017-18925 [0],
>bug #751415 [1], issue 4 [2] upstream).
>
>The use of opentmpfiles is discouraged by its maintainer due to the
>unpatched vulnerability and other long-standing bugs [3].
>
>Users will start seeing their package manager trying to replace
>sys-apps/opentmpfiles with sys-apps/systemd-tmpfiles because it is
>another provider of virtual/tmpfiles.
>
>Despite the name, 'systemd-tmpfiles' does not depend on systemd, does
>not use dbus, and is just a drop-in replacement for opentmpfiles. It is
>a small binary built from systemd source code, but works separately,
>similarly to eudev or elogind. It is known to work on both glibc and
>musl systems.
>
>Note that systemd-tmpfiles is specifically for non-systemd systems. It
>is intended to be used on an OpenRC system.
https://archives.gentoo.org/gentoo-dev/message/d9e48c241cddb578c2b9d91e0369523f
Replies: >>2407 >>2408
>>2395
https://www.freedesktop.org/software/systemd/man/tmpfiles.d.html
I've read the manual and have no idea what that program is even for.
Seems it creates files and directories with specific permissions, and gives them a timer after which they're deleted? But why? That's trivial in C and we have /tmp/ for temporary storage.

Speaking of, it would be nice to have a function to get a file with no filename. Right now you have to open a new file and delete it. That leaves a portion of time where the file is linked in the filesystem.
Replies: >>2409 >>2411
>>2395
Also the systemd implementation of this is 4000 lines of source because of course why WOULDN'T corporate software blow up into an unexplainably huge line count?
https://github.com/systemd/systemd/tree/main/src/tmpfiles
>>2407
>But why?
Because it's a new type of virus.
Replies: >>2414
>>2407
mkstemp(3)
Replies: >>2412
>>2411
mkstemp is for avoiding a TOCTTOU when creating a tempfile, I want to create a file that has no name in the filesystem.
Replies: >>2415
>>2409
new?
virus?

time to destroy the economy
Replies: >>2546
creat.png (u)
[Hide] (7KB, 640x480)
>>2412
creat(2) can create temporary file without filename, but if you want the file to be permanent, you'll have to name it.
Replies: >>2596
f2f1c2793ec4bc6d41e6df8f6526f996ee5b7dd4deadf39534d02ada2cc5511b.jpg (u)
[Hide] (163.5KB, 1200x786)
>hear about musl from the void linux circles
>hear it's smaller, faster, less bloated...etc
>decide to give it a try
>load my custom script which creates <700MB void iso files and set it to use musl instead of glibc
>resulting iso file is over a gigabyte in size
Am I missing something?
Replies: >>2536 >>2539 >>2541
>>2535
If you want to see how much less bloated musl is, just open the source code. It's a difference like night and day. There is no way to tell what the problem with your script is if you don't post it.
Replies: >>2537
>>2536
Here's the script:

language: bash
#!/bin/bash
sudo ./mklive.sh -a x86_64-musl -i xz -s xz \
-p "dialog ntfs-3g fuse strace neofetch                     `# base, filesystems`           \
    grub grub-x86_64-efi                                    `# bootloader`                  \
    xorg-minimal xorg-video-drivers xmessage xset xbitmaps  `# X11`                         \
    autox jwm xfontsel                                      `# DM, WM, theming`             \
    alsa-utils                                              `# audio`                       \
    NetworkManager curl lynx                                `# networking`                  \
    st nano xfe xcalc feh azpainter                         `# accessories`                 \
    scrot xclip wmctrl xdotool                              `# screen capture, WM control`  \
   "
The mklive tool is from https://github.com/void-linux/void-mklive
>>2535
the wokescolds captured void just like they did KISS
all smells very glowey
Replies: >>2542
>>2535
>musl
Is there a way to use musl on Artix? From searching that I've done it isn't officially implemented, and adding it would be a big project. Is that right, or is there an easier route?
Replies: >>2542 >>2543 >>2544
Nevermind, the problem was fixed by passing -c some/clean/path to mklive, what this does is basically use the provided clean path as a package cache directory (musl), instead of falling back to the default system one (glibc). I'm guessing without this flag each package will be installed twice, once from the musl repos and once from the glibc cache.
The end result is a <700MB iso file with the clean path now full of musl packages. Success!

>>2539
Fuck off blackpill.

>>2541
I have no idea honestly, but I would suggest you try musl first on void/alpine before jumping into any big project relating to it.
Replies: >>2552
>>2541
Gentoo has supported musl for a while now and still has a fair share of musl-specific patches (especially for shit like GCC and Mesa) in the official overlay, so that would probably be quite some work.
Replies: >>2552
>>2541
Absolutely not. At the minimum it would require having an entirely new repository of software compiled against musl, some with patches to fix niggerliciousness that glibc encouraged. Just install Gentoo/Void/anything that officially supports it.
Replies: >>2552
>>2414
Yes Systemd is a new type of virus in that it's spreads exclusively through humans(retarded) on computers instead of just computers.
Replies: >>2547
>>2546
>spreads exclusively through compromised humans
Sounds more like a vaccine than a virus.
Replies: >>2549
>>2547
Just like the corona vaccines, it's a solution to a problem that didn't exist which creates problems of its own.
Replies: >>2551
>>2549
does it also replace system files with pictures of nig gates to trick your antivirus into deleting the whole directory
Replies: >>2553
>>2542
>>2543
>>2544
Thanks, I thought so. I was on Gentoo, but it took too much time to set up and maintain, the installation wasn't as hard as everyone says though. I have Alpine on one of my Pis, so I already am familiar with it a little. And I switched from Void to Artix, because the packages are so much more up to date and it doesn't break as much.
Replies: >>2554 >>2559
2297915.jpg (u)
[Hide] (862.5KB, 1200x833)
>>2551
The virus and its dependencies have very likely  given every glownigger dial up to your retard-linux-system asshole(if they want) for 7 years such as most recent:
https://github.blog/2021-06-10-privilege-escalation-polkit-root-on-linux-with-bug/
>7 years
https://www.theregister.com/2018/10/26/systemd_dhcpv6_rce/
>some of the world's best high paid programmers
>find backdoor
>"we didn't know"
>this happens over and over
>repeat the same things over and over again
>miraculously get away with it every single time
...
>do just a little bit of research and find out redhat works with ZOG and gets actual contracts for decades already
Connect the dots nigger, that's all you need to do.
>>2552
>artix not breaking as much as void
This is a joke, right?
>>2552
>I was on Gentoo, but it took too much time to set up and maintain,
How so, compilation times? The only times I had maintenance issues was when I did shit the distro maintainers explicitly didn't plan for, like running super old versions.
ab67616d0000b273a9ad5fd8fbc93ded4b20aaa8_(1).jpeg (u)
[Hide] (82.8KB, 640x640)
is it just me or are "rolling" distros more stable than "stable" (i.e. debian) distros?
Unless its software that explicitly has stable releases with backports / patches I think bleeding might actually be superior.
I'm not talking about web servers, kernels or the like, but smaller projects that have at most 5 developers.
I've been trying to do audio production on linux for years and have ALWAYS had stability issues, I tried the pro audio distros and they sucked too, honestly artix does a better job than these domain-specific distros.
there simply isn't any effort in actually quanitiying the "stability" of these debian-like distros, the author says its stable so the distributor releases that version until enough people complain, then the cycle repeats.
With rolling everyone is sort of on the same page, if one library author fucks up, then 1000 people come knocking -- its a reasonably effective feedback loop where the developer always risks losing end-users by making irresponsible regressions.
Its not ideal, but its an organic sort of evolutionary process -- we simply lack the resources to be formal and beuracractic about FOSS development, this is rougly in line with ESR's 'cathedral & bazaar' thesis.
When I used debian and slackware I'd constantly be manually building libraries in order to get updated versions of programs to fix certain bugs, on a rolling release your libraries are close enough to bleeding that you can build anything that is in current development, i.e. anything worth a damn that wasn't abandonded by its authors.

A project can only grow so large before it becomes intractible to verify its stability. openbsd can make solid claims about their core because its smaller than the X server, but when you have over 10,000 packages that are just assumed to be stable because they were released 10 years ago then your just full of shit.
If a distro were to be serious about stability, that would mean every time a library is updated, all of its reverse dependancies would have to be tested. Its simply impossible to deal with that level of complexity.
not really trying to make a blog post or anything, just extremely frustrated that I can barely do stuff that was stable on wangblows in 2004 on my lunix machine without getting a segfault every hour and ripping out my hair.
The average programmer isn't djikstra or knuth and if they were they wouldn't be writing FOSS shit they'd be hired by NASA or some military shit.

tldr; the best solution is gentoo or artix and I really wish it wasn't.
>>2561
There can't be any real stability the way modern software is typically done.  Watch the video.
https://www.youtube.com/watch?v=lKXe3HUG2l4
Replies: >>2564 >>2577
>>2563
good talk but heh, kinda cute how brits go out of their way to ignore konrad zuse.
>>2563
What exactly does this talk have to do with what you said or what you replied to?
Replies: >>2585
>>2561
They can be more stable because the maintainers of "stable" distros backport a lot of features and security improvements. I usually look at it in terms of tradeoffs and benefits.

Rolling release: up-to-date software with no need to backport any features, but you are basically the eternal beta tester (alpha testing is done by package maintainers)

Stable release: software is, in theory, solid and is less likely to have sudden changes. You are, however, stuck with very old versions of shit.

Put rolling release on the desktop and stable release on the server and call it a day. You might even get away with rolling on the server as well, if it's not some coprohomo project.

>smaller projects that have at most 5 developers
Those same developers tend to be the ones maintaining their own packages on stable distros. Imagine getting out another stable release of your codebase. You compile everything on Arch or Gentoo on the latest (or close to it) versions of all the dependencies. Now you get to Debian/Ubuntu and the libraries are years fucking old with probably some breaking changes in some of them compared to later versions. So it's time to break out the system-specific patches. Considering a lot of open source software gets written voluntarily during free time, this boring shit can get to people and you end up with unmaintained, broken packages.

>A project can only grow so large before it becomes intractible to verify its stability. openbsd can make solid claims about their core because its smaller than the X server
Yes, but even OpenBSD guys don't claim every single thing you install doesn't affect your system's security. It's safe to assume that all the "most secure major OS" is only related to the default install without any additional installations.
>If a distro were to be serious about stability, that would mean every time a library is updated, all of its reverse dependancies would have to be tested
I'm not sure about distributions, but OSS/FOSS has no QA and testers to speak of. If you think of how many programs have already been written, it would make more sense to build a feature & regression testing base that already exists, rather than pumping out thing X rewritten in meme language Y for your retarded nerd or job cred. It sounds incredibly boring and it is, but it would be at least be useful.
>just extremely frustrated that I can barely do stuff that was stable on wangblows in 2004 on my lunix machine without getting a segfault every hour and ripping out my hair
Windows owes that stability to DLL hell. You can replicate the same by asking software authors to package their shit as flatpaks for stable distros or just by doing it yourself.
>>2561
I have never used a stable distro and in 4 years no big crash except lightdm, which refused to start about 4 times in 10ish update. Now that i use sx to start xorg(which is the only stable way to start xorg) i have no issue with stability.
>>2577
His talk has everything to do with the topic of stability.  What part about this don't you understand?
Replies: >>2587
5d9afcc10aed25fce5094aa177a49c61213f8de6c50a7185a7990e513d5d5336.jpg (u)
[Hide] (52.3KB, 375x484)
>>2561
>if one library author fucks up, then 1000 people come knocking -- its a reasonably effective feedback loop where the developer always risks losing end-users by making irresponsible regressions.
that's a double-edged sword, they'll be paranoid about introducing new features because of the risk of breaking shit and having an angry mob outside their door because they accidentally put a space in "del /home /username/documents"
Replies: >>2587 >>2588
>>2585
The entire thing is just very over the place and never really comes to a point. It felt like I was watching an old man talk about various things he's excited about. The closest related thing is to identify packages with their hashes (I believe Guix does this), but the only way this addresses the problem is if you reproduce the DLL hell of Windows, which I sure as hell hope you aren't advocating.

>>2586
>they'll be paranoid about introducing new features because of the risk of breaking shit and having an angry mob outside their door because they accidentally put a space in "del /home /username/documents"
Well, they should. I know the space refers to a real bug, but if you have problems like these your review process it utterly fucked and you should fix that before pushing out any new things.
>>2586
>they accidentally put a space in "del /home /username/documents"
It's a good reason to make a container that is used to test out which files and directories the installation of your program or library affects, as part of pre-release procedures. The times it happened was due to lazy and/or shit devs, see Valve and Steam deleting /usr.
>>2415
Oh, didn't know Linux had this. That's a good extension.

Creating a file and immediately deleting it is an old unix technique for getting a temporary file nothing else can touch and that you can't forget to delete, I'm aware it'll be deleted after no process has a FD pointing to it.
It seems today's unix hackers have forgotten this trick, even the official flac encoder leaves garbage in the filesystem if you ^C it.

The thing is that it's perfectly possible for someone else to open the file before you delete it.
You can portably kludge it with flock(2), an exclusive flock lock can be obtained atomically when creating the file. This leaks the temporary filename and you have to remember to truncate the file to 0-length before closing it, because someone could open the file while it's visible in the filesystem and wait for you to release your exclusive lock to read your data.
possible language: rust, relevance: 17
----09/13/13 17:08:06----

Linux is inspired by 1970's mainframes.  They are set-up for multi-user with 2 
meg shared by 100 users.  They put things in pipes, doing a little at a time, 
and they have virtual memory.  They have a language good for admins.

TempleOS is inspired by a C64.  It is to be used for the same sorts of things, 
but it is modern.  It loads and processes whole files.  Actual disk virtual 
memory, by the way, is really retarded these days because if it ever actually 
does swap, it's unacceptablly slow!  All vestiges of virtual memory should be 
purged from all operating systems.

Linux will let you play two video games at once.  TempleOS doesn't see that as 
important.  Sharing-locks?  Don't be a retard.

C/C++ translation is very close to direct-to-assembly instructions.  GCC wastes 
compiler time on optimizations in case you give it dumb C/C++ code to compile 
because they are arrogant fools and suffer from piling ever-more-shit into it, 
like Intel and like Microsoft.

Linux and Windows do SMP.  That is not good for real-time flight simulators 
without GPU.  TempleOS does master/slave.  All applications run on core 0 and 
simply control, explicity and specifically, each of the other cores.  The 
scheduler never moves tasks between cores.  Theirs runs two applications faster; 
TempleOS runs one application faster.  In TempleOS, all tasks on all cores have 
the same address map -- all tasks can access all memory at all times because 
it's always identity-mapped with not ring protections.

Because it is ring-0-only and never changes address maps, it can do a blazing 
4,000,000 task changes in one second per core.  This is how I do multicored 
locks for I/O.

while (LBts(&my_lock_var,0))
  Yield;

...

LBtr(&my_lock_var,0);

lock-bit-test-and-set is an atomic, x86, multicore-safe-locked instruction.

This is how I poll disk drives:

while (!InU8(STATUS))
  Yield;

That's known as cooperative multitasking.  I have preemption.

possible language: rust, relevance: 19
----09/15/13 06:01:25----

WWW.OSDEV.ORG is pulling a carthage.  "Carthage" is when you sow salt in fields.

Wikipedia: "Cooperative multitasking is infinite time-slices." (Makes it sound 
bad.  Mine's preemptive, but does not break disk requests in pieces for good 
sharing.  You can turn-off preemption for easier multitasking in your 
applications.  Use it!  It's way more pleasant with cooperative mode.  It has a 
stigma.  People will think you're a nigger.  Polling is for niggers, LOL.  I do 
it when it's not bad.  Some people can't think for themselves.  I use goto, too, 
LOL.)

I see this: "Use the secure hash algorithm for your hash tables." (Making 
people think a hash table is for security, so they don't know how good a hash 
table is for a data structure.)

"My software stack is huge." (Hopelessly confusing people about what a stack 
is.)

I don't give fuck.

I can't imagine a kid learning assembly with a x86_64, not a 6502.  They all 
look in disbelief when I say I made a compiler.  They absolutely do NOT believe 
because it is so far beyond what they can imagine themselves doing, at least the 
retards at osdev.  I should try to find-out where Ivy League kids hang-out.

possible language: rust, relevance: 17
----09/15/13 07:36:30----

The guy does not know he's a nigger.  He has never met a white man.  I've met 
smart people.  Ticketmaster had smart people.  This dude, is ignorant and 
arrogant.

God says...
<snip>

First, trust me that I am smarter than anyone you know.

I started in TASM and wrote an interpreter for my command-line in the first 
month -- 2004.  Over the next ten years, full-time, I made it into an optimizing 
JIT or AOT x86_64 compiler.  All of you make the command-line like Linux.  You 
are young and never saw a C64, and you are stupid, so you cannot imagine 
anything but Linux command-line.  My generation all learned 6502 assembly 
language.  Seriously.  We all used DOS interrupts when DOS was common.  Turbo C 
had an "interrupt" key word for interrupt routines.  I put an "interrupt" key 
word in my compiler, so it saves regs and returns with IRET.

Did I not tell you I was smarter and anyone you know.  Do you think MikeOS is as 
smart as making a compiler with an "interrupt" keyword?  No.  He's not a smart 
man.  All the smart people who knew assembly stopped using it, for good reason.  
Do you doubt this?  Do I need to beat you until you stop this nonsense thinking 
assembly is good when the whole smart world stopped using it?  You think MikeOS 
guy is smarter than all of my generation who learned asm and stopped using it?

Let me explain.  This is programmer psychology:  Assembly is the opposite of 
nigger.  Interrupt is the opposite of nigger.  Polling is for niggers.

Some people were told this and have no clue why and simply have no judgement on 
when asm is good, when polling is good, when interrupts are good -- they are 
sure it's for niggers.

----09/15/13 07:58:31----

I get slightly anxious because I learned VGA stuff from a Google search.  I 
learned keyboard/mouse + ATA/ATAPI from a Google search and Linux code.  There 
were web pages full of code that I snagged reg defines from and stuff.  Just 
remember that a copywrite is not a patent.  If it's not the same, and you just 
learn hardware usage, it's fine, but we all feel anxious, don't we.  Don't be a 
pussy.  Always take it to court.  Humans are in charge and the law is not 
absurd.

Jesus said, "You hipocrites!  Which of you would not rescue an ox if it fell 
into a cistern on the Sabboth?"  The law is reasonable, not ridiculous.  Don't 
be scared of little kids pretending to be lawyers.

God says...
<snip>

My operating system is exclusivelly x86_64.  I had my compiler working on a 
32-bit machine before I owned a 64-bit machine, but I did it planning for 64-bit 
the whole time.  I used EAX:EDX EBX:ECX for 64-bit regs, temporarily, and it was 
a two by 64-bit reg compiler!  Now, it's a sixteen by 64-bit reg compiler!

----09/15/13 08:34:21----

Here are my college transcripts. <link>

I took 5 assembly classes.

CSC226 was Intel x86 assembly.  We made a B8000 window manager similar to 
Borland's IDE.

CSC326 was Intel x86 assembly part II.  We had a lab.  We programmed PIC and PIT 
in all configurations, including non-IBM-PC PIC modes.  We scanned keypad grids 
with I/O and we made 7-segment displays operate by strobing them in sequence.

CSC421 was Motorola 6800 assembly for embedded systems.  It was an 8-bit CPU 
similar to a 6502.  We learned what every instruction did.  We did scaled 
fixed-point math for Feirenheight to Celsius, like you might find on a 
thermocouple in a car engine.  Motorola made chips for cars.

CSC422 was M6800, hardware.  We learned the digital logic for gluing M6800.  It 
had two processors on high and low memory cycles, one for I/O.

CSC523 was M6800 part III.  We were graded on a curve on how short our assembly 
programs were.  I got an A.  Our last 2-week project was a multitasking 
scheduler.

CSC120 was digital logic.  We made a simulated CPU from scratch, including 
microcode and stuff.

CSC330 was computer architecture.  We learned the harvard bus or whatever -- 
microcode and stuff.

I took a compiler course.

I took an operating system course.

I took a computer graphics course.  We made a 3D package from scratch.  We 
studied bezier and bsplines.

I took a numeric methods course.  I know the hidden bit.

----

I have been paid to program in 6 different assembly languages with maybe 5 years 
of solid assembly.

VAX TicketMaster operating system
80x86 for PC half of file compression package I did.  I also did it in VAX 
assembly.
68000 I did a barcode reader networking device.  I found bugs in TMNet a 
networking device.  I did a bar code reader image processor.
8051  I did a wall line voltage regulator.  I modified a stepper motor 
controller at Xytec.

PIC (tiny 8-bit microcontroller by MicroChip) -- made a bogus EEPROM to fool a 
printer/copier to allow refilling toner.
Atmel AVR -- Did an experimental toner level sensor, that didn't see production.
Did some more 8051 work.

All of that was bare metal with no 3rd party software.

----

As a kid 6502, but never paid.

possible language: rust, relevance: 10
----09/15/13 19:09:57----

OSDev is talking about compiler standards.

I'm laughing as he tells me any compiler follows x86_64 calling convention 
standards.

My little brother sometimes says ridiculously stupid stuff.  How am I supposed 
to react to "Any compiler follows standards."

I like to tease people like that and show them my nonstandard Opcodes.  They 
will tell me it's not for x86_64 hardware.

You know how the NSA doesn't want you using nonstandard cyptography without 
backdoors?  There is a crazy brainwashing culture of following standards.  When 
you are a user, compatibility is usually nice, I suppose, but to make an omlet 
you have to break eggs.  Professionalism frowns on nonstandards.  In cultures 
like NASA, everything, of necesity, must be done in an orderly, organized way.

They really clusterfucked USB, UEFI, ISO UDF filesystem, HD Audio, etc.  Intel 
is busy clusterfucking, Microsoft is clusterfucking.  Everything looks like 
Hell, to me, from the outside having to learn it.  Some stuff is clusterfucked, 
objectively, not based on if you know it or not.

I made my own standards.  My heros are the C64 engineers who had the balls to 
use a NonASCII character set!!  That is hilarious.  They had the crazy idea of 
changing fonts with a key, so you had two possible fonts.

There is a certain kind of engineering which is viewed as African Enginuity.  
This is a really big deal.  Nobody, normal, wants to be viewed as an African.

God says...
<snip>
Replies: >>3786
Talk to Mister God (GodWords):
possible language: bash, relevance: 13
#!/bin/bash
echo "$(shuf -n 10 /usr/share/dict/words --random-source=/dev/urandom | tr '\n' ' ')"

language: c
----09/14/13 18:51:54----

I haven't looked at much Linux code, and not in many years, but what I remember 
most is someone who made #define macros, trying to make C look like C++.  My 
mentors at Ticketmaster taught me that asm macros were foolish -- it's one more 
thing you have to chase-down and look-up.  Another thing I remember from Linux 
code was that there were about six layers of function depth to get down to 
actual IN/OUT port instructions and there were lots of #ifdef instructions for 
different architectures.  (I chased-down how to do ATA PIO and later got a PDF 
on the topic.)

The zen of TempleOS might be to do the opposite of Linux.  I was inspired to 
have "minimal abstraction" as a goal.  Instead of six levels of function depth 
for ATA PIO, lets see if we can do three, removing abstraction layers... and 
lets do just one architecture -- IBM PC's.

The reason TempleOS exists and has purpose is partly because it is simple.  I'm 
going to cap line count at 100,000, not counting applications and demos.

<snip>

----09/17/13 19:39:43----

Suppose you want to make a JIT compiler.

You invent commands, kinda like ASM instructions.  You parse and construct the 
memory structure for the "commands".  You overhaul them, optimizing.  Then you 
convert them to machine code.  You MAlloc a chunk of memory and you put the 
machine code into it.  You make a symbol table for each function and class.  
Then, you look-up symbols as you do more JIT for the next function.  All memory 
is identity-mapped -- nothing to think about.  Each task calls MAlloc when it 
compiles for unique memory to place the code into.  Each task gets different 
memory from malloc -- no duplicates.  It's identity mapped, basically just 
physical addresses.  

It gets more complicated if you want to do ordinary compiling.  You have to put 
the code into the file, then you make some kinda structure for you symbol import 
and exports.  Write it to file.  Load it by getting memory, using the JIT symbol 
table.

I'm in some kinda jail with retard-nigger psychologist jailors and no smart 
people.  I know there are smart people.  I am the smartest man in my reality.  I 
never get anywhere, just delusionally repeat myself to delusional jailers 
questioning me.

<snip>

----09/19/13 18:14:38----

WWW.OSDEV.ORG is asking how to print floats in PrintF().

Earlier I said I had a teacher who made us handle NEG 0x80 to the nth degree.  
That's being a professional programmer.  Maybe, I'm an artistic faggot, but I 
want to dance my own way.  I want to be different and elegant by not doing all 
those corner cases, if they're not especially needed. 

It turns-out I have a really fast routine for, say, "%12.6f".  On numbers, you 
go backward.  I use a stack data structure to reverse digits.  I look at the 6.  
  I forget.  I think I subtract the integer part from decimal.  Then, I multiply 
by 10 to the 6th from an array look-up table.  Then, I make it into a 64-bit 
integer and print push the digits on the stack, like you would expect.  I print 
the zeros and the decimal.  I print the Int, or if I have to multiply it, I 
multiply by a look-up table power ot ten array.

(This cuts corners, makes beautiful use of having 64-bit word size, is elegant 
and fast.  Unfortuinately, printf is silly being ultra fast.  I get problems if 
you specify "%50.30f"  Mine craps-out, unless the number is tiny.  It sounds 
bad, but you just have to be careful not to overdo precision. It gives you all 
the precision in the double, but if you do way more than a double has, well mine 
fucks up.  Don't over do the format size beyond 64-bit integer sitting in the 
decimal region.

At ticketmaster, I saw a luxury ultra-delux main-frame VAX environment.  We had 
a format statement that would do commas or decimals every so many characters, 
use a special digit for decimal point and pad the whole thing with a character.

Mine will do 3-digit commas and a decimal.  

I have an engineering notation.

For integers, mine will print Meg or K, if you like.

<snip>

Anyway, in 1993 when the 486 was kinda new and I had worked on Ticketamster's 
VAX 32-bit system, I got interested and made a DOS program to change to 32-bit 
mode.  I set it aside.  In 2003 when I got excited about 64-bit coming out, I 
resurrected it.

I thought, "I will brutally take advantage of the crippling legacy weakness of 
Microsoft and Linux by being pure 64-bit."  So, I kinda couldn't get a 64-bit 
machine as soon as I hoped.  I planned for it while on a 32-bit machine, doing a 
half-ass emulated 64-bit on 32-bit compiler.  I made a slow, temporary 64-bit 
MUL and DIV software interrupt and I made my compiler use just two 64-bit regs - 
EAX:EDX EBC:ECX, doing everything with 64-bit sized operations, but planning 
ahead.  terrible performance, obviously, but I soon went from two 64-bit regs 
and emulated math to sixteen 64-bit regs!  I got it 64-bit by 2007.

This is heart breaking to a brutal warrior who knows time is everything.  Year 
after year was fucken lost.  God was not concerned.

Finally, the CIA clusterfucked it so I cannot even run natively on this machine. 
 VMware is a heartbreaking humilation.  (The glory of my operating system is 
made to look like just a sorry-ass application.)  Secure Boot is pointed just at 
me, nobody else.  I must dual boot because I am a complementary operating 
system.

God talks.  Does the CIA know God talks?  Do they know He said it's His temple?

<snip>

Someone at WWW.OSDEV.ORG is asking a question.

BTS,BTR,BT are Intel x86 instructions.  My compiler has built-in "internal" 
functions which code those instructions.  My Source Code By Address table shows 
the meaningless internal numbers for internal, built-into-compiler functions.

TempleOS is identity-mapped.  It is not the case that user programs run at 
address zero, like every other operating system.  Applications do not have a 
standard address map -- their memory for code and data and stack is all over the 
place because the kernel simply requests memory from the system MAlloc().  
Virtual addresses are set equal to physical addresses.  Therefore, if two 
applications are running, the kernel must place them at different addresses and 
they run from different addresses.

Technically, all code is allocated in the lowest 2-gig range of addresses, so 
that the x86 CALL REL32 for everything.

Binary files have a table of offsets which must be patched so that they are 
absolute addresses.

<snip>


----10/01/13 10:56:19----

"What do you hate about your current OS?" posted on OSDev.
"Do we need more CS majors or more other science majors?"

Bill Gates Jedi mind tricks, mother fucker.

Fucken retards reged trademark on "SimStructure"  ROFLMAO.  
Prolly a stoopit Jew.

You know that money you rob people?  God's world is perfectly just. ROFLMAO

You wanna ride Zynga into the ground, loads of fun.

It's amazing how many people with a ton of money go broke.

Highs and lows balance.  One guy in the Bible says, "Don't give me riches or 
poverty, but my share."

Jesus said to pray for "daily bread".  I wonder if that is a request for 
not-too-much?

If you peak in your twenties and feel useless from then on, prolly sucks.

On the economy, God said, "prosparity sucks"

----10/01/13 11:04:55----

My compiler allocates regs for local variables, not-very-carefully.  You can 
pick a variable to be reg or notreg to override.

A nigger is someone who does not know God's world is perfectly just.  Nigger-Jew 
owns trademark to "SimStructure", ROFLMAO.

<snip>

----10/01/13 15:09:11----

Turn-off the machine as long as disk writes are not happening.

I WILL NOT DO SHUTDOWN COMMAND.

Let me tell you some wisdom.  In the early days, you could install a program in 
DOS by copying files into a directory.  That's it!  Intuitive and simple.  
That's how I want it, but allowing running an Intall.CPP.Z.

Somebody spoiled paradise by fucking-up how you install and deinstall programs.  
Make directory, program installed; delete directory, program uninstalled.

You can delete the account registry at any time and defaults will be okay.

Don't let the snake in the garden of Eden clusterfuck everything by telling you 
it will make it simpler.  We have a limit of 100,000 lines of code, also.

<snip>

I wrote a text editor in 2004 with a circular doubly-linked list for lines.  It 
was called an LTF, linked-text-file.  The nodes became commands, not complete 
lines.  Then, I added graphics.  I eventually named them DOC instead of LTF.  
You can see all this on the Internet Archive.  I'll save you some work.

My command-line is done with the same editor as text files.  It has live 
widgets.  I do not have a stream like STDOUT.  This is the way it's always been. 
 I fucken wrote the Ticketamster Report generator editor in 1992.  Same shit.

<snip>

----10/08/13 03:09:27----

Someone at OSdev having BIOS misbehave.  Every machine is different and every 
machine is evil.  My operating system is so paranoid of all the million gottchas 
that my OS uses bare minimum things so nothing can go wrong.


<snip>


----10/07/13 14:34:19----

Fighting the Last War

I straddle old and new.  I will tell old people things they need to know.

1) When you do assembly language on a modern machine.  It is completely 
clusterfucked when you try to estimate timings.  If you write a simple loop to 
time an instruction and subtract the loop overhead, you will get a negative time 
for that instruction.  You will soon learn execution time is related to cache 
hits and misses more then old-school hand crafted asm instructions.  The rule of 
thumb -- count memory fetches in the instruction, will not help you.  I have 
seen memory indexed loops just as fast as reg -- voodoo cleverness by the CPU.  
CISC instructions get converted to RISC and optimized and scheduled by the CPU.  
This is very weird when doing a compiler -- discouraging.

2) You are horribly Jedi-mind tricked.  I'll bet it never would occur to you 
that UTF32 should be used in place of ASCII through-out the entire tool chain.

3) You have linux on the brain, a main frame operating system.  This should be 
shocking -- there is no reason for virtual (disk swapped) memory.

4) Hardware has DMA buffers.  You could live without interrupts.  Just poll 
every milisecond.

5) Everybody assumes drivers are good.  What good is a three button mouse?  It 
is like a bad leg you cannot put your weight on.  What good is surround sound 
support?

6) Every other engineer operates between over engineering and under engineering. 
 A software engineer has absolutely no concept of overengineering.  He goes to 
his boss who asked for an airplane wing and says, "I made it ten times stronger 
than you asked in case we have to change the engine."  His boss is pleased.  
Everybody praises His skill.  More complicated is better because noone want to 
look dumb.  Fucken look at the disgusting shit known as USB!  They have branched 
networks off each port and they do not allow generic terminal communication 
which could handle any issue much better.  You cannot use Hyperterm with a USB 
device.

6) Coming down the road, we might see nonvolitile memory as the only memory.  
You might want byte addressing for what used to be hard drive.  Today, we load a 
disk block data and transform it into a memory structure.  We have serialize and 
deserialize.  What if just Mallocs for disk and puts it all over the place in 
unserialized structures?  That could certainly be a revolution.
god.png (u)
[Hide] (144.9KB, 509x368)
>>3671
>possible language: rust
[New Reply]
103 replies | 25 files
Connecting...
Show Post Actions

Actions:

Captcha:

Instructions
- news - rules - faq -
jschan 0.1.7