Thursday, April 4, 2013

Create Symbolic Links in Ubuntu

The 2 types of links are hard links and soft links .

A hard link is essentially a file with multiple names, there are multiple copies of the file. So that if one of the hard links is deleted, the file persists to exist.

A soft link (also called symlink or symbolic link) is a file system entry that points to the file name and location. Deleting the symbolic link does not remove the original file. If, however, the file to which the soft link points is removed, the soft link stops working, it is broken.

Symbolic links can be created both from the terminal and from nautilus (file manager, GUI). 
 

Terminal

 

The syntax for creating a symbolic link is,
ln -s target source
where,
  • target - The existing file/directory you would like to link TO.
  • source - The file/folder to be created, copying the contents of the target. The LINK itself.
For more help see ln --help

Example:
ln -s /home/nargren/Pictures /home/nargren/Pictures_Backup
This would create a symbolic link directory called "Pictures_Backup" to my "Pictures" directory. All the content in either of the 2 directories would appear in the other one as well.

GUI

 

You can easily create a symbolic link to a folder or file by middle clicking on the folder with the mouse and dragging it to its new location, while holding the middle mouse button.

Remove Symbolic Links

 

To remove a symbolic link, be it a file or directory, simply remove the created link. This can be done either through nautilus (GUI) or using the rm and rm -f commands in the terminal.

Use of Symbolic Links

 

Symbolic links are especially useful on computers with dual-boot, running for example Windows and Linux. As symbolic links can be created across partitions and file systems, windows folders can be linked to appropriate Ubuntu folders.

I will bring my own example of using Mozilla Thunderbird as e-mail client. I would like to have my emails and profiles available, including all my downloaded emails on both operating systems. This could be done either by downloading all new e-mails when I start the software on any of the two operating systems, or via symbolic links. As I had problems downloading new emails with multiple clients, I have chosen to make a symbolic link.

I have linked my Windows
[USER]\AppData\Roaming\Thunderbird
 folder to the Ubuntu directory
 home/.thunderbird
This allowed me to download my emails only once and have them available on both Windows and Linux while keeping my entire profile.

Tuesday, February 19, 2013

Ubuntu tablet

Earlier today Ubuntu tablet was announced. 



The brief promo video shows how fast the OS works on a tablet computer. Seamless change between applications and stunning multi task experience. Head over to Ubuntu.com to learn more!

The user interface looks mostly identical to that of the Ubuntu phone, hence the "unity", uniformity across devices. The same simple and fast interface on a larger screen allowing you to use both hands or watch videos, view and edit images or video chat with friends. Very nice first impression with the extremely fast and responsive system. I have used android tablets before, but this seems like a new user experience. I like the layout, the controls and the full utilization of the screen.

Just like in the case of the Ubuntu phone, I really hope that the tablet can run a terminal as well.

To learn more about functions and features read my post about the Ubuntu Phone and watch the video above. Don't forget to check out Ubuntu.com either!

Wednesday, January 23, 2013

Ubuntu Phone

If you are fan of Linux and Ubuntu just like I am, then there is some good news. Canonical is expanding the world's favorite linux-based operating system to smartphones, hence Ubuntu phone.


Watch the industry proposition with Mark Shuttleworth (founder of Canonical), talking about the latest achivements and introducing Ubuntu phone.


And a little hands-on review at CES2013 with Engadget, see Ubuntu in action.

 

Mobile Operating Systems

For the past years Android and iOS have been competing with each other and the users didn't have much a choice, it was either or (unfortunately RIM's BlackBerry OS is declining, although it is a very nice platform, and Symbian is almost totally disappeared). It is no secret that back in the day when the first iPhone came out it was aimed at the everyday customers who needed ease of use above all. Then came Android, the open-source system that has filled in the gap created by the very restricted iPhone and has experienced exponential growth and is still expanding. Both systems are user-friendly and preference over one or the other is purely a personal matter.
Then came Windows phone that has brought competition into the battle between the two major systems. It has received positive reviews and indeed is a very nice platform that is responsive and easy to use.
Canonical's Ubuntu however, will surely be a game changer and bring another refreshment in the field. They have taken their time and learned through the years to finally come up with a brilliant system, that is different from what we have seen so far from any mobile operating systems.
For those who have used Ubuntu before, many features will look familiar like the Unity interface, but those who are new to the operating system should not worry either as it is a very clean and pleasant user experience.

 

