12 December 2016

The stupid chit-chat around and how to fix it (for people that prefer reality than some herp-derp)

     Yeah, it seems this just landed on linux world.....    
     At first, only people in MacOS and Windows have some sort of mental illness about "NO, YOU DON'T NEED TO DO ANYTHING, THE ENTIRE OS IS JUST OPTIMIZED FOR YOUR NEEDS, IT WORKS IN THIS WAY". Now this starting to land on linux, so let's get started.

1. It's useless to compile, it's a waste of cpu cycles.

     I see someone in #archlinux saying that. Uh.. your cpu have limited cpu cycles? Can you count that? So you're economizing cpu cycles for the future? Do you know how stupid this sounds? 
     It's starting to be more and more common jerks saying that, so ignore completely. Someone that says this doesn't really have the solution for what you're searching for.

2. You can't optimize compiling, only coding.

     This one was said by an OP in #ubuntu-br. Fancy uh? When you see an OP in freenode, you usually expect people with the better knowledge there and capability to help, but it's seems isn't like that happens there. Well.. We know how freenode works, right? 
     Yes, you CAN optimize, no matter how you're trying to convince someone that this isn't possible, but you're wrong and you can cry all night long if you want. Of course there's issues: Optimization isn't magic, specially in OS level, it's a big set of stuff that MUST be done together to have visible optimizations, for example, if you just compile xorg, it'll not be faster or probably you'll not even notice. If you made an entire system with custom cflags for your processor, file systems optimized, elevators sets and everything else, the OS have a high chance to be faster than any other binary distribution.  
     If you're still verbiaging about that, do a favor to all of us: https://gcc.gnu.org/onlinedocs/  
     Similar to this subject, is the bullshit about "hurrr gentoo is wasting of time". Well if your computer takes days to make a desktop usable, you should update your desktop to something newer than a pentium4, you know? And also, saying that "you can't have more than 1% of performance" only shows your lack of knowledge about a source-based distro. ONE (and just ONE) of the points of using a source-based is the ability of optimizing in compile-time, gentoo have this advantage but have many others like USE flags. Next time, go read something instead of bullshiting something you don't have a clue out there.

3. IoT isn't interesting because I can emulate all my emulators better in my PC

     IoT devices aren't dedicated emulation stations. IoT devices doesn't the solely purpose to be an emulation console. IoT devices are lowpower machines capable to a lot of things, specially in some scenarios like weather stations using solar power. It's like saying that arduino only serves to robotics. IoT is a good lowpower machine, with GPIO and capable of lot of things that ALSO HAVE the option to turn into a dedicated emulation station, so stop saying this crap.

4. If you have a lot of RAM, you don't need swap.

     When your machine starting having issues, you'll cry right? Swap isn't "a place to be occupied when your RAM is full", swap was never have this solely function and probably will never be (it probably will use it IF you get your RAM really filled, but this is an emergency situation). Swap is used for a lot of different scenarios, and even your filesystem use it from time to time (specially in x86 machines). If you really want to do in the right way, you have to figure out this:

