Cách chính xác để tạo bí danh để gói snap trong Ubuntu 16.04 là gì?


8

TL; DR

Làm cách nào để tạo bí danh toàn hệ thống để chụp gói trong Ubuntu 16.04?

Thêm chi tiết

Tôi muốn cài đặt Blender như một snap. Tôi thấy rằng có gói Blender-tpaw có thể được cài đặt. Thật không may sau khi cài đặt nó, nó có sẵn trong thiết bị đầu cuối dưới tên blender-tpaw, không blender.

Sử dụng bí danh snap

Vì vậy, trước hết tôi đã cố gắng chạy lệnh sudo snap alias blender-tpaw blender, theo: https://insights.ubfox.com/2017/01/11/ubfox-core-how-to-enable-aliases-for-your-snaps-commands / . Nhưng đây là những gì tôi đã có:

error: cannot perform the following tasks:
- Enable aliases for snap "blender-tpaw" (cannot enable alias "blender" for "blender-tpaw", no such alias)

Tạo liên kết tượng trưng trong / usr / local / bin

Sau đó, tôi đã cố gắng tạo liên kết tượng trưng sudo ln -s /snap/bin/blender-tpaw /usr/local/bin/blendernhưng trong trường hợp này điều rất lạ xảy ra: bây giờ khi tôi nhập blendervào một thiết bị đầu cuối, tôi đã nhận được đầu ra của snaplệnh ...

Đặt bí danh trong /etc/profile.d

Tôi cũng đã cố gắng tạo bí danh trong /etc/profile.d/alias.sh

alias blender='blender-tpaw'

Nhưng điều này chỉ hoạt động, trên Máy chủ Ubuntu 16.04 của tôi, nhưng không hoạt động trong Máy tính để bàn Ubuntu 16.04.

Những gì tôi muốn đạt được?

Tôi muốn rằng bí danh này sẽ là toàn hệ thống, cho tất cả người dùng, mà không thay đổi thủ công .bashrccho từng người dùng riêng biệt. Và tôi cũng muốn làm việc tương tự trên Ubuntu Server và Ubuntu Desktop.


Có lẽ điều này giúp? insights.ubfox.com/2017/01/11/NH
edwinksl

@edwinksl Tôi sử dụng lệnh từ bài viết này, nhưng dường như không thể khai báo bí danh của riêng bạn mà không xây dựng lại toàn bộ snap.
Piotr Ciążyński

Ah tôi thấy. Tôi không thực sự sử dụng snaps, vì vậy tôi không giúp được gì ở đây, nhưng tôi hy vọng có một giải pháp đơn giản cho việc này; xây dựng lại snaps chỉ để làm bí danh là quá mức cần thiết.
edwinksl

Sau khi bạn tạo symlink tới /usr/local/bin/blender, đầu ra từ lệnh vào là blendergì? Ngoài ra, bạn có bất cứ điều gì khác trong đường dẫn của bạn được đặt tên blender(sử dụng type -a blenderđể liệt kê tất cả mọi thứ mà shell đã băm dưới tên đó) không?
takatakatek

Câu trả lời:


1

Bất cứ vấn đề gì đã gặp phải vào năm ngoái khi cố gắng đăng ký bí danh giờ dường như đã được sửa. Trình tự tương tự đã làm việc vào ngày 16.04 và ngày 18.04 cũng gần như được phát hành. Phiên bản sử dụng là trong đầu ra.

$ sudo snap install blender-tpaw
[sudo] password for dpb: 
blender-tpaw 2.78c-tpaw0 from 'tpaw' installed
$ sudo snap alias blender-tpaw blender
Added:
  - blender-tpaw as blender
$ sudo snap aliases
Command                  Alias         Notes
aws-cli.aws              aws           -
blender-tpaw             blender       manual
conjure-up.conjure-down  conjure-down  -
lxd.lxc                  lxc           -
$ snap version
snap    2.32.3.2+18.04
snapd   2.32.3.2+18.04
series  16
ubuntu  18.04
kernel  4.15.0-15-generic

Người giới thiệu:


0

Để thiết lập bí danh bên ngoài snapbằng hàm bash-dựng sẵn, aliasbạn cần gọi snapmột cách rõ ràng, vì vậy trong trường hợp của bạn, lệnh là:

alias blender='snap run blender-tpaw'

man bash nói:

Khi một vỏ tương tác không phải là vỏ đăng nhập được khởi động, bash sẽ đọc và thực thi các lệnh từ /etc/bash.bashrc và ~ / .bashrc, nếu các tệp này tồn tại.

Vì vậy, để làm cho bí danh có sẵn hệ thống rộng, chỉ cần thêm nó vào /etc/bash.bashrctệp:

echo "alias blender='snap run blender-tpaw'" >> /etc/bash.bashrc
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.