หากคุณเป็นผู้ใช้ Linux มานาน คุณน่าจะจำได้ว่าการติดตั้งแอปพลิเคชันใหม่ก่อนหน้านี้ยากแค่ไหน ถ้าไม่ได้รวมอยู่ในตัวติดตั้ง คุณมักต้องผ่านกระบวนการ configure, make, make install ซึ่งมักต้องล่าขอ dependencies ที่หายไปตลอดทาง ตัวจัดการแพ็กเกจอย่าง apt และ yum ทำให้เรื่องนี้จัดการได้ง่ายขึ้น แต dependencies ยังคงอาจกัดกินคุณอยู่ดี
คุณอาจเคยได้ยินเรื่อง Snap ซึ่งอ้างว่าแก้ไขปัญหาหลายอย่างเหล่านี้ คุณอาจได้ยินอีกว่า มันเป็นของ Ubuntu อย่างเดียว แต่โชคดีที่ไม่จริง
แอปพลิเคชัน Snap คืออะไร?
แอปพลิเคชัน Snap หรือที่รู้จักว่า "snaps" ถูกออกแบบมาเพื่อเป็น distribution-agnostic (ไม่ขึ้นกับ distro) ดังนั้นในทาง lý tưởng พวกมันควรทำงานเหมือนกันไม่ว่าจะรันบนระบบไหน เพื่อให้บรรลุสิ่งนี้ ส่วนใหญ่ของ dependencies และ runtimes ที่แอปพลิเคชันต้องการเพื่อรัน ถูกบรรจุรวมอยู่ใน snap นั่นหมายความว่าหากคุณมี snap ตั้งค่าและรันบนระบบของคุณแล้ว การเพิ่มแอปพลิเคชันที่ต้องการ dependencies หลายตัวจะกลายเป็นเรื่องง่ายขึ้นมาก
Snap ได้รับการสนับสนุนจาก Canonical ซึ่งเป็นเหตุผลที่มักถูกกล่าวถึงรอบๆ Ubuntu แต่ตั้งใจให้รันบน distro Linux หลักๆ ทุกตัว Arch แม้แต่อยู่ใน distro ที่ได้รับการสนับสนุนอย่างเป็นทางการ ดังนั้น snap จึงเป็นวิธีที่ดีในการรันแอปที่ไม่ได้ถูกแพ็กเกจสำหรับ Arch
การติดตั้ง Daemon snapd
เพื่อติดตั้ง snaps บนระบบของคุณ คุณจะต้องติดตั้ง snapd daemon แม้ snap จะสนับสนุน Arch อย่างเป็นทางการ คุณจะต้องติดตั้งมันจาก Arch User Repository (AUR) โชคดีที่ทำได้ง่ายด้วยเครื่องมือ yaourt
ขั้นแรก ติดตั้ง snapd โดยรันคำสั่งต่อไปนี้:
yaourt -S snapd
ตอนนี้คุณต้องเปิดใช้งานบริการให้รัน เพื่อทำเช่นนี้ เพียงพิมพ์คำสั่งต่อไปนี้:
systemctl enable --now snapd.socket
การติดตั้งแอปพลิเคชัน Snap
ตอนนี้คุณมี snap ติดตั้งแล้ว คุณสามารถใช้มันติดตั้งแพ็กเกจได้เหมือนตัวจัดการแพ็กเกจอื่นๆ ตัวอย่างเช่น เพื่อติดตั้งแอปพลิเคชันเฉพาะโดยใช้ snap ให้รันคำสั่งต่อไปนี้:
snap install application-name
เพื่อแสดงรายการ snaps ที่พร้อมใช้งานบนระบบของคุณ ให้รันคำสั่งต่อไปนี้:
snap list
เพื่อค้นหาแพ็กเกจ คุณสามารถสอบถามว่ามีพร้อมใช้งานหรือไม่โดยพิมพ์คำสั่งต่อไปนี้:
snap find searchterm
สุดท้าย เพื่อลบแพ็กเกจ ให้รันคำสั่งนี้:
snap remove application-name
เคล็ดลับและเทคนิค Snap อื่นๆ
แอปพลิเคชัน Snap ถูกเก็บไว้ทันสมัยโดยอัตโนมัติโดยค่าเริ่มต้น แต่เพื่ออัปเดตแอปพลิเคชันทั้งหมดด้วยตนเอง ให้รันคำสั่งต่อไปนี้:
snap refresh
บาง snaps ไม่ใช้เส้นทางเดิมซึ่งคือ "/var/lib/snapd/snap" แทนที่จะติดตั้งที่ "/snap" เพื่อรองรับการติดตั้ง "classic snaps" เหล่านี้ เพียงสร้าง symbolic link ด้วยคำสั่งต่อไปนี้:
ln -s /var/lib/snapd/snap /snap
ตอนนี้คุณจะสามารถติดตั้งและรันแอปพลิเคชันเหล่านี้ได้ แต่พวกมันจะถูกติดตั้งควบคู่กับ snaps อื่นๆ ของคุณทั้งหมด มันคือการผสมผสานที่ดีที่สุดของทั้งสองโลก และยังเป็นไปตาม Filesystem Hierarchy Standard
สรุป
Snap ไม่ใช่เทคโนโลยีเพียงอย่างเดียวที่ทำอย่างนี้ Flatpak และ AppImage เป็นระบบแพ็กเกจที่คล้ายกันสองตัวที่มุ่งแก้ปัญหาเดียวกันกัน มันที่ว่า ด้วยการได้รับการสนับสนุนจาก Ubuntu Snap ดูเหมือนจะเป็นรูปแบบที่ได้รับความนิยมมากที่สุด อย่างน้อยสำหรับตอนนี้
นั่นหมายความว่ามันเป็นที่ดีที่สุดไหม? ไม่กี่เวลานี้ เราได้ดู Snap และ Flatpak เพื่อดูว่าพวกมันทนทานกันอย่างไร และค้นหาว่าตัวไหนเป็นที่ดีที่สุด