vm.swappiness = 20 # Increase or decrease the swap footprint, making less use of swap but still having his features. The best value for more than 16Gb of ram is 10, but it's better to test yourself what fits you better.
vm.dirty.ratio = xx # The maximum amount of system memory that can be filled with dirty pages before everything must get committed to disk. When the system gets to this point all new I/O blocks until dirty pages have been written to disk. This is often the source of long I/O pauses, but is a safeguard against too much data being cached unsafely in memory. 
vm.dirty_background_ratio = xx # Percentage of system memory that can be filled with memory pages that still need to be written to disk before the pdflush/flush/kdmflush background processes kick in to write it to disk. It's up to you and your computer usage.
vm_dirty_expire_centisecs = xx # How long something can be in cache before it needs to be written. When the pdflush/flush/kdmflush processes kick in they will check to see how old a dirty page is, and if it’s older than this value it’ll be written asynchronously to disk. Since holding a dirty page in memory is unsafe this is also a safeguard against data loss.
vm.dirty_writeback_centisecs = xx # How often the pdflush/flush/kdmflush processes wake up and check to see if work needs to be done.

    You can use a ramdisk for that, (if you're short in ram, this will kill the purpose). You can use a ramdisk with 256Mb or more and use for swap, but remember to always have the footprint low or you'll be sorry if something happens (specially using xfs).

5. FAT32 doesn't need journal because they sync automatically from time to time and have an R/O flag when the writing is done

     From freenode. And this is the most dumb thing I ever read in my entire life about any filesystems.
     If you really want to protect a fat32 from damage and mounting at boot (like the EFI partition), just use sync option in fstab and you're good to go (unless you do a lot of mess all the time inside the EFI to make a chance of risk of break a sync filesystem, you're really special).

6. I don't have any privacy concerns about windows 10 because I don't have anything to hide

     This is hideous and sad. It's not about having something to hide you sick fuck, it's not about being a criminal or having some illegal in your harddrive. This doesn't mean that any jackass company have the right to spy on EVERYTHING YOU DO. Or even worse if you think in man-in-the-middle scenarios (anything can create a bug making man-in-the-middle possible, a lib, a software, ANYTHING).

     If you need to use windows 10 for whatever reason and you're not mentally disabled and want to stop microsoft to messing up your privacy, use my post.
7. OMG he's an idiot, he doesn't like systemd

     Yeah, this one is not getting old...
     First of all: systemd sucks, yes... sucks... It works, of course. There's tools available for maintenance, using services and all the fancy stuff that all other init systems have, it'll work as expected, but it's ugly as hell. You can't deny that is a bad implementation, but not bad about not working correctly (well.. every single software have bugs, systemd will have it, as usual).  Binary logs is a shame (I had different scenarios of entire logs being corrupted and not able to fix it to see what happened), the format of controling of services are even uglier, but it works.
     "Oh but it controls everything, it's a single service that do everything", like busybox? :P

22 November 2016

