What is this project about?When you just got started with Linux, there are a lot of commands to learn and we often got them wrong which is frustrating, infuriating sometimes, so I made this The Fuxk Button to send a "fxxx" command which trigger a fantastic tool to help us correct our previous console command, and it's totally DIY-able and open sourceDemo VideoBackground StoryI have stumbled upon a FANTASTIC project --TheFuck when I just started learning Linux and the "notoriously"-hard-to-remember Linux commands and I immediately fell for it, because it makes learning Linux commands a LOT easier -- In fact, with this tool, you don't even have to remember all the commands name and usage, just anyhow type in a command and then type "fuck" followed by Enter and TheFuck will take a guess what you want to do and gives you suggestions or corrects what you typed wrong -- both literally and syntactically for you.For example,? apt-get install vim
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
? fuck
sudo apt-get install vim [enter/↑/↓/ctrl+c]
[sudo] password for nvbn:
Reading package lists... Done
...
Another example? git push
fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin master
? fuck
git push --set-upstream origin master [enter/↑/↓/ctrl+c]
Counting objects: 9, done.
...
That's no wonder it is ranked top 52 most starred Github repositories according to GitStar.But I took this project a bit further and create a button that you can smash and release your stress while type in the fuck command for you XDHow it worksIt uses BW16 (Realtek RTL8720DN) dev board which emulates a Bluetooth HID keyboard and a enconder (you can replace it with a push button if you like), so whenever you hit the button, BW16 will help you key in the "fuck" command and follows with a Enter, this way it triggers the TheFuck tool installed in your Linux $PATH and solve your problem for you. The project is a WIP one and I plan to replace BW16 dev board with a smaller module to make the button even smaller, then add battery to make it completely wireless (now the USB cable is to supply power only).DownloadsBoth code and hardware designs can be found and downloaded from Github athttps://github.com/xidameng/TheFuxkButton