Jumat, 05 Juli 2013

Xathrya Sabertooth

Xathrya Sabertooth


Installing Haskell Platform on Ubuntu

Posted: 04 Jul 2013 09:22 PM PDT

Haskell is advanced purely-functional programming language. An open-source product allows rapid development of robust, concise, correct software. It is also have strong support for integration with other language, built in concurrency and parallelism, debuggers, profilers, rich libraries, and an active community.

In this article we will discuss about how to install Haskell platform for Ubuntu. Any Ubuntu version and any architecture is fine. However in this article I will use Ubuntu 12.10 desktop edition.

I assume you have never install Haskell before. But if you have, you can read this section first.

In the rest of article, I assume you use / acquire root privileges to do installation. Otherwise, use

  sudo su  

to obtain it.

Prerequisite

Before we do installation, we have to fulfill the dependencies.

  apt-get install libedit2 libedit2-dev freeglut2-dev libglu1-mesa-dev  

Obtain the Material

The latest haskell version is 7.6.3 which can be downloaded from here. There are two choice depends on what architecture your computer has: i386 (for 32 bit) and x86_64 (for 64 bit). Any of them is fine, adjust it with your own machine.

Once you have download, extract it. We will refer this directory as ghc_dir

For example, this commands will download and extract for the 64 bit version

  wget http://haskell.org/ghc/dist/7.6.3/ghc-7.6.3-x86_64-unknown-linux-n.tar.bz2  tar -xf ghc-7.6.3-x86_64-unknown-linux-n.tar.bz2  

Next download Haskell Platform. The latest platform can be downloaded from here. Then extract it. We will refer this directory as ghc_platform

  wget http://lambda.haskell.org/platform/download/2013.2.0.0/haskell-platform-2013.2.0.0.tar.gz  tar -xf haskell-platform-2013.2.0.0.tar.gz  

Installation

This section will have compilation and installation from source.

First, go to ghc_dir and do

  ./configure  make  make install  

Next, go to ghc_platform and do

  ./configure  make  make install  

Along the way, the install scripts for Haskell Platform will give you prompts for the next step to take.

Have Installed Haskell Before?

If you happen to install Haskell before, you can read this section. If you are not, then you can finish reading the article.

If you have installed ghc6 before, you should remove that haskell package to avoid conflict

Then update the repository to get the latest index.

  apt-get autoremove ghc6  

If you install cabal separately (without haskell platform) you also have to remove it. The one you have to remove would be the executable only. For example we install it as /usr/local/sbin/cabal then:

Then update the repository to get the latest index.

  rm /usr/local/sbin/cabal  

Installing Lightread RSS Reader on Ubuntu

Posted: 04 Jul 2013 09:59 AM PDT

RSS or Rich Site Summary, is a family of web feed formats used to publish frequently updated works – such as blog entries, news headlines, audio, and video – in a standardized format. An RSS document (which then called “feed”, “web feed”, or “channel”) includes full or summarized text, plus metadata such as publishing dates, and authorship.

Using RSS, one can subscribe to a site and when a new content arrive, he can be notified.

Lightread is a RSS reader client which enable user to sync with news or RSS online then read them offline without internet connection. Lightread also can synchronize with google account.

In this article we will discuss about how to install Lightread for Ubuntu from ppa. Any Ubuntu version and any architecture is fine. However in this article I will use Ubuntu 12.10 desktop edition.

Preparation

As said before, we will install Lightread from ppa. Therefore we need to add the ppa key. Do this with root privileges.

  add-apt-repository ppa:cooperjona/lightread  

Then update the repository to get the latest index.

  apt-get update  

Installation

The installation goes smooth like other application. Invoke following command with root privilege:

  apt-get install lightread  

At this point, Openshot has been installed successfully.

Installing Openshot 1.4.3 on Ubuntu using PPA

Posted: 04 Jul 2013 09:44 AM PDT

Openshot is one of powerful Video editor in Linux environment. It is free, simple to use with rich feature.

In this article we will discuss about how to install Openshot for Ubuntu from ppa. Any Ubuntu version and any architecture is fine. However in this article I will use Ubuntu 12.10 desktop edition.

