0.前言

  在说Manjaro之前,要先说一下Linux发行版。对于各大发行版而言,内核只有版本的差异,最重要的区别就是包管理系统。常见的包管理系统包括:Pacman,Apt , Yum和Portage。在学习Linux的过程中,和大数人一样,一开始接触的是Ubuntu。之后是Ubuntu的衍生版Elementary OS和Xubuntu。放弃Ubuntu的原因有很多,其一是Ubuntu并不友好,侧边栏在软件过多时一点都不好用,其二是Ubuntu没有桌面图标,设置比较繁琐。但是真正让我开始考虑其他发行版的原因是:有一些软件在Ubuntu上安装比较困难,没有现成的包可用,而且apt的下载速度总是不够理想。

  Elementary OS比Ubuntu漂亮,之后我了解到这是Xfce和Gnome的差异。总的来说,我个人觉得Xfce的界面确实比较友好一点,至于KDE也觉得不好用。Xubuntu是基于Xfce的Ubuntu的衍生版,所以我也用过了一小段时间。

  至于接触ArchLinux,有一定的偶然。ArchLinux的原版对于初学者来说,安装是有一点困难的。我最初试了几次,都失败了。后来虽然成功安装了,但是配置GUI总是不理想。于是开始尝试ArchLinux的发行版,如ArchBang和Manjaro。最后选择了Manjaro的Xfce版。

  下面是http://distrowatch.com/最近的状态:

  

  作为ArchLinux的发行版,ArchBang和Manjaro都在其中,其热度可见一斑。而Manjaro大概是满足我的基本需求:比较友好的界面(Xfce),比较快的软件更新速度(Pacman)。虽然我装过一次Gentoo的发行版Sabayon Linux,但是界面比较丑。

1.Manjaro的安装与配置

  Manjaor的官网:https://manjaro.org/。进入:https://manjaro.org/get-manjaro/,然后下载Manjaro XFCE 32-bit

  本文假定你具备在VMware安装Linux或者通过U盘在物理机上安装Linux的能力,参考:Manjaro 安装记Manjaro 安装配置

  安装完成后可以设置一下Teminal和Mousepad。

  Teminal设置:14号Droid Sans Mono字体,透明度约0.5。如图所示:

  

  Mousepad设置:14号Droid Sans Mono字体,颜色方案:Classic。如图所示:

  

  记得换成国内比较快的源。系统->软件更新->首选项->官方软件仓库。选择China按速度排序。

  

   也可以自己设置mirrorlist,文件位于:/etc/pacman.d/mirrorlist。我的mirrorlist:

 ##
## Manjaro Linux repository mirrorlist
## Generated on January :
##
## Use pacman-mirrors to modify
## ## Location : China
## Time : 0.033
## Last Sync :
Server = http://ftp.cuhk.edu.hk/pub/Linux/manjaro/stable/$repo/$arch ## Location : China
## Time : 0.190
## Last Sync :
Server = http://mirrors.tuna.tsinghua.edu.cn/manjaro/stable/$repo/$arch ## Location : China
## Time : 1.414
## Last Sync :
Server = http://mirrors.ustc.edu.cn/manjaro/stable/$repo/$arch

  软件安装:使用GUI或者Pacman。Pacman使用见ArchLinux的Wiki

  

2.MSYS2的安装和配置

  在很多情况下,需要在Windows下使用一些Linux下的常见软件,如grep,awk , gcc , gmp , gsl等。虽然Windows10提供了Windows Subsystem for Linux(WSL),但是依然不成熟。常见的方案是:MSYS,GnuWin32以及 Cygwin。不过,cygwin比较繁琐。使用MSYS2算是一个比较好的方案。

  MSYS2的官网:http://msys2.github.io/。配置参考:MSYS2开发环境搭建MSYS2的源配置

  MSYS2的源配置:mirrorlist.msys、mirrorlist.mingw64和mirrorlist.mingw32。

 ##
## MSYS2 repository mirrorlist
## Changed on --
##
##中国科学技术大学开源软件镜像
Server = http://mirrors.ustc.edu.cn/msys2/REPOS/MSYS2/$arch
##北京理工大学镜像
Server = http://mirror.bit.edu.cn/msys2/REPOS/MSYS2/$arch
##日本北陆先端科学技术大学院大学 sourceforge 镜像
Server = http://jaist.dl.sourceforge.net/project/msys2/REPOS/MSYS2/$arch
##The UK Mirror Service Sourceforge mirror
Server = http://www.mirrorservice.org/sites/download.sourceforge.net/pub/sourceforge/m/ms/msys2/REPOS/MSYS2/$arch
## Primary
Server = ftp://148.251.42.38/MSYS2/$arch
## Sourceforge.net
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MSYS2/$arch
 ##