Use 100% Of Your Screen

On a desktop machine place (in terms of display) is not an issue - especially in Linux where you can have multiple virtual desktops providing almost unlimited space for a range of programs - on a phone however it is crucial. Screen size is limited to a few inches and although Android tries to utilize this place - similarly to Linux - with multiple home pages, the menu elements and application features are often taking away a large percent of the already small available place. Ubuntu will bring a huge change in this field as all 4 edges of the screen will have different tasks assigned to them and also offers to hide the menu by default and show it only when necessary.
Use the full capacity of the screen, open menus only when needed (Ubuntu.com)

A touch on the left edge of the screen will show the most recently used applications that allows to quickly launch what you need. No more going to home screen, scrolling through apps until you find what you need, no. It is just 1 touch away. Alternatively if you make a faster swipe from the left you will be presented to the home page where your currently running applications are show along with the installed as well as downloadable applications. Everything in one place, to let you use what you need and not look for it.

The top of the screen holds the different status icons like signal, battery life, messages and volume which is common on the smartphone operating systems. However Ubuntu allows you to directly access these by simply touching them and pulling the menu down. No mater what are you doing on your phone, these settings are available any time without interrupting you. Messages are the same. All messages are accessible from the top of the display while using any other application. Without the need to close or change the application or go back to the menu and look for the messages.
Touching the bottom of the screen brings you up the applications menu. This is similar to Android systems, but by default this menu is hidden to allow you utilizing 100% of your phone's screen. It is not necessary to sacrifice 10-20% of your screen when you are scanning through photos. Touch the bottom of the screen and you can edit or share the picture on your favorite social media site with just one click.

Multitasking has always been a core part of Ubuntu (see multiple virtual desktops) and this is not changing in the Ubuntu phone either. Swiping from the right side of the screen brings you back to the previous application you were using.

 

Applications

Applications or "Apps" are usually reachable through some sort of Application Store. Now for a long time Ubuntu Desktop has had this feature, providing an enormous amount of software available in their Software Centre. The same which will be available on the Ubuntu phone! Whats more, since this is a truly open source platform, anybody can contribute to this store and develop applications. In fact there is already a software package published by Canonical for this purpose at ubuntu.com. I am sure that the open source community will prove itself and cause an explosive growth of applications for the Ubuntu phone even before actual devices start shipping. I see a huge potential in the Software Centre and I believe that over time this will grow to be one of the dominant advantages over other mobile operating systems. 

 

Availability

Although there are some working models already, unfortunately we have to wait until the end of this year or possibly until early next year to see Ubuntu phones showing up on the phone market. However there will be Ubuntu phone packages available to download before this time to allow Ubuntu fans to re-flash their Android phones to their favorite operating system. 

 

Supported Phones

Canonical was at CES 2013 and is still in the process of consulting with manufacturers to ship their phones preloaded with Ubuntu. It is a new platform so it might be risky, but it also has huge benefits. At CES 2013 Ubuntu was shown smoothly running on a Samsung Galaxy Nexus, but it is said that it will be compatible with most Android devices. This means that even if the phone comes originally with Android, it can be re-flashed later on to Ubuntu. This versatility opens up a huge market where Canonical can spread their new operating system, not talking about all those who will replace their Android systems as soon as the Ubuntu package will be available.

 

One Device To Replace Them All

The idea behind the uniformity across Ubuntu devices (Desktop, TV, tablet and now the phone) is that sooner or later one device could replace the others. 20 years ago there were mostly only robust desktop computers, later these were replaced by lightweight, portable notebooks and in the recent years the smartphone industry has seen an explosive success. As smartphones are getting faster and stronger with better processors and video cards in them, more onboard memory and storage, they indeed are computers already. So what is stopping anyone from taking an Ubuntu phone, docking it at home, connecting a wireless mouse and keybord along with a screen and use it as a regular desktop? This could be done already and this surely is the future. There will come a point where it will be unnecessary (or pointless) to buy separate computers for home use, the smartphones will be powerful enough to replace them.
Dock your powerful Ubuntu phone to turn it into your Desktop  (Ubuntu.com)

 

