Category Archives: How to ?

Not permitted to mount disk ? [EN]

A few days ago, I started to have a very disturbing “Not permitted” message when trying to mount a usb disk from Thunar. The only way I found was to pmount the disk : not as intuitive as just clicking the disk on Thunar.

But after some googling, I found where was the real problem : udisk, who is responsible of mounting disks, uses polkit to know if I have the right to mount, or not, external disk. So, if you have the same problem, follow this steps :

sudo nano /usr/share/polkit-1/actions/org.freedesktop.udisks2.policy

(use your favorite text editor in place of nano)

Then, look for the section with “udisks2.filesystem-mount”, inside you’ll have a “defaults” section with interesting stuff :

<defaults>
<allow_any>auth_admin</allow_any>
<allow_inactive>auth_admin</allow_inactive>
<allow_active>auth_admin_keep</allow_active>
</defaults>

Now, replace all “auth_admin*” by “yes” to give access for every user, like this :

<defaults>
 <allow_any>yes</allow_any>
 <allow_inactive>yes</allow_inactive>
 <allow_active>yes</allow_active>
</defaults>

Save your modifications. Forget this annoying message !

How To Forward Outlook Emails With VB Script [EN]

  1. In Windows, create a certificate via Start > All Programs > Microsoft Office > Microsoft Office Tools > Digital Certificate for VBA Projects
  2. In Microsoft Outlook, open the VB editor and copy/paste the code below
  3. Replace your@email.here and save
  4. Click on Tools > Digital Signature
  5. Click on [Choose] and select your certificate
  6. Click OK, then save and close the VB editor
  7. Create the Outlook rule with [run a script] as action and select your macro
  8. That’s all folks !
Private Const TO_EMAIL As String = "your@email.here"
Sub ForwardAllEmail(theMail As MailItem)
	On Error GoTo EndSub
	Dim mailObj As Outlook.MailItem
	Dim item As Outlook.MailItem
	Set mailObj = Application.Session.GetItemFromID(theMail.EntryID)
	Set item = mailObj.Forward
	item.Recipients.Add (TO_EMAIL)
	item.Send
	Set item = Nothing      ' Set variables to null to prevent memory leaks
	Set mailObj = Nothing
	Exit Sub
EndSub:
  MsgBox "Error: " & Err.Description
End Sub

Tmux for the impatient

New session : tmux

Attach to a session : tmux a

Detach : Ctrl+b d

Scroll : Ctrl+b PgUp/PgDown (quit with q) also can use mouse after first page up or down

Copy mode : Ctrl+b [ (quit with q)

Split horizontally : Ctrl+b “

Split vertically : Ctrl+b %

Switch pane : Ctrl+b arrow key

Resize pane : Hold Ctrl+b + arrow keys

 

install xclip so buffer copied insied tmux are also available to X : sudo apt-get install xclip

Substitute a text only in files where it appears

For example, to substitute foo with bar

for f in `grep -lR foo`; do
	echo -n ">> $f";
	sed 's/foo/bar/g' $f > $f.tmp ;
	mv $f.tmp $f ;
	echo " done.";
done
  • 1) for loops on all files containing the text “foo”, grep -l only show the file name with corresponding text inside.
  • 3) sed replace foo with bar in all file
  • 4) mv save the modification (delete if you don’t want to overwrite the original files, the modified files is named with .tmp at the end)
  • 2) & 5) echo: which file is treated

Convert multiple files to utf8 using vim

The fastest and more efficient way to batch multiple files encoding conversion :

vim +"argdo se fileencoding=utf-8 | w | bnext" +"q" ` find . -type f -name "*.rsp" `

+”argdo” : execute the following vim commands for each file (filencode, save and next buffer)

+”q” : quit after last one

find : get all files with corresponding name