## -bit Mingw-w64 repository mirrorlist
## Changed on --
##
##中国科学技术大学开源软件镜像
Server = http://mirrors.ustc.edu.cn/msys2/REPOS/MINGW/x86_64
##北京理工大学镜像
Server = http://mirror.bit.edu.cn/msys2/REPOS/MINGW/x86_64
##日本北陆先端科学技术大学院大学 sourceforge 镜像
Server = http://jaist.dl.sourceforge.net/project/msys2/REPOS/MINGW/x86_64
##The UK Mirror Service Sourceforge mirror
Server = http://www.mirrorservice.org/sites/download.sourceforge.net/pub/sourceforge/m/ms/msys2/REPOS/MINGW/x86_64
## Primary
Server = ftp://148.251.42.38/MINGW/x86_64
## Sourceforge.net
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/x86_64
 ##
## -bit Mingw-w64 repository mirrorlist
## Changed on --
##
##中国科学技术大学开源软件镜像
Server = http://mirrors.ustc.edu.cn/msys2/REPOS/MINGW/i686
##北京理工大学镜像
Server = http://mirror.bit.edu.cn/msys2/REPOS/MINGW/i686
##日本北陆先端科学技术大学院大学 sourceforge 镜像
Server = http://jaist.dl.sourceforge.net/project/msys2/REPOS/MINGW/i686
##The UK Mirror Service Sourceforge mirror
Server = http://www.mirrorservice.org/sites/download.sourceforge.net/pub/sourceforge/m/ms/msys2/REPOS/MINGW/i686
## Primary
Server = ftp://148.251.42.38/MINGW/i686
## Sourceforge.net
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/i686

  如果只是使用32的x86软件,可以在pacman.conf中屏蔽掉mingw64。

 [mingw32]
Include = /etc/pacman.d/mirrorlist.mingw32 # [mingw64]
# Include = /etc/pacman.d/mirrorlist.mingw64 [msys]
Include = /etc/pacman.d/mirrorlist.msys

  Mintty设置:14号Consolas字体,透明度:高。如图所示:

  

  安装Clang和Vim示例:

  

3.其他软件和配置

  Vim的配置.vimrc示例:

 syntax on
set hls is
set number
set ruler
set cindent
set tabstop=
set shiftwidth=
set softtabstop=
set autoindent
set smarttab
set smartindent
set cursorline
set nobackup
set noswapfile
set mouse=a
set helplang=cn
set backspace=indent,eol,start augroup filetypedetect
au BufNewFile,BufRead *.asy setf asy
augroup END
filetype plugin on "--------------------------------------"
func CodeFormat()
let lineNum = line(".")
if &filetype == 'c'
exec "%! astyle -A3Lfpjk3NS\<CR>"
elseif &filetype == 'cpp'
exec "%! astyle -A3Lfpjk3NS\<CR>"
elseif &filetype == 'java'
exec "%! astyle -A2Lfpjk3NS\<CR>"
else
echo "Can't support".&filetype."file type."
endif
exec lineNum
endfunc
"--------------------------------------"
map <S-F> <Esc>:call CodeFormat()<CR>
"--------------------------------------"
func CodeRun()
exec "w"
if &filetype=="c"
exec "!clear&&tcc -run %"
elseif &filetype=="cpp"
exec "!clear&&g++ -o %< && ./%<"
elseif &filetype=="java"
exec "!clear&&javac % && java %<"
elseif &filetype=="python"
exec "!clear&&python %"
endif
endfunc
"--------------------------------------"
map <F5> <ESC> :call CodeRun()<CR>
imap <F5> <ESC> :call CodeRun()<CR>
vmap <F5> <ESC> :call CodeRun()<CR>

  Windows下Mintty和Vim配置右键菜单示例Vim.reg:

 Windows Registry Editor Version 5.00

 [HKEY_CLASSES_ROOT\*\shell]

 [HKEY_CLASSES_ROOT\*\shell\Vim]
@="Vim" [HKEY_CLASSES_ROOT\*\shell\Vim\Command]
@="D:\\Software\\MSYS2\\usr\\bin\\mintty.exe -e D:\\Software\\MSYS2\\usr\\bin\\vim.exe %1"

  如图所示,用Mintty结合Vim打开C语言文件:

  

  打开opengl.c的效果:

  

4.其他可能需要的软件:

  流程图软件Graphviz , 代码阅读软件Understand , 文档阅读SumatraPDF(可与GhostScript结合) ,搜索软件Everything

  矢量图形描述语言:Asymptote。代码编辑器请使用Notepad++,代码格式化结合NppStyle使用。Python集成包请使用:Anaconda

  

  

 

