Nemo 動作參數
範例 /media/mint/WAPP/LINUX-ISO/ubuntu-16.04-mate-64bit.iso
%f 檔案名稱
範例: ubuntu-16.04-mate-64bit.iso
%F 路徑+檔案名稱
範例: /media/mint/WAPP/LINUX-ISO/ubuntu-16.04-mate-64bit.iso
%N 檔案名稱
範例: ubuntu-16.04-mate-64bit.iso
%p 文件所在目錄名稱
範例: LINUX-ISO
%P 路徑
範例: /media/mint/WAPP/LINUX-ISO
%U URI 路徑+檔名
範例: file:///media/mint/WAPP/LINUX-ISO/ubuntu-16.04-mate-64bit.iso
###################################
掛載映像檔 (Debian/Ubuntu/Arch Linux)
###################################
$ sudo leafpad /usr/share/nemo/actions/mount-image.nemo_action
[Nemo Action]
Active=true
Name=Mount Image
Comment=Mount Image file
Name[zh_TW]=掛載映像檔
Comment[zh_TW]=掛載映像檔
Exec=mount-image '%F' '%N'
Icon-Name=media-optical
Selection=S
Extensions=.iso;.nrg;.NRG;.sqfs;.sfs;.squashfs;
$ sudo leafpad /usr/bin/mount-image
#!/bin/bash
file=$1
name=$2
case "${1##*.}" in
"iso"|"ISO")
sudo mkdir /run/media
sudo mkdir /run/media/$USER
sudo mkdir /run/media/$USER/$name
sudo mount -o loop $file /run/media/$USER/$name
;;
"nrg"|"NRG")
sudo mkdir /run/media
sudo mkdir /run/media/$USER
sudo mkdir /run/media/$USER/$name
sudo mount -o loop,offset=307200 $file /run/media/$USER/$name
;;
"squashfs"|"sfs"|"sqfs")
sudo mkdir /run/media
sudo mkdir /run/media/$USER
sudo mkdir /run/media/$USER/$name
sudo mount -t squashfs $file /run/media/$USER/$name
;;
esac
賦予權限
$ sudo chmod 755 /usr/bin/mount-image
###################################
initramfs 加解密 (Debian/Ubuntu/Arch Linux)
###################################
$ sudo leafpad /usr/share/nemo/actions/initrd-unpack.nemo_action
[Nemo Action]
Active=true
Name=Unpack initrd
Comment=Unpack initrd file
Name[zh_TW]=解壓縮 initrd
Comment[zh_TW]=解壓縮 initrd
Exec=initrd-unpack '%P' '%F' '%N'
Icon-Name=gnome-package
Selection=S
Extensions=-generic;initrd.img;initrd.gz;initrd.lz;initramfs-linux.img;manjaro.img;archiso.img;
$ sudo leafpad /usr/share/nemo/actions/initrd-pack.nemo_action
[Nemo Action]
Active=true
Name=Rebuild initrd
Comment=Rebuild initrd file
Name[zh_TW]=重建 initrd
Comment[zh_TW]=重建 initrd
Exec=initrd-pack '%F'
Icon-Name=gnome-package
Selection=S
Extensions=rootfs;
$ sudo leafpad /usr/bin/initrd-unpack
#!/bin/bash
path=$1
file=$2
name=$3
ftype=$(file -b $file)
cd $path
case $ftype in
"XZ"*)
mv $name initrd.xz
xz -d initrd.xz
mkdir rootfs
;;
"LZMA"*)
mv $name initrd.lzma
lzma -d initrd.lzma
mkdir rootfs
;;
"gzip"*)
mv $name initrd.gz
gzip -d initrd.gz
mkdir rootfs
;;
esac
cd rootfs
cpio -i -F ../initrd
rm ../initrd
zenity --title="initramfs utility" --info --text="extract initramfs successfully."
$ sudo leafpad /usr/bin/initrd-pack
#!/bin/bash
file=$1
cd $file
find . | cpio -o --format=newc > ../initrd
cd ../
gzip -c initrd > initrd.gz
rm -rf initrd
rm -rf rootfs
zenity --title="initramfs utility" --info --text="rebuild initramfs successfully."
賦予權限
$ sudo chmod 755 /usr/bin/initrd-unpack
$ sudo chmod 755 /usr/bin/initrd-pack
###################################
DEB加解密 (Debian/Ubuntu)
###################################
$ sudo leafpad /usr/share/nemo/actions/deb-unpack.nemo_action
[Nemo Action]
Active=true
Name=Unpack DEB
Comment=Unpack DEB file
Name[zh_TW]=解壓縮DEB
Comment[zh_TW]=解壓縮DEB
Exec=deb-unpack '%P' '%F'
Icon-Name=gnome-mime-application-x-deb
Selection=S
Mimetypes=application/vnd.debian.binary-package;
$ sudo leafpad /usr/share/nemo/actions/deb-pack.nemo_action
[Nemo Action]
Active=true
Name=Rebuild DEB
Comment=Rebuild DEB binary-package
Name[zh_TW]=重建DEB
Comment[zh_TW]=重建DEB
Exec=deb-pack '%P' '%F'
Icon-Name=softwarecenter-debian
Selection=S
Extensions=.deb.upk;
$ sudo leafpad /usr/bin/deb-unpack
#!/bin/bash
path=$1
name=$2
cd $path
dpkg -X $name deb
cd deb
dpkg -e $name
cd ../
rm $name
rm deb/DEBIAN/md5sums
mv deb $name".upk"
zenity --title="DEB Utility" --info --text="Extract DEB binary-package Successfully."
$ sudo leafpad /usr/bin/deb-pack
#!/bin/bash
path=$1
name=$2
debname="${name%.*}"
md5dir="bin lib lin64 opt sbin usr"
cd $path
cd $name
find $md5dir -type f -exec md5sum {} > DEBIAN/md5sums \;
cd $path
sudo dpkg -b $name $debname
zenity --title="DEB Utility" --info --text="Rebuild DEB binary-package Successfully."
賦予權限
$ sudo chmod 755 /usr/bin/deb-pack
$ sudo chmod 755 /usr/bin/deb-unpack
###################################
DEB解壓縮 (Arch Linux)
###################################
$ sudo leafpad /usr/share/nemo/actions/deb-unpack.nemo_action
[Nemo Action]
Active=true
Name=Unpack DEB
Comment=Unpack DEB file
Name[zh_TW]=解壓縮DEB
Comment[zh_TW]=解壓縮DEB
Exec=deb-unpack '%P' '%F' '%N'
Icon-Name=gnome-mime-application-x-deb
Selection=S
Mimetypes=application/vnd.debian.binary-package;
$ sudo leafpad /usr/bin/deb-unpack
#!/bin/bash
path=$1
file=$2
name=$3
cd $path
mkdir deb
cd deb
ar p $file data.tar.xz | tar Jxvf -
mkdir DEBIAN
cd DEBIAN
ar p $file control.tar.gz | tar -zxvf -
cd $path
rm $name
mv deb $name".upk"
zenity --title="DEB Utility" --info --text="Extract DEB binary-package Successfully."
賦予權限
$ sudo chmod 755 /usr/bin/deb-unpack
###################################
PKG加解密 (Arch Linux)
###################################
$ sudo leafpad /usr/share/nemo/actions/pkg-unpack.nemo_action
[Nemo Action]
Active=true
Name=Unpack PKG
Comment=Unpack PKG file
Name[zh_TW]=解壓縮PKG
Comment[zh_TW]=解壓縮PKG
Exec=pkg-unpack '%P' '%N'
Icon-Name=gnome-mime-application-x-deb
Selection=S
Extensions=.pkg.tar.xz;
$ sudo leafpad /usr/share/nemo/actions/pkg-pack.nemo_action
[Nemo Action]
Active=true
Name=Rebuild PKG
Comment=Rebuild PKG file
Name[zh_TW]=重建PKG
Comment[zh_TW]=重建PKG
Exec=pkg-pack '%F' '%N'
Icon-Name=gnome-mime-application-x-deb
Selection=S
Extensions=.pkg;
$ sudo leafpad /usr/bin/pkg-unpack
#!/bin/bash
path=$1
name=$2
filename="${name%.*.*}"
cd $path
mkdir $filename
cd $filename
tar Jxvf ../$name
rm .MTREE
rm ../$name
zenity --title="PKG Utility" --info --text="Extract PKG binary-package Successfully."
$ sudo leafpad /usr/bin/pkg-pack
#!/bin/bash
file=$1
name=$2
cd $file
local comp_files=('.PKGINFO')
if [ -e ".INSTALL" ]; then
comp_files+=(".INSTALL")
fi
if [ -e ".BUILDINFO" ]; then
comp_files+=(".BUILDINFO")
fi
LANG=C bsdtar -czf .MTREE --format=mtree \
--options='!all,use-set,type,uid,gid,mode,time,size,md5,sha256,link' \
"${comp_files[@]}" *
comp_files+=(".MTREE")
tar Jcvf ../$name.tar.xz "${comp_files[@]}" *
zenity --title="PKG Utility" --info --text="Rebuild PKG binary-package Successfully."
賦予權限
$ sudo chmod 755 /usr/bin/pkg-unpack
$ sudo chmod 755 /usr/bin/pkg-pack