Hello, fellow Soylentils! Please come into my journal, as we prepare to discuss the pertinent issues of our times.
Two issues: Toxic posters. As much as I love Ethanol_Fueled, his charm, such as it is, wears of rather quickly. But he is a prince compared to gweg_troll, the single (if that)-minded racist who is oh so concerned about all rational people modding him down because he is, in fact, indubitubly, a racist. But there is still worse, my fellow Soylentils, MikeeUSA, the wanna be rapist of children, really need to be, well, exiled from our community. I suggest multiple SPAM mods, IP banning, and &*%*%$#$($@%#$^$&*/.
Part of what makes the internet such a tool for progressive politics is that it allows the recidivists to come out and state their positions. Yes, the fact that African Americans commit more crime per capita proves, well, that correlation is not causation. Poor people commit more crime, and African Americans tend to be in that demographic. Gee! I wonder why? See, it's %*^*^%&$&%s racism that creates the conditions that confirm racism. Boy, are you racists stupid! Ever read (excuse me for accusing you of being literate) Huck Finn? Jim was better man that any of you wannabe crackers could ever be.
Second, (notice I actually skipped Eth? That is because he is asleep on a mattress of dubious provenance right now) I want to see MikeeUSA on the Sex Offender Registry, because if he is not already on it, he definitely will be soon. This is one seriously sick person, one of those that cannot be cured by any know psychotherapy or time behind bars. So we, and the rest of the internet, need to find him, identify him to the authorities, and have him put into protective custody. I do not make this demand lightly, I know that Mighty Buzzard and others will defend personal rights to a point, but not to this point. The Bible says, "Blessed are the peace-makers". Never does it say, "blessed are the perverted pedofiles who quote the Old Testament". See?
So there is my "nice" journal, discussing pleasant topic which all might engage at their leisure. And we will just have to accept that modding has a clear "reality" bias, because, as Stephan Colbert put it,"reality has a clear liberal bias". So, as the great! Philosopher Hegel said, "reality's bias is just reality, so it's not a bias at all."
I have a friend named Jamie. She's in her 40s, and she might go to prison for four years on the 23rd of this month.
She had a DUI from 2012, which she was guilty of, and one from 2014, which she was not. Because of her prior conviction, she's getting a much harder time by the courts. She's been offered the choice of signing for four years of prison, or taking it to trial and possibly getting 10 years if found guilty. She's a mother with two sweet, young little girls. She won't get to see them for four years. They're going to end up with her mother in Idaho.
She let a friend drive her truck, who was sober, but because she was next to the truck drinking shortly after it parked, she was hit with another DUI when the cops pulled up over a domestic disturbance, which is common here. Her friend already told that she was not the one behind the wheel, but it doesn't seem to make much difference.
Here's where it bothers me. She is innocent, and she's being given the choice of admitting to a crime she didn't commit and getting four years, or fighting it, possibly losing, and getting ten years.
This is disgusting to me.
I'm writing this, I suppose, to ask for advice. How can I help her?
Time is of the essence.
I've started work (and nearing completion) on a new Linux distro for i586 and up with 64MB of RAM. It's called Night Linux. The origin of the name is a topic for another day.
Night Linux is a small, ~20MB CLI only distro intended for system rescue/utility purposes.
It's the kind of thing you make bootable on your MP3 player to keep with you in a pinch.
Among its features are: Epoch Init System, elinks browser, ircii IRC client, support for mounting and creating/repairing EXT2/3/4, BTRFS, NTFS, and FAT12/16/32 filesystems, ms-sys to repair Windows boot records, GNU parted, syslinux/extlinux along with MBRs in /usr/lib/syslinux for bootloaders, Bricktick brick breaker game, busybox userland, bash 4.3.x, nano editor, OpenSSH, squashfs tools, and more.
Night Linux is based on bleeding edge code with a 3.19 kernel and glibc 2.21.
I haven't published source yet, (waiting to create a project page) but if you want it, I'll provide it upon request.
Get the first alpha here: https://www.dropbox.com/s/9h3wa5ylczjrrt7/NightLinux-Alpha1.i586.iso?dl=1
Feedback welcome.
As of late I've spent some time making improvements to my tiny C string library called SubStrings. There are other string solutions, but those either involve a language such as C++, or they try and create a new string type with a struct or something. In many of my programs, there is a huge amount of text processing. One might say more than you should generally attempt in C. It's not a big problem for me actually. It's becoming even less of a problem since I made my pet projects use SubStrings. As I said, I've recently updated it, but I've added a ton of new functions and features. I've updated aqu4bot to make use of these improvements where available.
Take this example of trying to iterate through lines of text stored in a string in memory
This was extracted from aqu4bot BEFORE I updated to use the new SubStrings functions.
It iterates through each line and forwards them to an IRC user.
Worker = InBuf;
do
{
while (*Worker == '\r' || *Worker == '\n') ++Worker;if (*Worker == '\0') break;
for (TInc = 0; Worker[TInc] != '\n' && Worker[TInc] != '\r' && Worker[TInc] != '\0' && TInc < sizeof LineBuf - 1; ++TInc)
{
LineBuf[TInc] = Worker[TInc];
}
LineBuf[TInc] = '\0';IRC_Message(SendTo, LineBuf);
} while ((Worker = strpbrk(Worker, "\r\n")));
Hideous, yes?
Thanks to SubStrings, I can shorten it to this:
Worker = InBuf;
while (SubStrings.Line.GetLine(LineBuf, sizeof LineBuf, (const char**)&Worker))
{
IRC_Message(SendTo, LineBuf);
}
I'll be sifting through aqu4bot's code and updating other components that rely on deranged gerbil magic to get strings to work properly. I'll also be working on SubStrings more.
So far, SubStrings is:
* C89/ANSI with no extensions/platform specific stuff
* Doesn't use ANY library functions, meaning you could build it into your bootloader to make text processing easier.
* Uses a pseudo-OOP function pointer based system for getting functions.
* Is small enough to painlessly be embedded in larger source trees.
* Is public domain (unlicense) software, making it pretty much license neutral.
This should encourage me to add new features to aqu4bot, including making good on my threat of using libcurl to build in email support. Why? Because fuck you.
Begun, this grand experiment is. We have had some whose feefees were hurt by moderation, which is strange, since moderation should be by definition moderate, or at least moderating. But maybe we have the opposite effect occurring. Not to say that the extreme views are prevailing, but the noise to signal ratio seems to be increasing. I must confess, bear with me here, that I actually used the "disagree" mod, to disagree with someone objecting to the "disagree" mod. Perverse, yes. Uncalled for? I think not! Mod me the same if you disagree!
But all this belies the dysfunctional state of debate (or the more polite term, discourse) in America. Yes, I specify America, as in the United States of, because of the rank corruption of political discourse by the one percent, combined with a uniquely American anti-intellectualism that discounts scholarship, research, learning, schools, teachers, and basically anything that requires some effort to understand. Americans are lazy. Unfortunately, they have added scared to the repertoire. But I assume that Soylent News includes more than cowardly Americans who have to run of to former Russian Colonies.
So, topic of the day: Faith. Do you believe that free and unfettered argument will get us all closer to the actual truth? Or do you reject the same because of the possibility that your position will lose the debate?
So I released the first update release for 1.2 series. It's a very small update, it fixes a bug that pissed me off and it adds support for something I wanted to get into 1.2.0.
The bug: There was a problem caused by dunce syndrome where the time for shutdown commands had extra or too few zeroes, caused by a tired coding problem.
The feature: Now the 'epoch status', 'epoch start', 'epoch restart', 'epoch stop', and 'epoch reload' commands can have multiple service names specified at once. That means instead of 'epoch restart aqu4bot;epoch restart aqu4bot_soy', now I can just do 'epoch restart aqu4bot aqu4bot_soy'. Saves a bit of typing if you have a big list of services you want to apply the same action to. The method I used to implement this for 'epoch status' is hideous and is ironic considering the goals of 1.2 Peroxide, but it works and it's not buggy or anything.
Those are literally the only changes in this release.
The 1.x.1 releases tend to be little bitty bugfixes and stuff.
Anyone that has used the login from the main page using the login dialog at the top-right will be silently surprised with the login being done using https but once completed it will switch to http. And thus dump your username association with your IP-address along with the session cookie for all three letter organizations to grab. Or your local hackers to abuse for impersonation.
There's a workaround for this. Simple go to any article from the main page. Click on the [Reply] link right underneath the article text. If you are not logged in ie missing session cookie. A login dialog will be added to your comment reply dialog. Just fill in username and password and click [Preview]. Viola.. logged in!
And don't forget ONE mistake on revealing your username association with IP, browser header etc.. It's there for a eternity or something bad happens to some harddisk racks in a certain location..
Happy SSL login to you! ;-)
So, I've pushed out the final version of the Epoch Init System 1.2.0 "Peroxide". It's mostly a bugfix release and cleans up most of the nasty code in Epoch. Here's the tarball: http://universe2.us/epoch_1.2.0.tar.gz
I probably could have done more to it, but I wanted to just finish and get the release out so I could roll an update for my personal distro with the new version of Epoch in it. Nonetheless, this release should be pretty stable and is a recommended update. It is safe to update 1.0 and 1.1 releases to 1.2.0 without rebooting. Replace the 'epoch' binary with the new version and then run 'epoch reexec'. Check /var/log/system.log and it should tell you that you've been updated to 1.2.0. NOTE: if you do NOT run 'epoch reexec' after replacing the binary, your root filesystem will not be able to be remounted read-only on system shutdown and that could lead to data loss.
There is no good reason I can think of that you would not want to run 'epoch reexec'.
Here is a list of changes:
Changes since 1.1.1:
* Cleaned up a huge amount of code that was just fugly as hell. This is the big change.
* Removed unsigned long abuse caused by my (at the time) severe OCD.
* New service status output format. Looks cleaner.
* Extremely deprecated AlignStatusReports attribute completely removed. I doubt even one person will be affected by this.
* Add three new attributes: StartingStatusFormat, FinishedStatusFormat, and
StatusNames to manually specify an alternate service status output format.
* Specific bugfixes:
* Don't set a config problem check to WARNING after we already found a FAILURE.
* Fix overwriting service messages, caused by our old status format.
* Fix inaccurate reporting of scheduled shutdown times, now report seconds too.