学习环境配置:Manjaro、MSYS2以及常见软件的更多相关文章

  1. linux-深度学习环境配置-Centos

    下载Centos 7安装镜像,制作启动优盘. Install CentOS 7 安装CentOS 7. 第一步,配置日期.语言和键盘. 第二步,选择-系统-安装位置,进入磁盘分区界面.选择-其它存储选 ...

  2. Windows10 + eclipse + JDK1.8 + Apache Maven 3.6.0 + dl4j深度学习环境配置

    Windows10 + eclipse + JDK1.8 + Apache Maven 3.6.0 + dl4j深度学习环境配置 JDK下载安装请自行,并设置好环境变量1 查看Java版本C:\Use ...

  3. deepin深度学习环境配置

    deepin是一个精致优美的系统.最近因为工作需要在deepin上配置深度学习环境,话不多说,接下来记录下整个的配置过程. ×××本篇文章适合对深度学习环境配置有一定了解且对deepin系统感兴趣的同 ...

  4. 深度学习环境配置Ubuntu16.04+CUDA8.0+CUDNN5

    深度学习从12年开始打响,配置深度学习环境软件一直是一个头疼的问题,如何安装显卡驱动,如何安装CUDA,如何安装CUDNN:Ubuntu官方一直吐槽Nvidia显卡驱动有问题,网上大神也给出了关闭li ...

  5. Ubuntu18.04 + CUDA9.0 + cuDNN7.3 + Tensorflow-gpu-1.12 + Jupyter Notebook深度学习环境配置

    目录 一.Ubuntu18.04 LTS系统的安装 1. 安装文件下载 2. 制作U盘安装镜像文件 3. 开始安装 二.设置软件源的国内镜像 1. 设置方法 2.关于ubuntu镜像的小知识 三.Nv ...

  6. Ubuntu16.04 + CUDA9.0 + cuDNN7.3 + Tensorflow-gpu-1.12 + Jupyter Notebook 深度学习环境配置

    目录 一.Ubuntu16.04 LTS系统的安装 二.设置软件源的国内镜像 1. 设置方法 2.关于ubuntu镜像的小知识 三.Nvidia显卡驱动的安装 1. 首先查看显卡型号和推荐的显卡驱动 ...

  7. Keras学习环境配置-GPU加速版(Ubuntu 16.04 + CUDA8.0 + cuDNN6.0 + Tensorflow)

    本文是个人对Keras深度学习框架配置的总结,不周之处请指出,谢谢! 1. 首先,我们需要安装Ubuntu操作系统(Windows下也行),这里使用Ubuntu16.04版本: 2. 安装好Ubunt ...

  8. 深度学习环境配置:Ubuntu16.04安装GTX1080Ti+CUDA9.0+cuDNN7.0完整安装教程(多链接多参考文章)

    本来就对Linux不熟悉,经过几天惨痛的教训,参考了不知道多少篇文章,终于把环境装好了,每篇文章或多或少都有一些用,但没有一篇完整的能解决我安装过程碰到的问题,所以决定还是自己写一篇我安装过程的教程, ...

  9. 深度学习环境配置:Ubuntu16.04下安装GTX1080Ti+CUDA9.0+cuDNN7.0完整安装教程(多链接多参考文章)

    本来就对Linux不熟悉,经过几天惨痛的教训,参考了不知道多少篇文章,终于把环境装好了,每篇文章或多或少都有一些用,但没有一篇完整的能解决我安装过程碰到的问题,所以决定还是自己写一篇我安装过程的教程, ...

随机推荐

  1. 读书笔记-JavaScript面向对象编程(二)

    第5章 原型 5.1 原型属性(所有函数拥有一个prototype属性,默认为空对象) 5.1.1 利用原型添加方法和属性 function Gadget(name,color){ this.name ...

  2. hive数据的导入导出方式

    导入方式 1.load方式 load data local inpath 'local_path' into table tb_name; 从本地复制了文件到表的路径下 应用场景:大部分的使用,文件几 ...

  3. 第2章 CentOS7集群环境配置

    目录 2.1 关闭防火墙 2.2 设置固定IP 2.3 修改主机名 2.4 添加用户 2.5 修改用户权限 2.6 新建目录 2.7 安装JDK 1.卸载系统自带的JDK 2.安装JDK 2.8 克隆 ...

  4. A1035 Password (20)(20 分)

    A1035 Password (20)(20 分) To prepare for PAT, the judge sometimes has to generate random passwords f ...

  5. The Suspects POJ 1611

    The Suspects Severe acute respiratory syndrome (SARS), an atypical pneumonia of unknown aetiology, w ...

  6. LightOJ 1141 Number Transformation

    Number Transformation In this problem, you are given an integer number s. You can transform any inte ...

  7. Diycode开源项目 ImageActivity分析

    1.首先看一下效果 1.1做成了一个GIF 1.2.我用格式工厂有点问题,大小无法调到手机这样的大小,目前还没有解决方案. 1.3.网上有免费的MP4->GIF,参考一下这个网站吧. 1.4.讲 ...

  8. luogu3810 【模板】三维偏序(陌上花开)

    ref1 ref2 ref3 ref4 #include <algorithm> #include <iostream> #include <cstdio> usi ...

  9. 62、在app遇到全局异常时避免直接退出,如何让app接管异常处理?

    1.创建一个类为CrashHandler import android.content.Context; import android.os.Looper; import android.util.L ...

  10. Form 组件动态绑定数据

    1.Form 组件的作用: a.对用户提交的数据进行验证(form表单/ajax) b.保留用户上次输入的信息 c.可以生成html标签(input表单类的标签) 2..由于form组件中每个字段都是 ...