There's no social media anymore

     Yeah, the title is just right, there's no social media anymore, now we have the monetizing everything, like my other post.
     No, it's not only this, now we can see that most consultants of the most social websites have issues to understand simple things AT ALL. Let's get straight, when you access a social media, you have your TIMELINE, its called timeline for a reason, its ordered by time the posts, so when you open your mobile app, you're supposed to be at the last post you stopped and continue reading until you reach the last one, right? RIGHT? No, they don't think in this straight line...
     Most social media sites now ordered by whatever comes to his minds. Facebook forces you most of time to read the "top stories" that use a random trollercoaster way to order the posts that makes no sense at all, but they think its good for you, specially if with lots of posts that you already read and missing a lot of other posts you missed it. So you choose to order the news feed (they call news feed a timeline filled with idiocity, crap and many other lies) by most recent, but still not the most recent, you'll miss a lot of posts anyway. And ads.. oh the facebook ads... some days you'll even have 1 ad per 2 posts. If you try to mark that ad isn't relevant to you, they'll show you even more random ads, and some even had malware. Congratulations.
     Twitter have his own dumb issues, for example, "you might like". For fucks sake, if I want something that "I might like", perhaps "I MIGHT SEARCH SOMETHING I WANT", and this will be offered to you in daily basis! At fist was something really related to your posts and posts you follow, now they offer ads in the middle of this crap. And it's not done yet, in hourly basis or if you close the damn tab for some time, they'll show you what happened "while you're away". FFS isn't a timeline? If I want to see what's happened while I was away, perhaps something is blocking me to scroll down? And about the ads, they have the same issues than facebook, offering even malware to you. 
     G+ was my prefered social media for everything, now Google Plus is messing in his own way too. There's no ads but theres no timeline anymore, everything is messed up like twitter and facebook. If you use a domain... well... you know that google doesn't want you to use your own domain right? Everytime you want to post or make a comment, G+ will warning you that you're posting outside your domain, and no, there's no switch to turn this crap off. Oh, if you use play store, you know that if you want to change your credit card, you have to mail a google admin to do that for you right? "Because it's dangerous, your admin can get your credit card", they'll even say the same crap if you even prove that YOU are the owner of the damn domain. Makes sense for you? Well.. it seems that makes sense for them.
     Now we see how the internet was just borked, monetizating everywhere (with people saying that you're immoral for blocking annoying ads and popup) and people with 0 knowledge making stuff happening. Yes, ZERO knowledge, who the fuck will say that is nice for you have a timeline based on /dev/random? 

03 October 2016

The new age of webspam

     I've started using internet and related with BBS and the advent of www let me get a lot of stuff like tablatures and sheet for music, at start was quite ok to search this type of stuff without any harm. After some years, they discovered how to monetize and at this moment, there's no browser with anti-popup and tabs, so... the hell came to the internet, with his brothers: harmful ads, popups with trojans and a shitload of terrible staff. Well.. years passed, browsers had a way to make tabs, blocking annoying popups, etc.
    Now we are at 2016, and this time came back, and now is stronger than ever and theres a shitload of stupid dumb people that will defend this practice and even call you an "ignorant" or "immoral" because you choose ways to prevent this type of practice.
     As developer/curious/tester, I use to get apps or roms on xda and many other site to test things to sort out (specially with VR, there's a lot of indie stuff out there). Even some developers post games and software in reliable sites that you can test and even get some ideas, but now the problem: EVERYONE WANT TO MONETIZE EVERYTHING! Welcome to the internet whorehouse.
     So, lets make a scenario: I want to download a rom for a <put the name of cellphone here> to just having fun, testing or whatever reason. So you go to the thread, click on the link to download but WAIT, that's not the download yet. It'll open a link in ad.fly, that you make you wait 5 seconds while some dumb propaganda shows up and meanwhile you close a popup, then you click on continue, a new popup will open, so you choose to close the popup and go back to the site and guess what? There's another monetizing site, so you have to repeat all the steps I said above. If you're lucky, the FUCKER use only two monetizing sites, sometimes they use even 4 or 5 monetizing sites one inside the other. A good example of this is the free pdf/mobi sites (there's a bunch out there with reliable free documents, no warez at all), they'll do this to you, and they'll do bad.
    So the people choose to monetize this crap instead of getting a job? Really? I see this happening year after year and it's getting worse! There's a lot well known sites with well known audience and getting a well known shitload of money and even so, they'll block you if you're using an adblock. News sites are getting worse every time they discover a way to annoy you: I can't use even a RSS Feed anymore without blocking fucking html5, because the dumbfuck discovered that can send you A DAMN VIDEO inside the feed, so it'll play a random crap when you're reading. Who the hell is supposed to like something playing out loud when you're trying to read? So if you choose to go to the site instead of using the RSS Feeder, you're even more fucked than before, because you'll have a lot of propaganda and probably two videos playing at the same time. And of course, you're forced to love this type of practice or the site will not let you read the article, because fuck you.
     Remember idiocracy? Well then, this is your computer screen in some years.


31 August 2016

PS Vita Memory Card issue

Suddenly my 32Gb card on PS-Vita just messed up for some sort of reason.
If you're here, then I don't need to say that this solution will erase everything inside your Vita.


  • Card doesn't detect at all, even restoring the defaults
  • If you try to format inside the settings, it'll give you an error C2-12828-1 (AFAIK, it's a pretty much an old windows GPF, thanks for nothing, Sony).
  • Even reformating the entire device, doesn't fix it.


  1. Enter in SAFE MODE (turn off the device, press power+PS button+R Trigger for some seconds).
  2. Format Memory Card (it will restart the device).
  3. Enter in SAFE MODE again, Restore the PS Vita, it will restart again.
  4. Enter in SAFE MODE for the last time and rebuild the database.

27 July 2016

Git Repository (Updated)

I have a repository with some experiments and useful stuff (for the braves).

It's a collection of proprietary blobs that I use on some of my tests/ports. Useful if you own one of those devices and want to port some rom or try some obscure stuff with the related hardware.

Not populated (yet) because I'm lazy.

That's a collection of UEFI firmwares (or bios files, if you're stuck in the past), DSDT (fixed and original ones) and many other things related to UEFI platform.
I've organized the directories to have the original UEFI firmware and my updated one, to be easy to identify. The updated one's have the last upgrades and fixes available for the related hardware on the pertinent motherboards (since the manufacturers doesn't give a crap to update their hardware firmware properly and fix dreadful bugs).
It's well assembled and tested by me. Works for me (doesn't mean that will work for you, so if you make a gamma ray generator using one of my custom firmwares, you're at your own).

Have fun and as well, depending on my free time, I accept patches and/or requests.

Proprietary ATI/NVIDIA + UEFI = Personal Nightmare, thanks to ATI/NVIDIA

Nah, don't come saying "omg just use bios!". UEFI is light-years better than bios with a lot of reasons (I will not enter in this details here, you can search yourself).
This isn't a real howto, is more like a safeboat.
The Problem:
Everybody knows the problems of proprietary drivers in linux, and everybody knows how sweet those companies are about that. They think someone will stole a chip idea just looking to the fucking source code of a fucking driver (well, I don't see any other reason to be less stupid than that). Well, isn't only the fact that those closed-source drivers have compatibility issues, they're broken, incomplete and incompatible MOST of time.
For example, why the binary drivers doesn't work with a lot of type of configurations? Because "fuck you" - ATI/NVIDIA says. Why the binary drivers doesn't work with EFI framebuffer, since is something that just cames from the firmware? Because "fuck you" - ATI/NVIDIA says. Really? Incompatible with EFIFB? So huge companies like ATI and NVIDIA aren't capable to make a fucking less-retarded driver that works with the goddamit EFIFB that is so common than textmode?
The Solution:
Eh.. there's no solution...Well.. sort of...
1) Making two different kernels
This is the most secure and easy way.
Make the first kernel without any framebuffer, with a different name (you know how to customize your kernel name, right?), so you can enter in single mode if something happens. Another one without any framebuffer, with your binary driver proper installed. I have this configuration in my funtoo install without any issue. However, you'll need a different approach if you use CloverEFI instead of rEFInd (nothing to hard to deal, if you're here already).
2) Don't use EFIFB at all
It's quite dangerous if something happens. But still, you can make a pendrive (or use a sdcard with at least 128Mb of space and configure some bootloader to deal nomodeset in case of some emergency).
3) Don't use proprietary drivers
Disregard the problems of proprietary drivers, the opensource drivers aren't well to use in regular basis (Yet? YET?). But the choice is yours.
1) You don't need a bootloader if you use rEFInd or CloverUEFI. Learn about EFISTUB. You can even pass a kernel cmdline using EFISTUB, but isn't necessary since rEFInd and CloverUEFI can pass kernel cmdline without any problem at all (I use rEFInd+EFISTUB with initram incorporated to vmlinuz+LVM).
2) The ATI/NVIDIA drivers make your life harder as hell when you want to use EFI.Apple devices with nvidia cards doesn't have this problem because their EFIFB ARE NvidiaFBs, no big deal. Same for some IBM devices I did some research (of course I didn't use a proprietary driver on a server). Don't know about motherboards with native ATI/NVIDIA, also don't know about notebooks with discrete cards (my notebook with a nvidia card doesn't have EFI, unfortunately).
3) I've already tried to trick using CloverUEFI and even modifying my firmware and SMBIOS. It doesn't work anyways.
4) There's some options for the kernel change on-the-fly the framebuffers drivers from EFI to any some others drivers to make a more "native" approach, mysteriously those two big companies are not able to achieve this (efifb can change on-the-fly to nouveau, nuff said).