Features

The version we will install is 1.4.3 with following new features:

  1. New transitions: 6 bars, boxes
  2. New dark theme
  3. New 3D animations: Realistic EArth, Exploding Text, Dissolving Text
  4. Improved Drag & Drop features
  5. Apply Effects to Tracks
  6. Adjust Speed of Animated Titles
  7. New effects: Sharpness, Vignette, Lens Correction, more (10+)

Preparation

As said before, we will install Openshot from ppa. Therefore we need to add the ppa key. Do this with root privileges.

  add-apt-repository ppa:openshot.developers/ppa  

Then update the repository to get the latest index.

  apt-get update  

Installation

The installation goes smooth like other application. Invoke following command with root privilege:

  apt-get install openshot frei0r-plugins  

At this point, Openshot has been installed successfully.

Installing XAMPP on Ubuntu Manually

Posted: 04 Jul 2013 09:32 AM PDT

XAMPP, a free open source cross platform web server solution stack package, consisting mainly of the Apache HTTP Server, MySQL database, and interpreters for scripts (PHP script). XAMPP is plenty helpful when you don’t want to install Apache, MySQL, and PHP individually, or if you want portability. However, it is strongly recommended to install Apache, MySQL, and PHP and configure it by yourself.

In this article we will discuss about how to install XAMPP for Ubuntu manually by downloading the binary. Any Ubuntu version and any architecture is fine. However in this article I will use Ubuntu 12.10 desktop edition.

Obtain the Material

Download XAMPP for Linux from here. The latest is recommended. At the time of writing this article, the latest version is 1.8.2. For Ubuntu 32 bit you can download this version, while 64-bit user can download this version. Both will bring you to sourceforge page of the corresponding version.

The rest of this article will assume you have download the installer. For simplicity, I also refer the installer file as xampp.run, regardless the version.

Installation

Open up terminal, and switch to super user (root). The rest of this article will assume we are as root account.

Go to the directory where the xampp.run is and make sure xampp.run is executable. Then run the installer.

  chmod +x xampp.run  ./xampp.run  

When the installation finish, you can find XAMPP on /opt/lampp directory.

Starting

To start XAMPP, simply invoke following command:

  /opt/lampp/lampp start  

You should see something like this:

  Starting XAMPP 1.8.2...  LAMPP: Starting Apache...  LAMPP: Starting MySQL...  LAMPP start  

Testing

Now, check your browser. Type in URL bar http://localhost/ and you would see something like this:

xampp2

Installing XAMPP on Ubuntu

Posted: 04 Jul 2013 09:15 AM PDT

XAMPP, a free open source cross platform web server solution stack package, consisting mainly of the Apache HTTP Server, MySQL database, and interpreters for scripts (PHP script).

In this article we will discuss about how to install XAMPP for Ubuntu using ppa method. Any Ubuntu version and any architecture is fine. However in this article I will use Ubuntu 12.10 desktop edition.

Prerequisite

The XAMPP version used here is the one supplied by ppa. Invoke following commands using enough privilege

  add-apt-repository ppa:upubuntu-com/xampp  

Now update to download the list of packages.

  apt-get update  

Installation

Installation is as easy as other software installation. Enter this command into terminal:

  apt-get install xampp  

Once the installation complete, we have successfully install XAMPP.

Testing

XAMPP can be accessed like any other application. You can find start find and run XAMPP control panel. Click on start button. When you successful, you would have something similar to this:

xampp1

Next, check your browser. Type in URL bar http://localhost/ and you would see something like this:

xampp2

At this point, we are successfully install XAMPP using ppa.

Easy Installing Metasploit on Ubuntu

Posted: 04 Jul 2013 07:04 AM PDT

Metasploit is popular penetration tools exists by using exploitation of operating system, application, or other exploit.

In this article we will discuss about how to install Metasploit for Ubuntu. For this purpose I use Ubuntu. Any version and any architecture is fine. However in this article I will use Ubuntu 12.10 desktop edition.

Prerequisite

The metasploit version used here is the one used by Backtrack. You can also use the version used by Kali Linux. However, let’s stick to Backtrack’s version.

  wget http://all.repository.backtrack-linux.org/backtrack.gpg  apt-key add backtrack.gpg  

