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

 

arrow
arrow
    全站熱搜

    Mint Fans 發表在 痞客邦 留言(0) 人氣()