[Rust Book] 1.1. Bắt đầu với Rust - Cài đặt

Cài đặt

Bước đầu tiên là cài đặt Rust. Chúng ta sẽ tải Rust thông qua rustup, một công cụ dòng lệnh dành cho việc quản lý các phiên bản Rust và các công cụ liên quan. Bạn sẽ cần kết nối internet trong quá trình cài.

Chú ý: Nếu không thích sử dụng rustup vì một vài lý do nào đó, bạn có thể tham khảo những cách cài đặt khác.

[Đọc tiếp]

Cấu hình Raspberry Pi 4 thành Wireless Access Point



                                         +- RPi -------+
                                     +---+ 192.168.1.2 |          +- Laptop ----+
                                     |   |     WLAN AP +-)))  (((-+ WLAN Client |
                                     |   | 192.168.3.1 |          | 192.168.3.2 |
                                     |   +-------------+          +-------------+
                 +- Router ----+     |
                 | Firewall    |     |   +- PC#1 ------+
(Internet)---WAN-+ DHCP server +-LAN-+---+ 192.168.1.3 |
                 | 192.168.1.1 |     |   +-------------+
                 +-------------+     |
                                     |   +- PC#2 ------+
                                     +---+ 192.168.1.4 |
                                         +-------------+
[Đọc tiếp]

Tính thời gian thực thi thực sự trong C++

#include <chrono>

int main() {
	std::chrono::time_point <std::chrono::system_clock, std::chrono::duration<double, std::milli>> then = std::chrono::high_resolution_clock::now();;

	// ... do something ...

	std::chrono::time_point <std::chrono::system_clock, std::chrono::duration<double, std::milli>> now = std::chrono::high_resolution_clock::now();;
	double elapseTimeInMS = (now - then).count();

	return 0;
}

Cách viết khác ngắn hơn:

#include <chrono>

using namespace std;

int main() {
	auto then = chrono::high_resolution_clock::now();

	// ... do something ...

	auto now = chrono::high_resolution_clock::now();
	double elapseTimeInMS = chrono::duration<double, milli>(now - then).count();

	return 0;
}
cpp 

Hiển thị tab Firefox trên nhiều dòng

  1. Truy cập about:config, bật tùy chọn toolkit.legacyUserProfileCustomizations.stylesheets.
  2. Truy cập about:support > Profile Directory > Open Directory. Cửa sổ thư mục profile sẽ bật ra.
  3. Trong thư mục profile, tạo thư mục chrome nếu chưa tồn tại.
  4. Trong thư mục chrome, tạo file userChrome.css.
  5. Copy nội dung từ file multi-row_tabs.css vào file userChrome.css.
  6. Khởi động lại Firefox.
firefox  css 

Bật Application Launcher trên Latte Dock bằng phím tắt Window

  • Bấm chuột phải vào dock > Layouts > Configure…
  • Trong cửa sổ Settings, chuyển tới tab Preferences
  • Trong mục Actions > Chọn Press ⌘ to activate Application Launcher

Hoặc

  • Mở file ~/.config/kwinrc lên và thêm đoạn sau:

    ...
    [ModifierOnlyShortcuts]
    Meta=org.kde.lattedock,/Latte,org.kde.LatteDock,activateLauncherMenu
    ...
    
  • Reload KWin:

    $ qdbus org.kde.KWin /KWin reconfigure
    

    Github QA

Tạo GPG key với text file

Tạo 1 file text tên là gpg_gen_key với đầy đủ thông tin cho việc tạo key:

Key-Type: 1
Key-Length: 2048
Subkey-Type: 1
Subkey-Length: 2048
Name-Real: My Name
Name-Email: [email protected]
Expire-Date: 0
Passphrase: secretpass

Tiến hành tạo key từ file text trên:

gpg --batch --gen-key gpg_gen_key
gpg