Summary

All I can say that I am very much looking forward to this new smartphone operating system and I am sure there are many others who feel the same way. All the awesome features of Ubuntu, the security of Linux squezzed into my handheld computer.
The phone is targeted at the average user and the aim was to make a clean design and an easy to use interface. However, what I personally would like to see are all the functionality of my Ubuntu desktop in the phone. I would like to be able to access the terminal for example, the file system of my phone, be able to install packages just like I am doing now with apt-get and so on. I do not see why these function should not be available, in fact I am almost certain that this open source platform will provide full access to phone features so that it can then be truly used as computers and not as smartphones.

Update: Ubuntu phone will come with a Terminal application!

Learn more at www.ubuntu.com

Tuesday, December 25, 2012

Wi-Fi Boosting: Hardware Trick

Increase your Wi-Fi router's range towards your computer and filter out unwanted Wi-Fi signal from neighbouring devices with some hardware trick. You already have the materials in your house and it takes less than 5 minutes.

A little theory 


Just the bare minimum to understand how and why it works.

Wi-Fi is an unlicensed radio band in the 2.4 GHz range and it behaves just like any other electromagnetic wave. It is known that electromagnetic waves are piercing through metal object very weakly, or in other words they are reflected or stopped. This is the exact same reason why you shouldn't put any metallic object in your microwave oven either.

Electromagnetic waves propagate in the direction without any obstruction freely, but waves that hit metallic surfaces (say a steel plate) get reflected (a portion pierces through and the remainder gets reflected. The ratio of reflected to continuing waves depends on the type and thickness of metallic layer). The reflected component then is heading the same way as the part which was going unobstructed, thereby creating an amplification effect. This amplification can be used in the case if Wi-Fi signal as well, just like described above.

Consider the following example.

Imagine a 2 dimensional system with point signal source (say a router, broadcasting Wi-Fi signal) and a metallic object (radiator) on its right. Considering only the horizontally propagating waves in the 2-dimensional plane, the following happens.

 The signal is emitted and propagates freely to the left as there is no obstruction.

The other part of the signal propagates to the right and hits the surface of the metal plate. At this point (ignoring any signal getting through, so assume 100% reflection) the signal is reflected from the surface and starts heading backwards, the way it started from (dashed lines) .


The reflected waves are now heading in the same direction as the first part (to the left), but now there are twice as much, going in the one direction, hence the stronger or more signal.

How to make use of this 

 

The reflection of signals is usually an unwanted thing in an apartment where Wi-Fi is used as it generally weakens the signal. This occurs when a router is placed close to a radiator or mirror and the computer is on the other side respectively. However when placing the signal source cleverly,  reflection can be taken advantage of and it can actually boost the radio signal. 2 main tricks that can be done are
  1. Amplifying the signal coming from the router to a specific direction
  2. Blocking signal arriving to a device
The first one is the process described above in the theory whereas a signal is forced in a chosen direction. The latter option might not seem useful for the fist time, but it is actually very handy in situations where there are a lot of different signals. In these cases (say 20 different Wi-Fi routers) each of the 13 channels are used, some even by more than 2-3 devices. If this happens, the receiver device has to differentiate between the incoming signals and decide which one is the one required and filter out the rest. Referring to the used example, if an antenna is receiving a signal from the left, then by placing a metallic object on its right, the unwanted signals coming from the right can be blocked out, hence the receiving device will have to "think" less about which signal is useful and which one should be disregarded.

Make your own amplifier

 

Making something that amplifies or rather said direct your Wi-Fi signal into the necessary direction is way easier than it sounds. All you need is:
  • Cardboard
  • Aluminium foil
  • Scissors, duct tape etc.
