Gentoo Linux日常

Gentoo系统安装及配置

心酸历程

自从上次那篇Arch使用笔记开始,就没有写过博客了,那阵子没了比赛,有的只是大学的收尾工作,毕业设计什么的,假得要死,但是还得做,很无奈,基本就是堕落,玩游戏,折腾系统。。。然后,就开始了窥探已久的gentoo,听说这个系统很装逼,我也就试了试,居然折腾了一天,还没装上,显然我是不会轻易屈服的!经过痛苦的英文教程阅读,还有各种百度、谷歌(主要是没有无线驱动),终于折腾成功,把系统装上了。

系统参数配置老是不会配,一开始每次配置完都重新安装系统(后来才发现其实没必要T_T),这个对于新手确实很棘手,最后是下载了别人的类似机型的配置文件,再根据自己需要修改,才勉强可以使用!然后就是各种看系统参数配置相关的文章,终于有些经验了,后来装了一次,基本就成功了^_^

不过很多步骤太繁琐,不可能记得住了,所以这篇文章大概就是累积这些东西。欢迎指出错误,提供意见等。

持续更新中。。。

系统配置

统透明设置compton

# emerge compton
在i3配置文件里添加默认启动,并配置好compton

系统时区/时间设定

# ls /usr/share/zoneinfo
(Suppose you want to use Europe/Brussels)
# echo "Europe/Brussels" > /etc/timezone
# emerge --config sys-libs/timezone-data
windows时间不一致解决办法:

修改Windows的时间设定(来源 http://www.1uu2.com/archives/1045):

让 Windows 把硬件时间当作 UTC
开始->运行->CMD,打开命令行程序(Vista则要以管理员方式打开命令行程序方可有权限访问注册表),在命令行中输入下面命令并回车
Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1

bash-completion命令行参数补全

详细参考:http://blog.csdn.net/lophyxp/article/details/10036479

  1. 安装必要的软件包 bash-completion,会通过依赖关系自动安装gentoo-bashcomp

    sudo emerge -a bash-completion
    
  2. 添加 bash-completion 全局 USE 标记到 /etc/make.conf

    sudo vim /etc/portage/make.conf
    USE="... bash-completion"
    sudo emerge -uDN world
    
  3. /etc/bash/bashrc里面添加

    [[ -f /etc/profile.d/bash-completion.sh ]] && source /etc/profile.d/bash-completion.sh
    
  4. 启用bash-completion的功能。一般的要启用base,比如sudo补齐

    eselect bashcomp enable base
    或者
    bashcomp-config enable base
    
  5. 查看有哪一些命令支持 bash-completion ,可以用下面的命令

    eselect bashcomp list
    或者
    bashcomp-config list
    

Gentoo系统软件管理

安装gentoolkit

  • euse
    • euse -i useflag 查看useflag具体是什么作用
  • revdep-rebuild
    • revdep-rebuild -p看看系统状况以及将要进行的修复过程,如果确认无误再用revdep-rebuildrevdep-rebulid会把结果保存
    • /root/.revdep-rebuild*文件中,下次再revdep-rebulid就直接从这些文件读取信息,所以如果自己更改了系统的状态后想再
    • 执行revdep-rebulid,那要删除这些文件先,不然结果还是一样的。
  • equery
    • 常用equery b file,查询file是由那个软件包安装带来的,equery d pkg,查询哪些软件包是依赖于pkg的
  • qfile file
    • 跟前面的equery b功能一样
  • qlist
    • qlist pkg列出软件pkg带来的文件

注:qfile和qlist都在app-portage/portage-utils包里

安装eix

快速查看软件信息的工具。它根据emerge --syncemerge --metadata产生的信息来工作的,所以以上两个命令执行完后,要update-eix更新eix的数据库。

安装genlop

genlop用来分析安装软件的一些记录。比如genlop -t pkg,列出pkg安装的具体时间,时间长短等。还有genlo -l列出所以已经安装的包。

安装elogview

基于gtk的图形化软件。一般用来得到安装软件过程给出的log,warning等等。

参考资料:

安用软件

安装hexo来制作个人博客

npm install hexo -g
npm install -g generator-hexo-theme
hexo init [folder]
cd [folder]
npm install
vim _config.yml # configure the blog
hexo generate   # generate the blog
hexo server     # test the blog on locate

Gentoo错误处理

Can’t locate Unicode/EastAsianWidth.pm in @INC

Run the command `perl-cleaner --all` (from the package app-admin/perl-cleaner) which will rebuild modules and reverse dependencies that became broken due to the Perl upgrade.

Vim补全插件之youcompleteme

"The ycmd server SHUT DOWN (restart with :YcmRestartServer)"
这个错误很常见,原因也很多,一般通过:YcmDebugInfo查看错误记录/tmp/xxx.log

上次发现是libtinfo.so.5找不到,在sys-libs/ncurses的USE标记中添加tinfo,重新编译即可