/srv/irclogs.ubuntu.com/2012/03/12/#ubuntu-classroom.txt

=== JanC_ is now known as JanC
=== bulldog98_ is now known as bulldog98
Myrttijust testing everything works :-P16:56
=== JanC_ is now known as JanC
Myrttiif you're planning to attend todays "IRC and irssi basics for Ubuntu IRC ops", please poke me in pm or email if you are planning to attend so I can set up channel flags beforehand in the sandpit channel so that you can actually play and try out the commands and we don't need to waste our time on waiting for me to give everyone who plans to attend the flags then. Thank you!18:03
itmannenMyrtti<<  I have sent you a mail18:54
Myrttiitmannen: noted and acted on19:04
itmannenMyrtti<<  Very good :)19:05
itmannenMyrtti<<  What time ? Tonight ?19:06
Myrtti54 minutes19:06
itmannenOk. Thanks19:06
pmatulisdarn, forgot about the time change19:07
pmatulis-4 now19:07
ubuntu-uhri@now UTC19:07
meetingologyubuntu-uhri: Error: "now" is not a valid command.19:07
Myrttiboo.19:07
Myrttianyway, ubottu has it.19:08
daxYou don't all have your IRC clients in UTC? How do you survive?19:08
pmatulisthat's a very good idea19:09
Fuchsbeing able to do simple math without any tools19:09
FuchsI know you are unable to do that, dax :)19:09
MyrttiUTC is timestamp -2 :-P19:09
Myrttiit's not rocket science19:09
Fuchsdax: also, if you would use a better DE, you would have a nice mouse hover on the clock which gives you UTC :>19:10
daxMyrtti: daylight savings time19:11
daxFuchs: This way, I have both on-screen at once19:11
daxMyrtti: also, this way my logs don't randomly jump back an hour19:11
MyrttiI'm a slave of my habits19:12
Myrttisorry :-P19:12
daxunacceptable, dissent is not allowed, all users must conform to my irssi settings19:12
Fuchshahahahaha19:13
Fuchsno.19:13
Myrttiif you're planning to attend todays "IRC and irssi basics for Ubuntu IRC ops" in fifteen or so minutes, please poke me in pm or email if you are planning to attend so I can set up channel flags beforehand in the sandpit channel so that you can actually play and try out the commands and we don't need to waste our time on waiting for me to give everyone who plans to attend the flags then. Thank you!19:44
AlanBellevening19:55
itmannen5 min left ?19:56
Myrttiapproximately yes.19:56
itmannenOk19:56
Rcartplease join #ubuntu-classroom-chat for comments (:19:57
itmannenOk19:57
Myrttiif you've got nickserv account, now is the time to identify19:58
Myrttiif you don't now is the time to register19:58
=== ChanServ changed the topic of #ubuntu-classroom to: Welcome to the Ubuntu Classroom - https://wiki.ubuntu.com/Classroom || Support in #ubuntu || Upcoming Schedule: http://is.gd/8rtIi || Questions in #ubuntu-classroom-chat || Current Session: Introduction to being an IRC Operator - Instructors: Myrtti
Myrttiif you don't want to, that's ok, but a bit more messy19:59
ClassBotLogs for this session will be available at http://irclogs.ubuntu.com/2012/03/12/%23ubuntu-classroom.html following the conclusion of the session.19:59
Myrttialright then20:00
MyrttiThere will be times when I'll be inviting questions, but feel free to ask any time if you need help. You can ask your question either on this channel, or in #ubuntu-classroom-chat.20:01
MyrttiIf you've not yet msg'd me with the NICKSERV accountname you're using, or asked to have a hostmask added to our sandpit channel, now is the time to do it, so we can get you all set.20:01
MyrttiAlso, if you notice a mistake in what I'm teaching to others or you have a suggestion on how to do things better, feel free to ask!20:02
Myrttihi, I'm Myrtti, or Miia Ranta, and I've been an IRC addict since 1996. I started using IRC with mIRC in IRCnet, and have gradually moved up in the networks and ranks and am currently op in many Ubuntu IRC channels, and member of freenode staff.20:03
MyrttiWe will expand this class into how to do all the dirty work quickly and easily with irssi and tmux so if you're planning to do that, you can first start tmux, and then start irssi inside it.20:03
MyrttiIf you're planning to you some other client, like XChat, connect to freenode with the GUI tools, or wait a few minutes and I'll show how you can connect with the commands. I'll come back to how you can autoidentify to NickServ later on. I know many people like to use pidgin or other clients for IRC, but things are considerably easier if you use either irssi or XChat. Bitlbee can help you in the conversion from Pidgin/Empathy to a ...20:03
Myrtti... proper IRC client, and you can ask about it later on, I can help with it a bit and I'm sure there's plenty of others who can help with it better than I can.20:03
MyrttiSo let's start with the lesson!20:06
MyrttiOnce you have started irssi (with or without screen or tmux), you can set your nickname with20:06
Myrtti/set nick yournickname20:06
Myrttialternate nick with20:06
Myrtti/set alternate_nick youralternate20:07
Myrttiand your real name with20:07
Myrtti/set real_name Your Name20:07
Myrttiyou can save the changes you've done to a config file by issuing20:07
Myrtti/save20:07
=== toddc_ is now known as toddcnb
Myrttijust to get you going quickly connected into freenode either with irssi or XChat, type20:07
Myrtti/connect irc.freenode.net20:08
Myrttimost clients accept and use /server irc.freenode.net20:08
Myrttiif you chose to use a nickname you already own, you can identify with20:08
Myrtti/msg nickserv identify accountname password20:08
MyrttiI'll return to other NickServ commands later on. I'm not going to tell you how to register your nickname on freenode as you probably have done it already.20:09
MyrttiYou can now join channels with /join, in irssi you can issue multiple channels in one command, separating the channel names with commas. If the channel has a passkey, it is easier to enter that channel on it's own join command.20:09
Myrtti/join #ubuntu,#ubuntu-sandpit,#ubuntu-classroom20:10
Myrttiin case you missed it, the sandpit channel where you will be able to play is #ubuntu-sandpit.20:11
Myrttiplease wait before starting to kickban people, as fun as it may be it isn't yet time for it :-)20:12
Myrttiyou can leave one or more channels in a similar way that you joined, and you enter a message too20:12
Myrtti/part #ubuntu,#ubuntu-sandpit,#ubuntu-classroom so long and thanks for all the fish20:12
Myrttiubuntu-uhri will demonstrate20:13
Myrttiand quit your client, including a quit message20:13
Myrtti/quit farewell cruel world20:13
Myrttifor more help, you can either ask me or use the inbuilt help command20:14
Myrtti/help20:14
MyrttiYou can swap between windows using Meta (Alt or Esc) combined with 1, 2, 3, 4 etc, followed by q, w, e, r etc for window numbers beyond 10. You can scroll the text with page up and page down.20:14
Myrttifortunately I have no experience on AZERTY keyboards :-P20:14
MyrttiPrivate messages can be started with20:15
Myrtti/query nick20:15
Myrttior20:15
Myrtti/msg nick message20:15
Myrttiany questions so far?20:15
itmannenNo20:15
daxIf you are using another keyboard layout, there are scripts for some to change irssi's keybindings for windows. See for example http://scripts.irssi.org/html/keybinds.pl.html for azerty20:15
Sidewinder1Nah, you're doin' a great job!20:15
Myrttithank you dax ♥20:16
MyrttiNow that we've got IRC basics covered, let's go to op basics. Before we start the actual business, some philosophical reminders about the job.20:16
MyrttiEscalation and catalysing are important things to remember. Person who breaks the guidelines should be warned first, and from there on the actions should be slowly be escalated if no reasonable result isn't achieved. Usually the route goes by *warning* -> *mute* -> *remove* -> *removeban*.20:16
MyrttiFreenode philosophy has an excellent essay about catalyzing, I wholeheartedly suggest everyone should read it. http://freenode.net/catalysts.shtml20:17
Myrttiand before someone of my staff colleagues slaps me on the fingers, I take the blame for mistyping freenode with a capital f.20:17
Myrttimea culpa.20:18
MyrttiThe main point to be remembered is that mute/remove/ban isn't supposed to be considered a punishment, but rather a way of preventing more harm done. It should be possible for every single ban to be negotiated and resolved, if not by an op, then by the escalation process.20:18
MyrttiRemember: Everything that applies for normal user applies for supporter https://wiki.ubuntu.com/IrcGuidelines. Everything that applies for supporter of the channels applies for you https://wiki.ubuntu.com/IRC/SupportersGuide.20:19
MyrttiAnd most of all, both the normal and Leadership Code of Conduct applies to you the operator as well. http://www.ubuntu.com/project/about-ubuntu/conduct and http://www.ubuntu.com/project/about-ubuntu/leadership-conduct. Behave accordingly. This session will not go into depth with these documents, so we'll move on to the actual training part.20:19
MyrttiJust a reminder, if you're not yet in the sandpit channel, you can join with issuing /join #ubuntu-sandpit20:20
Myrttiplease msg me your nickserv accountname if you want to play :-)20:20
Myrttias mentioned by dax in -chat, https://wiki.ubuntu.com/IRC/IrcTeam/OperatorGuidelines is also relevant in the context of being an Ubuntu op.20:21
itmannenMyrtti<<  itmannen20:21
Myrttiso, any questions so far? itmannen?20:22
itmannenNo. I understand what you type so far20:23
bkerensa:)20:23
Myrttino?20:23
Myrttilet's continue then.20:23
MyrttiAs per freenode recommendations, the IRC team has advised to op up (and stay opped) only when needed. This encourages users to not to ask for support specifically from the ops (in PM or publicly) and atleast in theory will facilitate non-op users to catalyse situations equally to the actual ops, creating a more equal atmosphere.20:24
MyrttiAt the end of the lesson I will give a few aliases on how to automate opping up/down for certain commands. There are also scripts that will do the same functionality. About those later on. Now for the actual commands. You can now op up on the sandpit channel20:25
Myrtti/msg chanserv op #ubuntu-sandpit nickname20:25
Myrttiif you're not able to, the flags aren't set to allow you to do so.20:26
Myrttianyone having trouble?20:27
Sidewinder1Yes!20:27
Sidewinder1X_Chat..20:28
MyrttiSidewinder1: try now?20:28
Sidewinder1K20:29
Sidewinder1#ubuntu-sandpit :You're not a channel operator20:29
Sidewinder1-20:29
Myrttinow you are - I opped you - let's move on20:30
Sidewinder1Thanks.20:30
MyrttiLet's follow the escalation route and start with mute. Mute is a way to prevent users from sending to channel and/or others from seeing the text they send. Mute can be set with20:31
Myrtti/mode +q nickname*!*@*20:31
Myrttiyou can use ubuntu-uhri as a helpless victim for your practice20:31
itmannen#ubuntu-classroom :You're not a channel operator20:32
Myrtti/msg chanserv op #ubuntu-sandpit nickname20:33
Myrttiyou should be able to20:33
itmannen /msg chanserv op #ubuntu-sandpit itmannen20:33
MyrttiThis prevents the user from sending messages to the channel. If the channelmodes include +z, then people opped can see what the muted say. We will return on what all the bits are on the command we used later on when we discuss bans more.20:33
MyrttiSome of you may be familiar with /kick - in Ubuntu IRC channels we usually use remove command. Some IRC clients, like irssi, don't include this command at all, and so you have to give it as a direct command to the server with /quote. Thus, instead of /kick we use /quote remove.20:34
MyrttiRemove is used for few reasons, the most important one being that usually IRC clients do not include so-called "autorejoin on kick"-functionality. As the old proverb of the jungle says: "Kick is not an invite" - If we've decided to remove you from the channel for one reason or another, it is unlikely that things change in the split second you've rejoined.20:34
MyrttiCombined with a kick or remove, ban is the next up tool. Bans are set up just like quiets are, but as ban is available in all networks, users know how to bypass it by changing their nicknames and rejoining the channel. This is known as banevasion, and it's bad enough to be prohibited by freenode TOS.20:35
MyrttiIf a banevader is cloaked and is persistant enough in evasion, freenode may revoke their cloak and/or not issue a cloak as it would be possible to use the cloak as a tool of banevasion. Your client should know how to set bans based on only nicknames by using /ban command.20:36
Myrtti/ban nickname20:36
Myrttithis should work atleast in irssi - someone is undoubtedly going to correct me if it doesn't for other clients20:36
Myrttiother way of expressing bans is the traditional mode +b20:36
pipedreamcan you explain more about "cloak" ?20:37
Fuchspipedream: a cloak overrides the real host of the user. It is the part right of the @20:37
Fuchspipedream: see http://freenode.net/faq.shtml#cloaks20:37
Myrttiso cloaks are the bit that can hide your hostname or ip address20:37
Fuchspipedream: usually you have  nick!ident@host  (which Myrtti will explain), the cloak will override the host part20:37
Myrttiit can be used as either a way just to hide your hostname part, or to show your affiliation to a project, and often by that rights to certain actions on channels.20:39
MyrttiBans are set more generally against a hostmask, that is: nickname!username@hostmask, or more seldomly against a username or a realname. We will touch only the most common usecase of the aforementioned kind, if you need to ban someone by username or realname, ask for help when the need arises. When using a hostmask for banning people, please use appropriate * or ? wildcards.20:40
MyrttiFor example, nickname*!*username@hostmask, nickname*!*@hostmask, *!*@hostmask, or different ip ranges. Cloaks can be wildcarded the same way IP addresses and hostmasks can, for example *!*@dsl-hkibrasgw*.dhcp.inet.fi would ban everyone connecting to IRC from the Helsinki gateway of Sonera, one of the biggest ISP's in Finland, while *!*@*.staffs.ac.uk bans everyone from Staffordshire University.20:40
MyrttiWhen using wildcards, try to include the smallest possible range that you think will prevent the user from evading their ban. If you do end up setting a ban on a large range of addresses then make it a banforward to #ubuntu-ops or #ubuntu-irc, or similar so anyone accidentally caught by it can be helped around it.20:42
Jordan_UMyrtti: Why nickname*!*username@hostmaks and not just nickname!username@hostmask?20:42
MyrttiOne thing to worth noting is the username field, the *!username@* part. If it does not start with a tilde ~, the user connects from a computer or server running identd. identd operates by looking up specific TCP/IP connections and returning the user name of the process owning the connection. In those cases the user can't change the username on their clients and it is safe to assume that while they are connecting from that ...20:42
Myrtti... machine, their username stays the same.20:42
pipedreamwhat is a "banforward"?20:43
Myrttipipedream: it will come later on20:43
MyrttiJordan_U: because the most common way of changing your nick is appending it with _20:43
Jordan_UMyrtti: Thanks.20:43
Myrttiand the * is explained by the above ident tilde20:43
Myrttiin the ident field20:43
Myrttiany more questions?20:44
MyrttiBanforwards are used to guide users to other channels. Their main uses in Ubuntu IRC channels are to guide people to the #ubuntu-ops channel, or if a user has a client that is misbehaving disruptively (disconnecting and rejoining channel on quick succession in a way which is disturbing the discussion or channel itself) to ##fix_your_connection.20:45
MyrttiBanforwards are set just like normal bans, but at the end of the banmask the channel you want the user to be forwarded to is appended by $<channelname>, for example $#ubuntu-ops. Since some clients use autorejoin on kick, this is one of the usecases where using kick instead of remove is valid. Just remember to set the banforward *before* kicking. The banforwards are set with20:45
Myrtti/mode +b nick!username@hostmask$##fix_your_connection20:46
Myrtti[22:47] *** ubuntu-uhri [~myrtti@unaffiliated/myrtti/bot/ubuntu-uhri] has joined  ##fix_your_connection20:47
MyrttiIf you are forwarding someone to ##fix_your_connection, please join the channel yourself to see when their connection stabilises.20:48
MyrttiRun-by-trolling/spamming attack participants can be unbanned after few hours without discussing it with them, as nicknames, usernames and often ip's are throwaway ones or drone machines and they are unlikely to be used again, and freenode usually responds to big scale multiple channel attacks with K-lines (network bans). It is important to try to keep the ban list as short as possible. Otherwise, unbanning should be done only ...20:49
Myrtti... after discussing with the banned person and telling them why they were removed and banned from the channels, either in PM or #ubuntu-ops, #ubuntu-irc or whichever channel you use for your ban arbitration. Unbanning can be done with20:49
Myrtti/mode -b nickname!username@hostmask20:49
Myrttiie. reversing the command the ban was set with.20:50
Myrttiyou might have guessed that unmuting is -q :-)20:50
MyrttiThere is a bit more to being an op, but usually those situations are such that more than one operator are present and can help you. Please do ask for help when you need it.20:50
MyrttiYou can unop yourself with two methods, one by doing it directly yourself and the other by asking chanserv to do it.20:50
Myrtti/mode -o nickname20:51
Myrtti/msg chanserv op #ubuntu-sandpit -nickname20:51
MyrttiQuestions, please of help, "omg I'm banned in the sandpit and I can't help it"?20:51
Myrttipleas, even20:51
Sidewinder1I took Ops, then removed Ops; now, I can't seem to take Ops anymore? ;-(20:53
Myrttitrue, that's because the flags are a bit wonky, but that doesn't really matter too much now20:53
Sidewinder1NP.20:54
Myrttilet's continue then.20:55
MyrttiDuring the years of being an op in Ubuntu IRC channels, I've used both scripts and aliases to interface with nickserv and chanserv and to perform the ops tasks. For years I've used only aliases instead of scripts as I can better monitor and fix what they do. These aliases are for irssi, but you can modify them for XChat quite easily. There are some instructions on how in https://toxin.jottit.com/xchat_user_commands, irssi $C is ...20:55
RcartMyrtti: How freenode keeps track of all user (banned, removed) states?20:55
Myrtti... %c in XChat, irssi $N is %n in XChat, $0 is %1 in XChat and so on. Quassel has the similar mechanics and most other good IRC clients as well, but I will not discuss them here. Please share your information on them in -chat, I'll mention it in the end of the session.20:55
MyrttiRcart: you mean serverside? magic and unicorns. I'm fresh to the job so I've not done a deep plunge into how services and ircd works.20:56
LetoThe2ndnotice: i set +b on myself, but i stayed in the channel. due to special situation that is?20:56
RcartMyrtti: yes, about that.20:56
MyrttiLetoThe2nd: no, you can be banned and stay on the channel20:56
daxbans stop you from joining the channel. they don't stop you from being in it.20:57
LetoThe2nddax: ah.20:57
dax(they also stop you from talking, like +q)20:57
Myrttiyou need to be removed by /quote remove or /kick or leave yourself, then you can't join it back20:57
Myrttior what dax said.20:57
LetoThe2ndunderstood20:57
bkerensaI am following along in silence fyi20:57
Myrtticontinuing on the aliases20:57
MyrttiI have posted these aliases on my website and I'll give the link after I've explained them here first and finished the tutorial.20:58
Myrtti/alias NS /^msg nickserv20:58
MyrttiHow do aliases work? Alias sets a shortcode for combining or renaming commands. For example this one creates an alias called NS, which is /^msg nickserv - /^msg directs the command in irssi to the statuswindow (window 1) and doesn't log the messages if you've set to log all your private messages.20:58
Myrtti/^msg is an irssi specific command though, other users might want to use /msg instead of it20:59
MyrttiI'll skip some aliases that are in the files as they are quite selfexplanatory21:00
dax(/ns and /nickserv are also available as server-side commands, so clients that pass unknown commands to the server (which is most of them, not including irssi) will work with them by default)21:00
Myrttiaw, I should have let you read the script :-P21:01
daxoops, sorry21:01
Myrttioh well.21:01
Myrttino, good comment21:01
MyrttiI'm ignoramus on other clients21:01
Myrtti/alias BANS /mode +b;/mode +q21:01
Myrttithis command lists all the bans and quiets on the channel you are on, if you're allowed to see them by the channel flags.21:01
Myrtti/alias BANSEARCH /msg ubottu @bansearch21:02
Myrtti/alias BANLOGIN /msg ubottu @login;/msg ubottu @btlogin21:02
Myrttiif you've got access to ubottu's ban database, you might find these aliases useful. First one searches the database, but isn't too reliable. The latter combines both login commands, the one you need for the bot to recognise you and the second which gives you a link to the bantracker.21:02
Myrtti/alias CS /msg chanserv21:03
Myrtti/alias CSHELP /msg chanserv help21:03
Myrtti/alias CSACCESS /msg chanserv access $C list21:03
Myrttithis command gives you the access list of the channel you are on21:03
Myrttigiven you have flags for viewing it.21:03
Myrtti/alias CSOP /msg chanserv op $C $021:04
Myrttithis command is short for the command that we used in the beginning of the session to op up or if given a nickname in the end, someone else. Usage:21:04
Myrtti/csop nickname21:04
Myrtti/alias CSDEOP /msg chanserv op $C -$021:04
Myrttiand this is the the deop command21:04
Myrtti/alias CSMODE /msg chanserv op $C $N;/wait 2000;/mode $0;/msg chanserv op $C -$N21:05
Myrttithis command will help you set channelmodes, if mlock isn't set21:05
Myrtti/alias CSINVITE /msg chanserv op $C $N;/wait 2000;/invite $0;/msg chanserv op $C -$N21:05
Myrttiwill invite someone to a channel you're on, if you're an op21:05
Myrtti/alias CSTOPIC /msg chanserv op $C $N;/wait 2000;/topic $0-;/msg chanserv op $C -$N21:05
Myrttiand this will help you change the topic. Please see /cshelp TOPICAPPEND and TOPICPREPEND for other ways of getting ChanServ help you with setting the topic.21:05
Myrtti/alias CSMUTE /msg chanserv op $C $N;/wait 2000;/mode +zq $0;/msg chanserv op $C -$N21:06
Myrttithis alias helps you mute21:06
Myrtti/alias CSREMOVE /msg chanserv op $C $N;/wait 2000;/quote remove $C $0 :$1-;/msg chanserv op $C -$N21:06
Myrtti/alias CSREMOVEBAN /msg chanserv op $C $N;/wait 2000;/quote remove $C $0 :$1-;/ban $0;/msg chanserv op $C -$N21:06
MyrttiRemove and Removeban aliases are used with:21:06
Myrtti/csremove nickname reason21:06
Myrtti/csremoveban nickname reason21:06
Myrtti/alias CSR /msg chanserv op $C $N;/wait 2000;/quote remove $C $0 :Please see https://wiki.ubuntu.com/IrcTeam/AppealProcess if you feel mistreated;/msg chanserv op  $C -$N21:07
Myrtti/alias CSRB /msg chanserv op $C $N;/wait 2000;/quote remove $C $0 :Please see https://wiki.ubuntu.com/IrcTeam/AppealProcess if you feel mistreated;/ban $0;/msg chanserv op  $C -$N21:07
Myrttithese already have the kickreason, please feel free to change them accordingly to suit your needs.21:07
MyrttiNote that there are no quickaliases for unbanning, unmuting or doing banforwards. I've found it better to do them by hand.21:08
Myrttiirssi aliases: http://myrtti.fi/irssialiases21:08
Myrttixchat aliases: http://myrtti.fi/xchataliases21:08
EvilResistanceMyrtti, 404 eqivalent errors on xchat21:08
EvilResistancexchataliases*21:08
Myrttialright, I'll have a look21:08
Fuchshttp://myrtti.fi/xchatalias  looks better21:09
EvilResistanceyep21:09
Myrttiplease refresh it21:09
MyrttiI had forgotten I was still hacking some fixes into it.21:09
LetoThe2nda short explaination on the parameters in the alias?21:10
EvilResistanceLetoThe2nd, in which, irssi or xchat?21:10
LetoThe2nde.g. $C $N, and so on21:10
EvilResistanceah21:10
LetoThe2ndEvilResistance: irssi preferred21:10
MyrttiN is nick, C is channel you're on21:10
LetoThe2ndah, $01, $1 is bash style?21:10
LetoThe2nd$0, $1, even21:11
Myrtti0 and 1 in irssi and 1 and 2 in xchat are the next parameters21:11
Myrttiyes.21:11
EvilResistancein xchat, its % though21:11
LetoThe2ndunderstood, thanks21:11
EvilResistanceMyrtti, ^21:11
EvilResistance(restating the earlier statements)21:11
MyrttiEvilResistance: which is why there is two files with different aliases21:11
Myrttione for irssi and one for xchat21:11
EvilResistancemhm21:11
EvilResistancehmm... Myrtti, where're you getting /alias from in xchat?21:12
EvilResistancethere's no command stored for that21:12
Myrttihm.21:12
EvilResistancelast i checked, you had to write custom scripting for aliases, or use their "User commands" thingy, which isnt as dynamic as irssi aliases21:12
* EvilResistance actively uses xchat21:12
Myrttihttps://toxin.jottit.com/xchat_user_commands has the instructions for it21:12
EvilResistancemhm21:13
EvilResistanceFYI though: its not 100% reliable though21:13
Myrttisorry, there is no direct or easy way of doing them.21:13
EvilResistanceMyrtti, indeed ;P21:13
MyrttiUSE IRSSI. ahem.21:13
Myrtti:-P21:13
EvilResistance:P21:13
MyrttiNow we're moving to irssi only area of this tutorial. If you choose to drop off at this point, thank you for the questions and interest, and hope to see you soon in an Ubuntu IRC channel near you :-)21:13
MyrttiI'd still recommend you'd stay, for fun and profit.21:14
itmannenMyrtti<<  Can I have both xchat and irssi open21:14
Fuchsitmannen: you can have multiple connections to freenode, yes. Note that nicks are unique, though21:15
Fuchsitmannen: you could use a bouncer to connect with several clients to the same user21:15
itmannenI am nobe on irssi21:15
itmannenFuchs<<  ok21:15
MyrttiSome useful scripts for irssi that I've used for years are available in the "irssi-scripts" package and some need to be downloaded from scripts.irssi.org or other websites. To enable scripts to autorun when irssi is launched, download / symlink them to .irssi/scripts/autorun21:15
Priceyirssi-proxy in screen ftw21:15
Fuchsitmannen: having a bouncer might be helpful anyway if you are not using irssi on a server in screen or so, if you need logs or have other reasons for staying connected 24/721:16
MyrttiIf you want to manually load them, use /script load <path to the script>21:16
itmannenFuchs<<  Aha. Good21:16
Myrttisplitlong.pl21:16
Myrttisplits the entered text to snippets long enough not to get cut off and into multiple messages21:16
Myrttitrackbar.pl21:16
Myrttidraws a line of characters where the discussion was left when window was changed21:16
Myrttiautoaway.pl21:16
Myrttisets away after a certain time idling21:16
Myrttiscreen_away.pl/tmux_away.pl21:16
Myrttisets away after detaching from screen/tmux session. Tmux version is available in http://cybione.org/~cdidier/code/misc/tmux_away.pl21:16
Myrtticap_sasl21:17
Myrttienables identifying with SASL. Available from http://freenode.net/sasl/cap_sasl.pl - We will return to this later on21:17
Myrttinickcolor.pl/format_identify.pl21:17
Myrtticolours the nicks with different colours. Format identify does all that, *and* differentiates those who are identified from those who aren't.21:17
Myrttinoisy_query.pl21:17
Myrttinotifies you on the window you're in that you've got a new query, and notifies who it is with21:17
Myrttiautowhois.pl21:17
Myrttiautomatically whoises whoever starts a query with you.21:17
MyrttiNow that you've got basics figured out, here's some extra information about irssi that you might find useful.21:18
MyrttiPlease have a look at21:18
Myrtti/set21:18
MyrttiIt contains several different settings you can have in your irssi.21:18
Myrttiwhen you change the settings, always remember to save them with /save.21:18
Myrttitry not to edit the configuration file by hand if you can help it.21:18
Myrttiyou can change how even some scripts work with /set21:19
MyrttiYou can move window order in irssi with21:20
Myrtti/window move <number>21:20
Myrttiso they are in the order you'd like them to be in.21:20
Myrttiyou can save the layout for later on with21:20
Myrtti/layout save21:20
MyrttiIf you've got more than 20 windows, you might find it helpful to add the keybindings listed at http://niklas.laxstrom.name/page/eng/irssi - it allows easy window swapping up to 100 windows.21:20
silverliono/21:20
Unit193There is also /win num to swap the windows.21:21
* itmannen_ testing irssi. Sorry21:21
MyrttiYou can change how your irssi looks like by changing your terminal colour scheme and changing the theme irssi is using. Themes with screenshots can be found in http://irssi.org/themes - there are few that I've made or modified (but the ones on the website are a bit old, if you like mine, I'm happy to send you a copy). You can change the theme to a one you've downloaded into your .irssi directory by typing21:22
Myrtti/set theme name_of_the_theme.theme21:22
Myrttiremember to /save :-)21:22
Myrttiany questions so far?21:23
daxpink detected21:23
Myrttipink mentioned21:23
MyrttiIt's easy to search for a word in the buffer21:24
Myrtti/lastlog word21:24
Myrtti/lastlog is aliased to last, and it can be used for casesensetive search, regexps, pass the log to a file etc. Use /help lastlog for more information. You can clear the screen from /lastlog output with /lastlog -clear21:24
MyrttiIf you've got something in your awaylog or elsewhere you want to see the context of, you can see if it is still in your buffer and move to certain timespot on that, you can use /scrollback, which is aliased to /sb21:24
itmannen_Myrtti: Where can I download themes21:24
Myrtti/sb goto 08:0021:24
Myrttimoves the scrollback to timestamp 08:00, and21:24
Myrtti/sb end21:24
Myrttireturns you back to the latest happenings21:24
Myrttiitmannen_: you can download themes at http://irssi.org/themes21:24
itmannenThanks21:24
Myrttiand download them to your .irssi directory21:24
itmannenOk21:25
Myrttithe link to the actual theme file is underneath the thumbnail21:25
Myrttiany questions so far?21:26
itmannenYes. a lot :D21:26
itmannenGo ahead21:27
Myrttiyou can btw return to this classroom material later on as the logs will be published.21:27
itmannenGood21:27
Myrttiso if you think you've not noticed something the logs will be there21:27
Myrttiwe'll be moving on to a bit more difficult area which even I can't claim to master.21:28
silverlionone question ... as an op, do we have to use irssi or can we choose whatever client we want?21:28
Myrttiyou can use whatever client you want which you can actually use to perform your ops duties21:28
daxMost dedicated IRC clients support all the functions you'd need to op. Some of them are more efficient at it than others.21:29
silverliondax: pls state some examples? i am very happy with x-chat so far21:29
daxsilverlion: of good or bad ones?21:29
Myrttixchat, irssi, quassel are I think the most popular ones21:29
silverliondax: either side ;)21:29
itmannenMyrtti<<  Why is irrsi a btter client for you21:29
Myrttiitmannen: we can discuss that later on21:30
itmannenok21:30
daxsilverlion: I've seen ops and/or staffers competently using xchat, irssi, weechat, quassel, konversation, kvirc21:30
Fuchssilverlion: Pidgin and any other IM client you can imagine as bad ones21:30
Myrttisilverlion: pidgin and empathy aren't dedicated IRC clients and I wouldn't recommend their usage for any serious IRC unless you've got a massive streak of masochism.21:30
Fuchssilverlion: also bitchx (which fortunately is dead) as a bad one21:30
dax(for what it's worth, I've heard empathy folks say the same thing. it's not that Empathy is crap, it's that IRC is not what it's designed for)21:31
Myrttioh yes, let's not go to that, I'll start ranting about away messages.21:31
Myrttianyway21:31
FuchsMyrtti: maybe a small note on IRC behaviour would not be bad, including away nicks and -messages ;)21:31
silverlionas i am tied to linux for the next few weeks (my main computer is sent in for maintenance) i'll think about using x-chat21:32
=== silverlion is now known as SilverLion
MyrttiFuchs: let's not. I have nothing polite to say and we're running out of time21:32
Fuchssilverlion: XChat is fine, just don't use XChat-Gnome21:32
FuchsMyrtti: okay, sorry :)21:32
Myrttiso - the part that I'm not so familiar with and I can't personally help you with too much21:32
MyrttiI've had to do it only once and I don't plan to do it again on my irssi for a while...21:33
MyrttiIf you are running your irssi on a relatively new Ubuntu installation, you've already got some settings in. However, it might be wiser to do it properly from scratch instead of playing on the defaults. I'll assume that you want also the safest and recommended way of connecting to freenode too, so we'll add a few bits. If you're the admin of your server, you should be able to install the extra bits and pieces to enable SSL and ...21:33
Myrtti... SASL. On Ubuntu the relevant packages are ca-certificates libcrypt-blowfish-perl libcrypt-dh-perl libcrypt-openssl-bignum-perl libmath-bigint-gmp-perl. If you can't install the packages with the package management, you can try to install them with CPAN: Crypt::Blowfish Crypt::DH Crypt::OpenSSL::Bignum Math::BigInt Math::BigInt::FastCalc Math::BigInt::GMP - if you need to use CPAN, you still need to check you've got the needed ...21:33
Myrtti... certificates.21:33
dax(for the Debian folks, the package names are the same)21:34
MyrttiI have no experience on this part at all - I run my irssi on a hosted server and all I needed to do was to email to the admins and ask them pull the Debian packages21:34
MyrttiWe've connected using /server earlier, but let's start from the bottom up.21:36
MyrttiDownload the script to your .irssi/scripts21:36
Myrttimake a symbolic link into .irssi/scripts/autorun/cap_sasl.pl21:36
Myrttiand let's first check that we've got the script loaded, with21:36
Myrtti/script load cap_sasl.pl21:36
Myrttior21:36
Myrtti/script load autorun/cap_sasl.pl21:36
Myrttiand set the script up with21:36
Myrtti/sasl set Freenode registerednickname password DH-BLOWFISH21:36
Myrtti/sasl save21:36
Myrtti/save21:36
MyrttiMAKE SURE YOU ISSUE THE COMMANDS IN THE STATUS WINDOW - at /w 121:37
Myrttinow is the time to reveal a weakness in irssi21:38
dax(I note that "registerednickname" must be your nickserv accountname, not another grouped nick)21:38
Myrttiirssi uses a plaintext config file, and if you've got autosendcmd or server password for your nickserv account identifications, they will be in plain text. Likewise the sasl password will be in a plaintext file21:39
Myrttiif you want more security and are running irssi on your own machine/shell, have a look at http://pthree.org/2012/02/28/encrypt-your-irssi-config/21:41
Myrttiit's not pretty or optimal though.21:41
Myrttionce you're past this stage, the script loads nicely etc. we can continue21:41
Myrttinow we can start configuring irssi the way we'd normally configure it21:42
Myrttifirst by adding a network21:42
Myrtti/network add freenode21:42
Myrttifor more options please see /help network, and then add a server to it with21:42
Myrtti/server add -auto -ssl -ssl_verify -ssl_capath /etc/ssl/certs -network freenode irc.freenode.net 700021:42
Myrttithis adds a server, which connects automatically using ssl certificates in /etc/ssl/certs, to the network freenode, at address irc.freenode.net at port 7000. To add channels, issue21:42
Myrtti/channel add -auto #ubuntu freenode21:42
Myrttiwhich adds channel #ubuntu in freenode to be joined automatically.21:42
Myrtti/save21:42
Myrttito save the settings to a file.21:43
MyrttiIf you've set up your client the way instructed here, you can now enter the aliases in the link http://myrtti.fi/irssialiases and they work no matter how many networks you've got your irssi connecting to.21:43
Myrttiany questions?21:43
Myrtti(I can try to answer questions, but I probably can't help you installing the dependencies for cap_sasl.pl to work, sorry)21:44
itmannenI try later on21:44
EvilResistanceMyrtti, cap_sasl.pl exists for xchat, works OOTB except on Windows.  Also, see privmsg.21:44
MyrttiWindows is our special snowflake21:46
EvilResistancemmm, you'd be surprised how many ubuntuers get stuck on Windows due to drive failures :/21:46
MyrttiI'll have a few words about screen and tmux. They are meant to keep your processes and programmes alive even if you end your session in a TTY or ssh. Byobu is moving from screen to using tmux and I've also found tmux to give better results even if used only for irssi management, as UTF-8 characters that might cause trouble are shown better with tmux.21:46
itmannenWindows ? What is that ? :)21:46
MyrttiI won't go into further details in this session than mentioning that if you have an access to a linux machine that is on 24/7 and you can ssh into, be it a shell server hosted by your friends, a shell account provider, an old box you keep running all the time or a dedicated device, NSLU-2/Viglen MPC-L or similar, this might be a good way to do your IRCing. irssi can handle several server connections and windows up to 1000, ...21:46
Myrtti... although it is a bit painful at that time.21:46
MyrttiIf you are using screen, you can detach your session with ctrl-a-d. You can reattach it with21:47
Myrttiscreen -x -- this attaches the session to where you are issuing the command now, but if it's open elsewhere, keeps it open there as well21:47
Myrttiscreen -dr -- this deattaches the ongoing session if such exists and reattaches in where you're issuing the command21:47
Myrttiscreen -Dr -- this deattaches the ongoing session *and* disconnects SSH connection if such exists and reattaches in where you're issuing the command. Perfect if you're paranoid over if you remembered to disconnect the SSH.21:47
MyrttiIf you are using tmux, you can detach your session with ctrl-b. If you've got an Android phone, I strongly suggest you change the keybinding for that to the same as what screen uses, as the best Android SSH client for irssi usage has shortcuts for screen keycombos.21:48
Myrtti(irssi connectbot, which also has a channel on freenode - unsurprisingly #irssiconnectbot)21:49
ClassBotThere are 10 minutes remaining in the current session.21:49
MyrttiMy .tmux.conf file is21:49
Myrttiset -g prefix C-a21:49
Myrttiset -g status off21:49
Myrttiset -g detach-on-destroy on21:49
MyrttiI don't however use tmux for anything else than irssi session management, so you might want to set it to your own needs.21:50
MyrttiIf you are using tmux, you can reattach the session with21:50
Myrttitmux -a -- this attaches the session to where you are issuing the command now, but if it's open elsewhere, keeps it open there as well21:50
Myrttitmux -a d -- this deattaches the ongoing session if such exists and reattaches in where you're issuing the command.21:50
Myrttiand  - that was it.21:50
Myrttile finis21:50
* AlanBell claps21:50
* Fuchs claps21:50
Myrttiany questions?21:50
itmannenThank you for a good lesson21:50
RcartMyrtti: how do u specify a session in screen?21:51
* LetoThe2nd pop a bottle of champagne21:51
AlanBellthanks Myrtti, I will have to go read that through again slowly :)21:51
MyrttiRcart: that is a good question which I unfortunately can't really answer beyond what I can read from "man screen" :-|21:52
daxRcart: as in telling it which one to reconnect to if you have more than one?21:52
Myrttibut yeah, the answer is depending on what you need to specify it for21:52
daxif so, `screen -ls' will tell you information about them like PID that you can use as an option to screen -r21:52
LetoThe2ndMyrtti: one small thing: in the cap_sasl example you gave, you referred to irc.freenode.net:6667, right?21:53
Rcartdax: yep21:53
MyrttiLetoThe2nd: no, I used a port and command that enable SSL as well21:53
Rcartdax: Oh, great (:21:53
dax"All freenode servers listen on ports 6665, 6666, 6667, 6697 (SSL only), 7000 (SSL only), 7070 (SSL only), 8000, 8001 and 8002."21:53
RcartMyrtti: Thanks for the talk o/21:54
ClassBotThere are 5 minutes remaining in the current session.21:54
dax(just in case anyone was wondering which ports are valid)21:54
itmannenGoodby and thank you21:54
LetoThe2ndMyrtti: i see. no idea where the 6667 in the config came from, manually setting it to 7070 fixed it anyway21:55
daxLetoThe2nd: it's the default port, so possibly you missed setting one originally21:55
LetoThe2nddax: yeah, probably21:55
Myrttiitmannen: so why I use irssi? it's especially nice if you are a student and need to change the computer every now and then, or travelling21:55
itmannenMyrtti<< Ok.21:56
benonsoftware /mode21:56
AlanBellif anyone wants to carry on playing in -sandpit feel free to do so21:56
daxPersonally, I use irssi because of what Myrtti said and also because I've used other IRC clients and it takes more time for me to do things in them, especially the GUI ones.21:56
AlanBelldo some bans and quits and quiets etc21:56
Myrttiyup, feel free to fiddle - the channel will be closed down at some point though21:57
MyrttiI hope I had something new for everyone21:57
LetoThe2ndgetting too late. thanks and good night!21:57
Myrtti--> https://wiki.ubuntu.com/IRC/IrcTeam/OperatorGuide#Useful_Scripts irssi, xchat, and quassel.21:57
Myrttithank you everyone21:58
AlanBellwell done Myrtti :)21:59
Myrtti\o/21:59
ClassBotLogs for this session will be available at http://irclogs.ubuntu.com/2012/03/12/%23ubuntu-classroom.html21:59
FuchsDefinitely, yes  :)21:59
=== ChanServ changed the topic of #ubuntu-classroom to: Welcome to the Ubuntu Classroom - https://wiki.ubuntu.com/Classroom || Support in #ubuntu || Upcoming Schedule: http://is.gd/8rtIi || Questions in #ubuntu-classroom-chat ||
* Fuchs hands Myrtti a bunch of flowers and wanders off21:59
=== yofel_ is now known as yofel
bkerensa:D22:30
bkerensaMyrtti: Do you have the link to your site with the aliases? I had to pop out halfway through22:32
Myrttiirssi aliases: http://myrtti.fi/irssialiases22:32
Myrttixchat aliases: http://myrtti.fi/xchataliases22:32
EvilResistanceMyrtti, http://myrtti.fi/xchatalias, no?  i thought xchataliases 404;d22:35
EvilResistanceoh nevermind :p22:35
EvilResistanceits been fixed xD22:35
Myrttiof course it was fixed22:36
MyrttiI fixed it there and then22:36
Myrttiwas fixed when I told you to refresh22:36
EvilResistanceit still 404'd after that, even after a reboot22:36
Myrtti:-|22:36
EvilResistance(battery died, so...)22:39
EvilResistanceMyrtti, i'm writing your xchat aliases into a script, that can be loaded into xchat on any system that has perl (including Windows), because XChat doesnt have an /alias command22:48
Myrttiyeah, that's nice22:48
EvilResistance(and the syntax in some of your commands is broken anyways, so i'm fixing it as I go)22:48
Myrttibkerensa: ^22:49
EvilResistance'tis a tad difficult, been a while since I coded in Perl22:49
Myrttialright22:49
EvilResistancexD22:49
bkerensaMyrtti: ok :)22:49
EvilResistanceonce its released, I'll throw it your way :p22:49
Myrttigood enough reason and suddenly motivation and need appears22:49
Myrtti:-P22:49
EvilResistancedid I mention Perl on windows is evil as [REDACTED WORDS]?22:50
EvilResistanceMyrtti, i take it you dont use xchat, right?22:56
EvilResistanceor do you?22:56
EvilResistance(I'll need a tester after i'm done converting your aliases into a script)22:56
MyrttiEvilResistance: never have.22:56
MyrttiI moved from mIRC directly to irssi in 200222:57
Myrttiif not earlier22:57
bkerensaI think I moved to mIRC in 199922:58
bkerensawhen I mostly abandoned Windows22:58
Myrttimoved to or from?22:58
bkerensafrom22:58
bkerensa:D22:58
Myrttithat makes more sense22:58
EvilResistanceheh22:58
EvilResistancealrighty, i'll test myself when this is done22:58
bkerensafrom mIRC to BX22:59
MyrttiEvilResistance: do you need ubuntu-uhri for testing?22:59
Myrttior are you fine without?22:59
EvilResistanceMyrtti, #ubuntu-uhri?22:59
ubuntu-uhrihi22:59
ubuntu-uhrime22:59
EvilResistanceoh22:59
EvilResistancei'm not going to be done for a while, i've got calculus lecture shortly22:59
EvilResistancebut it wouldnt hurt to have a tester22:59
EvilResistance:P22:59
EvilResistance(also, xchat scripting with Perl can be *quite* a pain :/)23:00
Myrttiit's irssi so it can be used for testing kicks and such, so not much else23:00
Myrttibut -23:00
Myrttiit's running from my own laptop instead of the shell server so it will go down in abit23:00
Myrttiit's 0100am here23:00
EvilResistanceMyrtti, http://pastebin.com/TVWWjCmj  <-- that's what i've got so far, and i'm only up to nsidentify23:00
EvilResistanceyou can see how complex scripting this is :/23:01
EvilResistance(lots of repetetive code, checking to make sure there are arguments given for commands that need them, etc.)23:01
Myrttiwell, you do realise that there is already nickserv.py or whatnot?23:01
EvilResistancemhm, but not every python xchat script has the functionality of perl xchat scripts23:02
EvilResistancebesides, i dont have python on this machine here23:02
Myrttimmmm23:02
EvilResistanceso i'm stuck with perl23:02
Myrttiok23:02
Myrttiwell anyway, time to head for bed.23:02
Myrttiubuntu-uhri will be back online sometime next 10 hours or so.23:02
EvilResistanceok23:02
Myrttitara23:03
EvilResistance(i'll probably still not be done by then xD)23:03

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!