Ultimately what you need to do is to cut a piece of cardboard and cover it with aluminium foil. This will act as the metallic layer as described in the previous example and reflect your signal the way you need it to.




Then, based on how you want to direct the signal place it behind your signal source. You can either have it
  • Straight - the signal will be stronger on the one side of the wall while weaker on the other side
  • Bent in a slight "U" shape or parabola - the signal will be directed more or less in a cone shape. This is a more focused option and can extend the range further out in a narrower region.

Results


This does sound cheap and it is, but it certainly does the job. I have applied this behind my receiver antenna and it has blocked out about 9 out of 12 Wi-Fi signals from neighbours and therefore made my own signal reception much more stable and reliable. I am just making another one to place behind the router and direct more signal towards my antenna, which is going to even further improve the quality of my local network.

Please note that even though this is a nice trick you can do fast within the next 5 minutes and get significant results immediately after placing it, it will not be as good as buying directional antennas or anything similar.

My plans are to test a parabola antenna by placing a small router in the middle of it and check how far the range has extended. I have seen Wi-Fi working over vast distances and I am hoping for reproducing similar results.

    Thursday, December 20, 2012

    PirateBox: Design 2.0 Update

    First of all a huge thanks to Maxime who has made some really nice improvements to my design that I am discussing here. It is about the "Design 2.0" and see the list of improvements below.

    The improvements and changes do not require any change to your PirateBox, except for the www folder where the html files are stored, the pbIMG_ws.img file on your drive.

    Improvements

    • User gets automatically redirected to mobile version of the website if accessing from mobile device (presuming no preference is set on the device for viewing the browser versions). 
    • Display the number of connected users, just to keep track on how many users are connected to the PirateBox.
      (Fundamental part of a PirateBox is that it is fully anonymous and this does not change here. No information is collected from the users, the device only tells the total number of connections, nothing else.)
    • There is a very nicely written tutorial for replacing the original PirateBox design with my Design, including instructions how to modify the page for your liking.
    • Also the chat was changed slightly. It is no longer operating as an iframe, but as a core part of the index (home) page. As a result of this it will load faster and it will eliminate compatibility issues with some devices. Also since it is now the part of the main page, there is no need for a chat.html page either.

    Changing to my Design

     

    Download: GitHub

    There is a tutorial written by Maxime on GitHub that you can follow, but it is as simple as downloading the "Design 2.0" folder and copying over its contents to the Pendrive's pbIMG_ws.img/piratebox/www folder, overwriting any similar files already there.
    Attention: Make sure you do a BACKUP of your own www folder and it's contents before overwriting files or doing any changes.

    Screenshots


    So that you do not have to go back to previous post to know what design I am talking about.


    As you can see nothing has changed in the overall design, the pictures just show how the design looks to have a quick idea of what you get here. The change in chat is not remarkable to the naked eye, but it is a nice new feature that it doesn't need to be loaded and embedded from a separate page, but being part of the main page.
    I also cannot show the mobile redirect, but that is one of the nice features I really like. So from now on even people from mobile devices can get a basic view of the site, however if they prefer they can sure view the browser version.

    Future Plans


    After talking to Maxime we have started to work together to give a better finish to the UI, add more functionality and improve general appearance and usability.
    Our plans for the future are to add the following:
    • Admin page with the features
      • Allow editing (rename, delete etc.) of uploaded files
      • Contain a short guide of terminal commands with the most important commands
    • Option for owners to add video, music or possible games to the PirateBox that can be streamed to the users. It is likely that only "stronger" PirateBoxes will have this function as this will need larger amount of computing power from the router. (However as browser try opening files instead of downloading them anyway, this sort of works already.)
    • Multiple languages support for the site so users could choose to view & use the PirateBox in their own, preferred language.
    • Design adjustments to achieve a higher standard and make a more attractive UI in general for the public.
    Videos, music and even flash games can be added easily by anyone right now as well. As HTML5 supports a videos and music, this can also be added relatively easily, see the example below for adding a video:

        <article id="video">
        <h1>Copy Is Not Theft!</h1>
        <h2>A short video illustrating the difference between stealing and       copying.</h2>
        <video id="intro_vid" width="600" height="450" controls >
        <source src="multimedia/Copying.Is.Not.Theft.webm" />
        <source src="multimedia/Copying.Is.Not.Theft.mp4" />
        </video>
        </article>

    The above code would add a new article (section) to the man page where video(s) would be at multimedia/video.webNow you can see 2 video formats listed there, this is needed because in HTML 5 different browsers support different video types.

    Similarly, you could add audio files to your site as well, example:

        <audio controls="controls">
        <source src="multimedia/audio.ogg" type="audio/ogg">
        <source src="multimedia/audio.mp3" type="audio/mpeg">
        Your browser does not support the audio element, soz.
        </audio>

    Where again the 2 file types are because of browser supports.
    Although note that the standard pbIMG_ws.img container is only 20MB in size and all the files for the website must be in here. Now you can of course make a larger img file that could contain all the files and added videos, but this will take up space on the pendrive. Also the more multimedia you add, the more your box will have to work.

    On my custom box I am using a 50MB container with just one short video and audio file for experimental purposes, it looks like this:

    As you can see, I also made myself a "Video" and "Games" tab as well, the picture above shows the video page, but there is a flash game uploaded as well. It is running just fine, but not multiplayer.

    Monday, November 26, 2012

    Bitcoin Basics and Ubuntu 12.04

    This article contains some help for those starting to get into using bitcoin and contains help I have found when reading through different forums and experiences made. It also assumes some basic knowledge about Bitcoin in general, bitcoin client the meaning of mining, mining software, blocks, hashing rate and so on. All this information can be found in the Bitcoin Wiki and only requires some reading and no actual deep programming knowledge.


    Contents of this Article

    • About Bitcoin
    • Installing the Bitcoin Client
    • Mining & Mining Software
    • Where to Mine
    • Downloads & Links
    • Earn Your First Coins (for free)
    • Sources

    About Bitcoin

     

    "Bitcoin uses peer-to-peer technology to operate with no central authority or banks; managing transactions and the issuing of bitcoins is carried out collectively by the network. Bitcoin is open-source; its design is public, nobody owns or controls Bitcoin and everyone can take part."[1]

    Originally Bitcoin was developed by an anonymous person calling himself "Satoshi Nakamoto", his real identity is still unknown. [2]

    The network uses the SHA256 algorithm  that is very fast to compute and hence allowed technology companies to develop specialized hardware for bitcoin mining, the coin generation process. The mining process includes a "puzzle" a machine can solve and based on the outcome of this puzzle a block might be generated. Upon finding a new block, 25 BTC is added to the miner. Blocks are generated on a predictable rate (1 block every 10 minutes) and the reward for finding a block halves on a pre-determined basis. These factors limit the total number of available bitcoins in the system, which will be 21 million coins once the system reaches this point in the future.

    The easy calculation of SHA256 hashes made it available to develop specialized hardware such as FPGAs (Field programmable Gate Array) and ASICs (Application Specific Integrated Circuit) that specialize in bitcoin mining. Such hardware have dramatically shifted the bitcoin mining process and increased the global hash rate of the network. Whether this is good or bad, everyone has to decide for him/herself. one thing is for sure, bitcoin is growing faster than before. Currently 1 coin (BTC) is worth over 500$ and it does not seem to slow down. 

    And here is a short video explaining a few things and introducing Bitcoin.

     

    Installing the Bitcoin Client 

     

    First of all what you should know that there are 2 versions of the official bitcoin client, bitcoin and bitcoin-qt. Bitcoin is the command line client that is for more advanced users while bitcoin-qt is the graphical user interface (GUI) version that is easier to use (aim to use the bitcoin-qt, GUI version).

    Known issue with the client under Ubuntu: The icon does not show in the Unity menu bar (top of the screen where email etc is.). It shows up when first installing, but after that it is gone. As said above, I tried building from source to see if the problem is solved that way, but it isn't. Not a big impact, just a minor issue, but I personally would like to be displayed there, hopefully this will be fixed soon. Update: This issue has been fixed in the Latest Client (as far as I saw).

    1. Amending Software Sources (PPA) - Recommended 

     

    Update: This seems to be the predominantly supported and easiest way of installing bitcoin-qt on an Ubuntu system.

    Edit your software sources by,
    sudo gedit /etc/apt/sources.list
    and add the 2 lines at the end of the file,  
    deb http://ppa.launchpad.net/bitcoin/bitcoin/ubuntu YOUR_UBUNTU_VERSION_HERE main
    deb-src http://ppa.launchpad.net/bitcoin/bitcoin/ubuntu YOUR_UBUNTU_VERSION_HERE main

    Where of course you replace "YOUR_UBUNTU_VERSION_HERE" with the name of your Ubuntu version, e.g. 12.04 is "precise". If this is not perfectly clear for you or you are using another version than 12.04 of Ubuntu then check out this link for help: https://launchpad.net/~bitcoin/+archive/bitcoin. After this simply run in the terminal,
    sudo apt-get update sudo apt-get install bitcoin-qt
    It is now installed on your system in /home/[USER]/.bitcoin You can create a desktop launcher or launch it from unity panel or your favourite place. If you need more help: Bitcoin.org
     

    2. Installing the Bitcoin Client - Alternative 1

     

    Installation by downlaoding the latest bitcoin *.tar.gz file. As per the README file tells:
    1. Download the latest *.tar.gz file from bitcoin.org
    2. Unzip the contents into a folder
    3. Run sudo apt-get install libqtgui4 to install Qt4 runtime libraries (if you had a previous version installed this should already exist on your system)
    4. Run either of the 4 executable installers (according to your system)
     bin/32/bitcoin-qt (GUI, 32-bit)  bin/32/bitcoind (headless, 32-bit)  bin/64/bitcoin-qt (GUI, 64-bit)  bin/64/bitcoind (headless, 64-bit)
    This should install the bitcoin client onto your system.

    3. Building from Source - Alternative 2

     

    To get the bitcoin client clone the official github repository first and then decide whether you need the GUI version (bitcoin-qt) or just the terminal one. Clone the github repository,
    git clone https://github.com/bitcoin/bitcoin ROUTE
    where "ROUTE" is the route to the folder you want to copy to. Leave empty to clone it to your home directory. Also you will need some packages installed, get these by running
    sudo apt-get install qt4-qmake libqt4-dev build-essential libboost-dev libboost-system-dev libboost-filesystem-dev libboost-program-options-dev libboost-thread-dev libssl-dev libdb4.8++-dev
    3.a. Terminal Version

    This is fully in the terminal. After the github repository as been downloaded and the necessary packages applied, simply execute (as per doc/readme-qt.rst)
    qmake 
    make
    Now note that as said this is the terminal version of the bitcoin client, it comes with no graphical interface, all arguments must be given in the terminal. It is highly advised that you do not use this option.
    If qmake gives an error, try
    qmake "USE_UPNP=-" 
    make
    3.b. GUI Version

    You have to get a program called "Qt-creator" from the software centre so go ahead and download it.
    Also you will need the packages as mentioned above so install those if you have not done so already.
    If you have it navigate to the cloned github repository, right-click bitcoin-qt.pro and select "Open with Qt Creator"
    This will open up Qt, here click on run on the bottom left of the screen 
    and this will create an executable file in the bitcoin folder that will run bitcoin-qt. Run as you would any other file.

    Mining & Mining Software 

    You can either mine alone - in "solo" - where the possibility of you finding a block (25 BTC ~ 7000 Euros, but doesn't matter as it is changing all the time) is above 40 years, or you can mine for a group - called "pools" - where you get a share of the 25 BTC based on the help you provided. With solo mining you may not receive anything at all, but you might find a block and get the total 25 BTC, whereas in a pool you will have more steady, but smaller payments. As the difficulty and global hash rate are high, it is highly advised to join and mine a pool.

    Installing poclbm-GUI


    Either way you want to go, you need a software to mine and start hashing. I suggest using poclbm-gui miner which is easy to set up and gives the same functions as the terminal version. The things you will need on your system installed are,  
    python 2.6 or above (3 is not supported)
    wxpython, get them from synaptic package manager.

    nVidia Cards:
    numpy and PyOpenCL, that can again be again installed from synaptic package manager.

    Launch synaptic package manager with: sudo synaptic and make a search for the packages and install.  

    ATI video cards: If you have an ATI card and plan to use it for mining (which will be much faster than CPU or nVidia cards) the you also need an ATI Stream SDK downloaded and installed. You can get the latest version of poclbm GUI miner from github,
    git clone https://github.com/Kiv/poclbm
    and then to run,
    cd /home/[USER]/poclbm
    python guiminer.py
    This will run the guiminer (the front end software) and also poclbm miner, however if you want to use other mining software (e.g. cgminer), it has to be downloaded and installed manually (see links at end of the post and at List of Bitcoin Mining Software). I leave this to you, you have to decide what software you want to use or rather what does your hardware support (!). With all the different ASICS out you will need to check for support. Cgminer is generally a good option to go for and installing it is very simple and it is described in the readme file.

    Look for what you need; clone git repo, cd to git repo, ./configure, make, make install or refer to documentation. After say you have downlaoded cgminer, you can use the GUIminer to control it. This virtually poses no overhead on your hash rate. Make sure you set the correct path to your mining software! Refer to software screenshots below. I recommend you create a "miners" directory within the guiminer and put all miners you use in here. Just to keep things in one place.

    Mining in Solo 


    Firstly go to ~/.bitcoin directory (to see hidden folders press "Ctrl+H" in the file manager, in your home directory) and create a new file called bitcoin.conf if you do not have it already. Put 3 lines in the file,
    rpcuser=local_username rpcpassword=password_you_want_to_use_make_it_long_and_strong
    rpcport=8332 
    Keep these secure. Setting up solo mining requires the bitcoin client to be started up in server mode. To do this, close the client if you have it already running and and start bitcoin-qt with the following command from the terminal,
    bitcoin-qt -server -RPCALLOWIP=192.168.0.* -RPCPORT=8332
    Alternatively
    Add the line:
    server=1
    into ~/.bitcoinbitcoin.conf too.
    ###
    If you are using Windows this is quite similar, open the command line and do,
    cd Program Files (x86)\Bitcoin
    bitcoin-qt.exe -server -RPCALLOWIP=192.168.0.* -RPCPORT=8332
    ###
    Where192.168.0.* is you local IP address range, note that this might be different based on your home network settings. This is to tell the client to allow miner connections from the local network. Start mining software as normal and set up a new solo miner, refer to picture below.

    Ext. Path: Absolute path to your miners installed. Make sure it is pointing to the right executable file.   
    Server: Choose solo  
    Host: localhost
    Port: Just use 8332, make sure it is the same as you have launched the client with & set in your bitcoin.conf  
    Username: As per set in ~/.bitcoin/bitcoin.conf  
    Password: As per set in ~/.bitcoin/bitcoin.conf  
    Extra flags: Flags for the miner, like "-v -w 128', this depends on the miner and graphics card you are using. You can look up a list of best settings for different cards Bitcoin Wiki After setting up to mine in solo, you should see a similar window:
    Ubuntu
    Windows
    If you have launched the client right, got the matching username & password you should be mining in solo.

    Mining for a Pool 


    Pooled mining is the "easier" from the 2. From the dropdown menu simply choose which pool you want to mine for - or choose "other" if it is not listed - type in your account credentials and other information necessary, specified on the pool's homepage and start mining. Please refer to the images and information discussed above in "Mining in Solo". Of course, username and password in this case will be the ones specific to your pool's one and not the one set it  ~/.bitcoin/bitcoin.conf ! If you are looking for a pool to mine for, scroll to the bottom of this post!

    Note: Setting all these up is not difficult at all, once you have figured out how to do it. I hope I could save you some time of looking around the internet and browsing through different forums for finding the right information. If you however require any further help or anything was not clear or just got stuck, leave a comment and I will get back to you and do my best to help.

    Downloads & Links

    • poclbm with GUI - Github (Kiv); GPU miner using OpenCL, Nvida & ATI; Recommended as it contains GUI and mining software alike!
    • Ufasoft CPU/GPU miner - darkgamex.ch; has to be built from source (Windows & Linux)
    • Diablo GPU miner - Github (Diablo);Uses Java ant the OpenCL framework for hashing; ATI & Nvidia cards
    • cgminer - ck.kolivas.org; multi-threaded multi-pool GPU, FPGA and CPU miner
    • phoenix miner - Github;
    • Bitcoin client - Github & Bitcoin.org (Windows & Linux)
    • To learn more about miner software read Bitcoin Wiki 
    • Mining Hardware comparison and best Flags Bitcoin Wiki 
    • Bitcoin Mining Calculator (profit, based on hashing speed, current price & difficulty) 

    Earn Your First Coins (For Free) 


    Dailybitcoins.org - Some micro bitcoins every hour, random prizes and advertising opportunity. Nice option for those new to Bitcoin to make their first coins fast and for people who want to advertise alike.
    Bitvisitor.org - Earn bitcoins for watching videos
    CoinURL.com -  Earn bitcoins for publishing ads on your website, by shortening URLs and you can even advertise with bitcoins.

    Where to Mine


    Update: Please note that "hobby mining" may no longer be profitable with the ever-increasing difficulty and even the cheapest electricity prices. Furthermore cloudmining is often leading to losses and not to profit! At this point I can personally only recommend LTCGear that offers profitable mining power that scales with the difficulty and the below linked GAWminers.

    Free 10 GH/s for New Users at GAWminers


    This takes 3-5 minutes to set up, here is how.
    1. Use  this  link to register and claim your reward.
    2. After registration you will be given a short tutorial about the website. Click through the tutorial. (Important!)
    3. At the end of the tutorial you will be given a Genesis Hashlet (10GH/s)
    4. Select a Bitcoin mining pool for it and drag&drop onto your new hashlet.
    You are done and mining Bitcoin with 10GH/s!

    CEX.io


    Join me mining and trading at CEX.io, here you get the following benefits:
    • Mine in the ghash.io pool with 0% fee
    • Rent Hashing Power (GH/s) (With BTC or NMC)
    • You can buy & sell GH/s from the cloud that will work for you OR you can simply make a profit on buying and selling these shares. No fee.
    • Invite others and get 3% bonus of their GH/s in extra to your account (this does not affect the invited person in a negative manner)
    • Merged mining of Bitcoin, Namecoin, Devcoin and IXcoin. These do not require extra work, but increase your profit.
    • Warning! Maintenance fees are so high that it practically only makes sense to TRADE at CEX.io. Buying hashing power and letting it work will make you lose money on the long term!

    Triplemining


    You can also join me mining at Triplemining where:
    • The pool gets all the shares
    • You have a chance to win the weekly jackpot of around ~0.4 BTC
    • You can make your own "minipool" and earn more by inviting others
    • Lowest payout limit that I have seen among pools (0.01 BTC) 

    Sources


    [1] - http://bitcoin.org
    [2] - https://en.bitcoin.it/wiki
    Original Bitcoin Paper

    Thursday, November 15, 2012

    Privacy Data Leak in Ubuntu 12.10

    In the latest release of Ubuntu, 12.10 there was a privacy leak discovered in the new Dash. When you search for an item, you will see Amazon advertisements of similar products as well from the internet (aka you make an internet search from your desktop and then by clicking on the links they will open in the browser). Now the search request is sent through https, which is secure, but the images from Amazon.com are sent back through insecure http. Thereby your IP, location and hence identity can be revealed.

    EFF.org has a more detailed article on this and the latest show of Hak5 is also talking about the issue, hence I am just raising awareness here as well. If you have upgraded to 12.10 then you might want to solve this issue, what you can do quickly by reading on here or visiting either of the above two sites.

    Disable Data Leaks

    Terminal
    sudo apt-get remove unity-lens-shopping

    From System Settings
    Go to Privacy/Search Results and set "When Searching in the Dash" to "Off"