Update 20170515: They work now, you can use efifb+proprietary drivers, don't know exactly who had the problem atm.

16 June 2016

The retarded windows 10 auto-download software (Updated: 2017-09-06)

Now the new "feature" of windows 10 is automatic download to your computer. There's a shitload of CRAP that microsoft decided to push into your windows without your consent. And guess what? If you uninstall, they'll install again and again!
All the extra uninstalable crap in windows 10 isn't enough, microsoft? WTF?

Well then, just stop with this nonsense, open regedit and go to this key: (Do this one and continue reading):


Create a new 32-bit DWORD value named DisableWindowsConsumerFeatures and set its value data to 1

Or use this with an administrative prompt:

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CloudContent" /v DisableWindowsConsumerFeatures /d 1 /t REG_DWORD /f

Source: WinAreo

Update: Microsoft just updated the way the send you spam apps. Wonderful! Now the last register alone can't stop the spam. Here the other ones you need to change:

reg add “HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager” /v “ContentDeliveryAllowed” /t REG_DWORD /d “0” /f

reg add “HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager” /v “OemPreInstalledAppsEnabled” /t REG_DWORD /d “0” /f
reg add “HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager” /v “PreInstalledAppsEnabled” /t REG_DWORD /d “0” /f
reg add “HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager” /v “PreInstalledAppsEverEnabled” /t REG_DWORD /d “0” /f
reg add “HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager” /v “SilentInstalledAppsEnabled” /t REG_DWORD /d “0” /f
reg add “HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager” /v “SubscribedContentEnabled” /t REG_DWORD /d “0” /f
reg delete “HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager\SuggestedApps” /f