Now edit /etc/apt/source.list. Add backtrack’s official repository, or alternatively the mirror. Here I (in my case) have two options:

Using official repository:

  deb http://all.repository.backtrack-linux.org revolution main microverse non-free testing  deb http://32.repository.backtrack-linux.org revolution main microverse non-free testing  deb http://source.repository.backtrack-linux.org revolution main microverse non-free testing  

using repository from IDWS:

  deb http://backtrack.indowebster.com/repo/all revolution main microverse non-free testing  deb http://backtrack.indowebster.com/repo/32 revolution main microverse non-free testing  deb http://backtrack.indowebster.com/repo/source revolution main microverse non-free testing  

Both are fine. Save the file and do update to download list of packages.

  apt-get update  

Installation

Installation is as easy as other software installation. Enter this command into terminal:

  apt-get install metasploit  

Once the installation complete, we have successfully install metasploit.

Testing

Let’s test whether our metasploit work or not. Before running metasploit, let’s do update.

  msfupdate  

Next, try to run it.

  msfconsole  

Creating Simple Subversion Server on Ubuntu

Posted: 04 Jul 2013 06:45 AM PDT

Subversion (known as SVN) is a software versioning and revision control system distributed under an open source license. Developers use Subversion to maintain current and historical versions of files such as source code, web pages, and documentation. Its goal is to be a mostly compatible successor to the widely used Concurrent Versions System (CVS).

In this article we will discuss about how to build a simple SVN server. For this purpose I use Ubuntu (as suggested by the article title). Any version and any architecture is fine. However in this article I will use Ubuntu 12.10 desktop edition.

Prerequisite

Our Subversion server will work on top of http protocol, therefore you have to make sure web server has been installed . The installation of web server won’t be covered here.

Installation

Install subversion and apache module (using enough privilege for installation).

  apt-get install subversion libapache2-svn  

Here we have install the Subversion on our machine.

Configuration

Now we have to set the subversion to work. We will divide this configuration into some stage

Setting up SVN Repositories

Create a new group and set the group for svn repository. This group will have permission to access svn repository.

  addgroup svn-repo  

Create a directory for the repository. This can be any directory, however we will create a new dedicated directory for this purpose. Then set the ownership to www-data and svn-repo. Also change the permission to certain level. These commands will do:

  mkdir /srv/svn  chown www-data:svn-repo /srv/svn  chmod g+rws -R /srv/svn  

Last, make the directory as svn directory:

  svnadmin create /srv/svn  

Setting up Apache Module

We will modify web server so svn can be accessed by webserver.

Edit /etc/apache2/mods-available/dav_svn.conf then add some text to the end of file. Adjust the setting with your own setting (if you follow the above precisely, then you should have no problem copy paste the script below):

  <Location /svn>  DAV svn  SVNPath /srv/svn  AUTHType Basic  AUTHName "Xath SVN Repository"  AuthUserFile /etc/subversion/passwd  Require valid-user  </Location>  

Here, /svn is the url relative to the root in which we can access the svn. For example we have xathrya.web.id then we can access the svn in xathrya.web.id/svn/

The SVNPath specify where the root of subversion directory (in our case: /srv/svn)

A user which want to access the svn must be valid where the authentication will use /etc/subversion/passwd to look for user and password pair.

Add User Account

The last stage is create or add user account for our subversion. To add user account to new password file use htpasswd with argument -c. If the file already exists, the -c is unnecessary. The password file should be the same with filename we specify in dav_svn.conf (see previous section). You will be asked for a password.

  htpasswd -c /etc/subversion/passwd xathrya  

Restart apache

  /etc/init.d/apache2 restart  

Then try to access your svn server http://<ip address>/svn

What is Revision Control Software?

Posted: 04 Jul 2013 05:06 AM PDT

In software development revision control, also known as version control and source control is a management tool of changes to documents, source code, resource, and any other collections of information. It is a repository where every change made to file is tracked and stored.

