Difference between pages "GNOME First Steps" and "Package:Irssi"

From Funtoo
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
== What is GNOME? ==
{{Ebuild
"GNOME 3 is an easy and elegant way to use your computer. It is designed to put you in control and bring freedom to everybody. GNOME 3 is developed by the GNOME community, a diverse, international group of contributors that is supported by an independent, non-profit foundation." [http://gnome.org GNOME]
|Summary=A modular textUI IRC client with IPv6 support.
|CatPkg=net-irc/irssi
|Maintainer=
|Homepage=http://www.irssi.org/
}}


== Prerequisites ==
=== Description ===
irssi is a small command line IRC client based on ncurses. It's a great thing to use when you SSH into a server, or just simply for your main IRC client.


Before installing GNOME, ensure that the [[X Window System]] has been installed.
=== Installation ===
The install of irssi is pretty straight forward. There are not many USE flags, but one that is worth looking at is the {{c|SSL}} flag. This enables you to use SSL when connecting to servers.
{{console|body=
###i## echo "net-irc/irssi ssl" >> /etc/portage/package.use
###i## emerge irssi
}}
=== Using irssi ===
Using irssi initially can be a little intimidating if you're not used to command line programs. To first start irssi, you just simply run:
{{console|body=
$ ##i##irssi
}}
There are flags you can pass to the command line while starting irssi, such as:
{{console|body=
$ ##i##irssi -n mynick -c irc.freenode.org
}}
This would connect you to Freenode with the nick 'mynick'. Or alternatively you can just run the {{c|irssi}} command and connect via SSL if you need to:
{{file|body=
/connect -ssl irc.freenode.org
}}
This will automatically connect you over port 6697.  


{{fancywarning|1=
When you have connected to the server of your choice, you can join a channel simply by:
Please note that Linux kernel 3.15.* may still have serious incompatibility with various graphics drivers. If you like to use <tt>gentoo-sources</tt> or <tt>vanilla-sources</tt>, please use a 3.14.* kernel. This is of particular importance if you plan to run GNOME, and want to use NVIDIA (commercial or nouveau) or ATI (ati-drivers) graphics drivers.}}
{{file|body=
/j #funtoo
}}
If you want to leave any channel you've entered you can use the {{c|part}} command:
{{file|body=
/part #funtoo reasons...
}}
There are a few ways of navigating through your channels, you can use {{c|alt+<nowiki>{1-9}{q-p}</nowiki>}}, or alternatively you can use the {{c|window}} command that is in irssi:
{{file|body=
/window 1
/window 2
/window 3
}}
For as many channels you are apart of.  


== Preparing to emerge ==
When you're ready to leave, you can simply type in:
{{file|body=
/exit
}}
Which will close out connections to the IRC networks you've joined, and take you back to your console window.
=== Themes and scripts ===
==== Scripts ====
There are a few things you can do to make irssi look a little bit better and add some cool features. There are a few plugins that are pretty useful, such as {{c|fnotify.pl}} which is a script that utilizes {{f|libnotify}} to send you popup notifications for when your nick is pinged or you are sent a private message.


To get your system ready to emerge gnome, it is recommended that you first set the gnome profile mix-in. To accomplish this, do the following:
{{file|name=fnotify.pl|lang=perl|desc=fnotify.pl|body=
<console>
# todo: grap topic changes
##r### ##b## eselect profile list
##g##Currently available mix-ins profiles: 
  [11]  funtoo/1.0/linux-gnu/mix-ins/audio 
  [12]  funtoo/1.0/linux-gnu/mix-ins/console-extras 
  [13]  funtoo/1.0/linux-gnu/mix-ins/dvd 
  [14]  funtoo/1.0/linux-gnu/mix-ins/gnome 
  [15]  funtoo/1.0/linux-gnu/mix-ins/kde 
  [16]  funtoo/1.0/linux-gnu/mix-ins/mate 
  [17]  funtoo/1.0/linux-gnu/mix-ins/media 
  [18]  funtoo/1.0/linux-gnu/mix-ins/print 
  [19]  funtoo/1.0/linux-gnu/mix-ins/python3-only
  [20]  funtoo/1.0/linux-gnu/mix-ins/rhel5-compat
  [21]  funtoo/1.0/linux-gnu/mix-ins/server-db 
  [22]  funtoo/1.0/linux-gnu/mix-ins/server-mail
  [23]  funtoo/1.0/linux-gnu/mix-ins/server-web
  [24]  funtoo/1.0/linux-gnu/mix-ins/X
  [25]  funtoo/1.0/linux-gnu/mix-ins/xfce
  [26]  funtoo/1.0/linux-gnu/mix-ins/vmware-guest
  [27]  funtoo/1.0/linux-gnu/mix-ins/hardened
</console>
After seeing a list of available profiles, we want to add in the appropriate number for the gnome mix-in. To do this, run the following:
<console>
##r### ##b##eselect profile add 14
</console>


By enabling the gnome mix-in, various USE and other settings will be optimized to provide you with a pain-free GNOME installation experience.
use strict;
use vars qw($VERSION %IRSSI);


== Emerging ==  
use Irssi;
$VERSION = '0.0.3';
%IRSSI = (
authors    => 'Thorsten Leemhuis',
contact    => 'fedora@leemhuis.info',
name        => 'fnotify',
description => 'Write a notification to a file that shows who is talking to you in which channel.',
url        => 'http://www.leemhuis.info/files/fnotify/',
license    => 'GNU General Public License',
changed    => '$Date: 2007-01-13 12:00:00 +0100 (Sat, 13 Jan 2007) $'
);


You are provided with two packages that will pull in this desktop environment:  
#--------------------------------------------------------------------
# In parts based on knotify.pl 0.1.1 by Hugo Haas
# http://larve.net/people/hugo/2005/01/knotify.pl
# which is based on osd.pl 0.3.3 by Jeroen Coekaerts, Koenraad Heijlen
# http://www.irssi.org/scripts/scripts/osd.pl
#
# Other parts based on notify.pl from Luke Macken
# http://fedora.feedjack.org/user/918/
#
#--------------------------------------------------------------------


* ''gnome''
#--------------------------------------------------------------------
# Private message parsing
#--------------------------------------------------------------------


{{fancynote|This is the "whole shabang" - pulls in a range of applications made for the gnome desktop environment including a few games, an archive manager, a system monitor, a web browser, a terminal, etc.}}
sub priv_msg {
my ($server,$msg,$nick,$address,$target) = @_;
filewrite($nick." " .$msg );
}


* ''gnome-light''
#--------------------------------------------------------------------
# Printing hilight's
#--------------------------------------------------------------------


{{fancynote|As the name implies, this pulls in the base minimal you need to get a functioning GNOME Desktop Environment.}}
sub hilight {
    my ($dest, $text, $stripped) = @_;
    if ($dest->{level} & MSGLEVEL_HILIGHT) {
filewrite($dest->{target}. " " .$stripped );
    }
}


=== GNOME 3.12 from a clean install ===
#--------------------------------------------------------------------
# The actual printing
#--------------------------------------------------------------------


==== gnome ====
sub filewrite {
my ($text) = @_;
# FIXME: there is probably a better way to get the irssi-dir...
        open(FILE,">>$ENV{HOME}/.irssi/fnotify");
print FILE $text . "\n";
        close (FILE);
}


To emerge ''gnome'' run the following command
Irssi::signal_add_last("message private", "priv_msg");
Irssi::signal_add_last("print text", "hilight");


<console>
#- end
# ##i## emerge -va gnome
}}
</console>
Another very useful script is for colored nicks, to better tell people apart. Which can be found at [http://scripts.irssi.org irssi scripts] called {{f|nickcolor.pl}}. 


==== gnome-light ====
When you have the scripts you would like you would put them into {{f|~/.irssi/scripts}} and set a link to {{f|~/.irssi/scripts/autorun}}.
{{console|body=
$ ##i##wget -O ~/.irssi/scripts/nickcolor.pl http://scripts.irssi.org/scripts/nickcolor.pl
$ ##i##cd ~/.irssi/scripts/autorun
$ ##i##ln -s ~/.irssi/scripts/nickcolor.pl .
$ ##i##ln -s ~/.irssi/scripts/fnotify.pl .
}}
You can do this for as many scripts as you've chosen to use. They will automatically load when you start irssi. You can also manually load scripts:
{{file|body=
/load ~/.irssi/scripts/fnotify.pl
Irssi: Loaded script fnotify
}}
Whichever works best for you is what you should do.
==== Themes ====
You can choose from many themes on the [http://irssi.org/themes irssi themes] page if you don't like the default look of it. Once you've chosen the them you like, you can simply put it in your {{f|~/.irssi/}} directory and when you run just run:
{{file|body=
/set theme mycooltheme
}}
And there you have it, the theme you have chosen is now there.
=== Conclusion ===
irssi is a great IRC client, and really helpful if you spend a lot of time in a terminal emulator or on a server.


To emerge ''gnome-light'' run the following command
== External Resources ==
[http://www.irssi.org/documentation Further documentation]


<console>
{{EbuildFooter}}
# ##i## emerge -va gnome-light
[[Category:IRC]]
</console>
 
=== Upgrading from GNOME 3.6 ===
 
==== gnome ====
 
To emerge ''gnome'', remove nautilus-open-terminal if it is installed as it now bundled into gnome-terminal
 
<console>
# ##i## emerge -vaC nautilus-open-terminal
</console>
 
Then, run the following command
 
<console>
# ##i## emerge -vauDN world
</console>
 
==== gnome-light ====
 
To emerge ''gnome-light'' remove the following packages as there have been changes since 3.6 (you will have up reinstall any packages that have been renamed after gnome-light completes).
 
<console>
# ##i## emerge -vaC gnome-fallback gnome-panel gnome-screensaver metacity gnome-games gcalctool nautilus-open-terminal
</console>
 
Then, run the following command
 
<console>
# ##i## emerge -vauDN world
</console>
 
Finally, restore any applications that have been renamed (such as gcalctool => gnome-calculator)
 
<console>
# ##i## emerge -va gnome-calculator
</console>
 
== Subsystems ==
 
=== Bluetooth ===
 
For bluetooth support, ensure that:
 
# Bluetooth support is enabled in your kernel (using modules is fine).
# Your bluetooth hardware is turned on.
# Add the <code>bluetooth</code> startup script to the default runlevel, and start it.
 
This can be done as follows:
 
<console>
# ##i##rc-update add bluetooth default
# ##i##rc
</console>
 
Once this is done, you should now be able to navigate to ''Settings'' -> ''Bluetooth'' and turn bluetooth on. The icon next to devices should now animate and you should be able to discover and add devices such as keyboards.
 
=== Printing ===
 
To enable printing support, add <code>cupsd</code> to the default runlevel:
 
<console>
# ##i##rc-update add cupsd default
# ##i##rc
</console>
 
You should now be able to navigate to ''Settings'' -> ''Printers'' and add printers to your system, and print.
 
=== Scanning ===
 
To enable scanning support, add your user account to the <code>lp</code> group. This will allow your user to access the USB scanner.
 
Then, <code>emerge xsane</code>, and run it. It should be able to access your scanner.
 
== Finishing Touches ==
 
=== X ===
 
==== Setting up xdm (GUI log-in) ====
 
Typically, you will want to use <tt>gdm</tt>, the GNOME display manager, to log in to GNOME. This will allow you to log in graphically, rather than using the text console.
 
To enable gdm, edit <tt>/etc/conf.d/xdm</tt> and set <tt>DISPLAYMANAGER</tt> to <tt>gdm</tt> instead of <tt>xdm</tt>. Then, perform the following steps to add <tt>xdm</tt> to the default runlevel, and have it start automatically from now on when your system starts:
 
<console>
# ##i##rc-update add xdm default
</console>
 
Then, if you want to start it now do
 
<console>
# ##i##rc
</console>
 
But you should reboot to avoid having an open login terminal
 
==== Setting up xinitrc (text log-in) ====
 
Adding the following to your <tt>~/.xinitrc</tt> file is sufficient:
 
<pre>
# Fix Missing Applications in Gnome
export XDG_MENU_PREFIX=gnome-
 
# Properly Launch the Desired X Session
exec ck-launch-session gnome-session
</pre>
 
Additionaly, if you need support for different input sources, there is no longer a need to configure ibus or scrim in your <tt>.xinitrc</tt> file as GNOME uses ibus natively. Simply configure it in the Control Center under Region & Langauge.
 
=== Verify the inode/directory MimeType Handler ===
 
In some odd instances, baobab might take priority over nautilus when handling the inode/directory MimeType. If this behavior is not desired, add the following to /home/~/.local/share/applications/mimeapps.list:
 
<pre>
[Added Associations]
inode/directory=nautilus.desktop;baobab.desktop;
</pre>
 
=== Automatically Starting Applications at Login ===
 
When using an old-fashioned <tt>.xinitrc</tt>, starting up applications when X starts is relatively easy. When using GDM, this can still be accomplished, by using the <tt>~/.xprofile</tt> file. Here's my sample <tt>.xprofile</tt> to start <tt>xflux</tt> to dim the screen at night:
 
<pre>
xflux -z 87107
</pre>
 
Remember to add a <tt>&</tt> at the end of any command that doesn't return to the shell prompt after running.
 
[[Category:Desktop Environments]]
[[Category:First Steps]]
[[Category:Official Documentation]]

Revision as of 07:49, January 22, 2015

Irssi

   Tip

We welcome improvements to this page. To edit this page, Create a Funtoo account. Then log in and then click here to edit this page. See our editing guidelines to becoming a wiki-editing pro.


Description

irssi is a small command line IRC client based on ncurses. It's a great thing to use when you SSH into a server, or just simply for your main IRC client.

Installation

The install of irssi is pretty straight forward. There are not many USE flags, but one that is worth looking at is the SSL flag. This enables you to use SSL when connecting to servers.

root # echo "net-irc/irssi ssl" >> /etc/portage/package.use
root # emerge irssi

Using irssi

Using irssi initially can be a little intimidating if you're not used to command line programs. To first start irssi, you just simply run:

user $ irssi

There are flags you can pass to the command line while starting irssi, such as:

user $ irssi -n mynick -c irc.freenode.org

This would connect you to Freenode with the nick 'mynick'. Or alternatively you can just run the irssi command and connect via SSL if you need to:

   
/connect -ssl irc.freenode.org

This will automatically connect you over port 6697.

When you have connected to the server of your choice, you can join a channel simply by:

   
/j #funtoo

If you want to leave any channel you've entered you can use the part command:

   
/part #funtoo reasons...

There are a few ways of navigating through your channels, you can use alt+{1-9}{q-p}, or alternatively you can use the window command that is in irssi:

   
/window 1
/window 2
/window 3

For as many channels you are apart of.

When you're ready to leave, you can simply type in:

   
/exit

Which will close out connections to the IRC networks you've joined, and take you back to your console window.

Themes and scripts

Scripts

There are a few things you can do to make irssi look a little bit better and add some cool features. There are a few plugins that are pretty useful, such as fnotify.pl which is a script that utilizes libnotify to send you popup notifications for when your nick is pinged or you are sent a private message.

   fnotify.pl (perl source code) - fnotify.pl
# todo: grap topic changes

use strict;
use vars qw($VERSION %IRSSI);

use Irssi;
$VERSION = '0.0.3';
%IRSSI = (
	authors     => 'Thorsten Leemhuis',
	contact     => 'fedora@leemhuis.info',
	name        => 'fnotify',
	description => 'Write a notification to a file that shows who is talking to you in which channel.',
	url         => 'http://www.leemhuis.info/files/fnotify/',
	license     => 'GNU General Public License',
	changed     => '$Date: 2007-01-13 12:00:00 +0100 (Sat, 13 Jan 2007) $'
);

#--------------------------------------------------------------------
# In parts based on knotify.pl 0.1.1 by Hugo Haas
# http://larve.net/people/hugo/2005/01/knotify.pl
# which is based on osd.pl 0.3.3 by Jeroen Coekaerts, Koenraad Heijlen
# http://www.irssi.org/scripts/scripts/osd.pl
#
# Other parts based on notify.pl from Luke Macken
# http://fedora.feedjack.org/user/918/
#
#--------------------------------------------------------------------

#--------------------------------------------------------------------
# Private message parsing
#--------------------------------------------------------------------

sub priv_msg {
	my ($server,$msg,$nick,$address,$target) = @_;
	filewrite($nick." " .$msg );
}

#--------------------------------------------------------------------
# Printing hilight's
#--------------------------------------------------------------------

sub hilight {
    my ($dest, $text, $stripped) = @_;
    if ($dest->{level} & MSGLEVEL_HILIGHT) {
	filewrite($dest->{target}. " " .$stripped );
    }
}

#--------------------------------------------------------------------
# The actual printing
#--------------------------------------------------------------------

sub filewrite {
	my ($text) = @_;
	# FIXME: there is probably a better way to get the irssi-dir...
        open(FILE,">>$ENV{HOME}/.irssi/fnotify");
	print FILE $text . "\n";
        close (FILE);
}

Irssi::signal_add_last("message private", "priv_msg");
Irssi::signal_add_last("print text", "hilight");

#- end

Another very useful script is for colored nicks, to better tell people apart. Which can be found at irssi scripts called nickcolor.pl.

When you have the scripts you would like you would put them into ~/.irssi/scripts and set a link to ~/.irssi/scripts/autorun.

user $ wget -O ~/.irssi/scripts/nickcolor.pl http://scripts.irssi.org/scripts/nickcolor.pl
user $ cd ~/.irssi/scripts/autorun
user $ ln -s ~/.irssi/scripts/nickcolor.pl .
user $ ln -s ~/.irssi/scripts/fnotify.pl .

You can do this for as many scripts as you've chosen to use. They will automatically load when you start irssi. You can also manually load scripts:

   
/load ~/.irssi/scripts/fnotify.pl
Irssi: Loaded script fnotify

Whichever works best for you is what you should do.

Themes

You can choose from many themes on the irssi themes page if you don't like the default look of it. Once you've chosen the them you like, you can simply put it in your ~/.irssi/ directory and when you run just run:

   
/set theme mycooltheme

And there you have it, the theme you have chosen is now there.

Conclusion

irssi is a great IRC client, and really helpful if you spend a lot of time in a terminal emulator or on a server.

External Resources

Further documentation