广告

本站里的文章大部分经过自行整理与测试

2017年7月18日星期二

ArchLinux 安装

1) 检查现在磁盘 sda 的分区
$ lsblk

2) 弄 2 个分区, sda1 是 swap, sda2 是 ext4
$ cfdisk /dev/sda
Select label type 'dos'

# 格式化 sda2
$ mkfs.ext4 /dev/sda2 

# 启动 swap
$ mkswap /dev/sda1
$ swapon /dev/sda1

3) 挂载 sda2 到系统中的 /mnt
$ mount /dev/sda2 /mnt

4) 安装基本 
$ pacstrap /mnt base base-devel
$ pacman -Syu

$ pacstrap /mnt grub-bios

5) 生成 fstab 
$ genfstab -p /mnt >> /mnt/etc/fstab

6) 转向用 /mnt 当系统
$ arch-chroot /mnt /bin/bash

7) 打开 locale.gen 将 en_US.UTF-8,zh_CN.UTF-8 和 zh_TW.UTF-8 前面的 # 拿走
$ nano /etc/locale.gen
$ locale-gen
$ echo LANG=en_US.UTF-8 > /etc/locale.conf
$ export LANG=en_US.UTF-8

8) 时间区域
$ ln -sf /usr/share/zoneinfo/Asia/Kuala_Lumpur /etc/localtime
$ hwclock --systohc --utc

9) hostname / hosts
$ echo archlinux >/etc/hostname

并且把主机名添加到/etc/hosts文件中

#<ip-address>    <hostname.domain.org>    <hostname>
127.0.0.1 localhost.localdomain    localhost archlinux
::1            localhost.localdomain    localhost archlinux

10) 设置现在 root 账号密码
$ passwd

11) 安装上网工具
$ pacman -S net-tools

12) grub 2 安装
$ grub-install /dev/sda
$ grub-mkconfig -o /boot/grub/grub.cfg
$ mkinitcpio -p linux

13) 其他安装
$ pacman -S alsa-utils linux-headers

$ pacman -S xf86-video-vesa          # 通用显卡驱动
$ pacman -S xf86-video-intel           # Intel
$ pacman -S xf86-video-nouveau    # Nvidia
$ pacman -S nouveau-dri
$ pacman -S xf86-video-ati              # Ati
$ pacman -S xf86-video-vesa          # 虚拟机用

14) enable 网络和加入新用户
$ systemctl enable dhcpcd.service

$ useradd -m -g users -G wheel -s /bin/bash <USER_ID>
$ passwd <USER_ID>

15) 从 /mnt 退出, 重启后就是个新的系统
$ exit 
$ umount /mnt
$ reboot

16) 其他安装
$ pacman -S xf86-input-synaptics # 笔记本触摸板支持
$ pacman -S gnome-terminal
$ pacman -S open-vm-tools xf86-video-vmware xf86-input-vmmouse
$ systemctl start vmtoolsd
$ systemctl enable vmtoolsd
$ pacman -S xorg-server xorg-server-utils

# VirtualBox
$ pacman -Sy xorg xorg-xinit
$ pacman -Syyu
$ pacman -Sy virtualbox-guest-utils
选 2
$ systemctl enable vboxservice

17) GNOME 安装
$ pacman -Sy gnome gnome-extra gdm
$ systemctl start gdm
$ systemctl enable gdm

2017年7月15日星期六

Linux 上的微信 WeChat


https://github.com/geeeeeeeeek/electronic-wechat

别人写的开源微信, 除了支持 Windows,
也支持 Mac OSX 和 Linux

Ubuntu

1) node.js 安装 - https://nodejs.org/en/download/

$ wget https://nodejs.org/dist/v6.11.4/node-v6.11.4.tar.gz
$ tar zxvf node-v6.11.4.tar.gz

$ cd node-v6.11.4
$ sudo ./configure
$ sudo make
$ sudo make install



$ wget https://nodejs.org/dist/v6.11.4/node-v6.11.4-linux-x64.tar.xz
$ su 
$ tar --strip-components=1 -Jxvf node-v* -C /usr/local

$ node --version

2) npm 安装

$ sudo apt install npm -y

3) Electronic Wechat 安装

$ git clone https://github.com/geeeeeeeeek/electronic-wechat.git
$ cd electronic-wechat

$ npm install && npm start

2017年7月14日星期五

Gnome Shell Extension 制作基本知识

1) 基本指令, 输入 Alt + F2 打开命令模式 

- 再输入 lg, 打开 Looking Glass
- 再输入 r, 重启 Gnome Shell

2) 在 Looking Glass - Evaluator 输入以下看看

# 会弹出信息
Main.notify("Test");
Main.notifyError("Error");

# 会在 Gnome Logs 记录信息
global.log("Test");
global.logError("Error");

3) Gnome Shell Extensions 存放的位置

$ cd ~/.local/share/gnome-shell/extensions
$ cd /usr/share/gnome-shell/extensions

4) 制作 Gnome Shell Extension 的命令

# 创建一个 Gnome Shell Extension
$ gnome-shell-extension-tool -c

$ gnome-shell-extension-tool -e Hello@test.home
$ gnome-shell-extension-tool -d Hello@test.home
$ gnome-shell-extension-tool -h

5) Debug 工具 (不断重启 Gnome Shell 来测试程序, 再看 Logs 有没错误)

可以打开 Logs 检查以下程序是否有错误, 搜索 Hello@test.home

6) 编写

# 基本有3个文件 extension.js, metadata.json, stylesheet.css
# metadata.json 记录步骤 4 创建时所输入的资料

$ cd ~/.local/share/gnome-shell/extensions/Hello@test.home
$ gedit extension.js

const Main = imports.ui.main;

log("extension-load");
Main.notify("extension-load");

function init() {
    log("extension-init");
    Main.notify("extension-init");
}

function enable() {
    log("extension-enable");
    Main.notify("extension-enable");
}

function disable() {
    log("extension-disable");
    Main.notify("extension-disable");
}

7) 其它

# Gnome Shell Extension 所有设置备份
$ sudo dconf dump /org/gnome/shell/extensions/