In software development process, software can change and identified by its version usually by a number or letter code (which is called as “revision number”, “revision level”, or simply “revision”). For example, an initial set of files is “revision 1″. When the first change is made, the resulting set is “revision 2″, and so on. Each revision is associated with a timestamp and the person who make the change. Revision can be compared, restored, and merged.

When the size of project become larger and/or the changes periodically become often, a need to organize and control revision exists. Revision can be done manually such as creating a directory for each version. However, this solution has side effect: inefficiency. One would has time to check the changes and merge involving files to create a revision. And also the size would be too large to handle. Let say an initial project has size 100MB, if we do the solution before we would have 1GB alone for 9 revision we have (at roughly). A simple idea comes: what if we only save the changes made to a file? But this won’t be ineffective if done manually. Thus, a revision control software create to manages the version.

Revision Control Software (later referred as RCS) most commonly run as stand-alone applications, but revision control is also embedded in various type of software such as word processor and spreadsheet. However in this context we only discuss about stand alone RCS.

The Features

We could say that version control systems are essential for any form of distributed, collaborative development. Now, dozen of revision control software exists. Let see what revision control software capable of in general.

Version Tracking

A change can be made by one man and might also vary from time to time. Also a change can be made by many developers at a time. Developers may wish to compare one version to another version (ex: today version with yesterday version) or maybe a change made by different developers for a same module.

Knowing what, who, and when of the changes might help, for example comparing performance of particular version, solve bugs when occurred, and so on. Note that RCS will track those changes, thus when problems arouse from a change one can examine who made the change and the reason they gave for making the change.

Time Machine

Nobody is perfect, including developer. One might do a mistake (intentionally or not), and it can also happen in editing source code. Although there is a facility named undo, it might won’t be a help. For example: you edit a source code in a night and when you check the other day you realize you have done something wrong and forgot all what you have change. Undo command might help you when you still open and edit the file, however when you close the editor it will be different case.

A revision control might have a feature of  “time machine”. Like implied by the name (although not a magical thing happen here) it can bring you back to a version or situation before you do changes. You simply make a checkpoint, or a milestone. Whenever you want to go back, you refer to that checkpoint and RCS will revert the change to the condition in checkpoint.

Coordinating Teams

Resource development is usually carried out by teams, either co-located or distributed. RCS is central to coordinating teams of contributors. It lets one contributor work on a copy of the resources and then release their changes back to the common core when ready. Other contributors work on their own copies of the same resources at the same time, unaffected by each other’s change until they choose to merge or commit their changes back to the project.

Typically in open source projects, RCS allow anyone to read and copy the project resources, but only authenticated users, known as committers are allowed to update source code in the repository.

Due Dilligence

Many activities in business are accompanied by a responsibility to perform 'due diligence' checks. Precisely what these checks entail will depend on the business activity in question, but with regard to intellectual property one important 'due diligence' activity is the tracking of the ownership of its constituent parts. So for example, if someone creates a piece of software and wishes his organisation to release it, his organisation will almost certainly want to check the provenance of all the code within the software. This process is facilitated by the ability to track who made which changes to the code, and when they were made. A version control system enables a list of contributors to be compiled and the dates of their contributions to be ascertained. Such a list can be easily cross-checked with a list of IP contracts.

Open development involves contributors making small regular changes to resources. A version control system provides a means for monitoring those changes as they occur. Automated systems will notify those responsible for managing the IP in project outputs. These notifications, coupled with the logs provided for each individual modification, allow project managers to monitor and trace all contributions.

Open development demands care concerning the provenance of the contributions. Open development projects need to follow best practice in this area. If an IP infringement is found to have occurred, the version control system can be used to determine the extent of the contamination (which files were affected by the problematic change), who performed the change and when they performed it. A version control system can even be used to recover the last uncontaminated version of the software.

Example of Revision Control Software

Let’s mention some popular existing Revision Control Software:

  1. Git
  2. Mercurial
  3. Sub Version (SVN)
  4. Concurrent Version System (CVS)

Further reading

  1. Git (http://git-scm.com/)
  2. CVS (http://www.nognu.org/cvs/)
  3. Subversion (http://subversion.apache.org/)
  4. Mercurial (http://mercurial.selenic.com/)

Tidak ada komentar:

Posting Komentar