If doing this still doesn't work, try this. Some new updates will call just "Microsoft Content" is the same "Spotlight" in the link.

22 May 2016

The HELL of automatic keyboards on Windows (8, 8.1, 10, and probably the next versions)

     Probably everyone in the same situation are thinking about this crap...

     Actually, I have a Toshiba Qosmio with a windows machine and after the "free" upgrade to windows 10, I see that even my notebook with a US-English Windows, US-English Keyboard, and yes US configurations for everything, give me automatic keyboards because I'm in Brazil (WTF?). Not sufficient, that's a ridiculous arbitrary retarded feature, because he gives not one, but, FOUR LAYOUTS!! WTF? (US, US-English, ABNT, ABNT2). And guess what? He changes from one to another automagically, just to mess up your work, your brains, your life and everything else, because yeah, you're using windows so fuck you!
     After mining google, someone had the solution here.

     Simply change this thing on registry (because windows doesn't want to give you an option to change THIS SIMPLE THING):

Disable the obnoxious "Auto Detect Keyboard Layout":


Administrative command version:

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard\Layout" /v IgnoreRemoteKeyboardLayout /d 1 /t REG_DWORD /f

If the language crapbar still shows, use this DWORD:


Administrative command version:

reg add "HKEY_CURRRENT_USER\Software\Microsoft\CTF\LangBar" /v ShowStatus /d 3 /t REG_DWORD /f

Update 2020-06-10: There's a more complete solution here.

01 April 2016

Accessing Ubuntu VM using putty giving an error

     After update my ubuntu virtual machine, I see ssh stopped working for me and /var/log/auth.log show me this error:

Apr  1 09:17:50 ubuntuVM sshd[1638]: error: Hm, kex protocol error: type 30 seq 1 [preauth]

    If I try to connect from another linux machine or from localhost, it's fine. So after researching, I see the problem is the goddamit putty. So, it seems putty will not be fixed in the nearly future (and I don't know how bad this is for security, but I was in a hurry to access the machine via putty), so move the Diffie-hellman group exchange to the bottom (where is "warn below here"'):