Code Monkey home page Code Monkey logo

manjaro-dotfiles's Introduction

Manjaro工作环境配置

安装Manjaro系统

按默认分区方案,比较懒。

换国内源

配置国内镜源

sudo pacman-mirrors -i -c China -m rank

设置archlinuxcn源,antergos源,arch4edu源:

[archlinuxcn]
SigLevel = TrustAll
#中科大源
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
#清华源
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch

[antergos]
SigLevel = TrustAll
Server = https://mirrors.tuna.tsinghua.edu.cn/antergos/$repo/$arch

[arch4edu]
SigLevel = TrustAll
Server = https://mirrors.tuna.tsinghua.edu.cn/arch4edu/$arch

更新源列表

sudo pacman-mirrors -g

更新pacman数据库并全面更新系统

sudo pacman -Syyu

防止PGP签名错误

sudo pacman -S archlinuxcn-keyring
sudo pacman -S antergos-keyring

安装base-devel

sudo pacman -S base-devel

安装Google-Chrome

sudo pacman -S google-chrome

直接开启同步功能安装好所有的插件。

若设置默认浏览器有问题,可以按该链接方式解决。

安装qv2ray

安装qv2ray,科学上网使用。

sudo pacman -S qv2ray v2ray
sudo pacman -S proxychains

proxychains代理设置,编辑 /etc/proxychains.conf

socks5  127.0.0.1 1089

安装fish shell

安装fish shell

sudo pacman -S fish
chsh -s /usr/bin/fish

proxychains curl -L https://get.oh-my.fish | fish

omf install lambda

将dotfiles迁移到工作电脑

# 设置git提交的邮箱和姓名
git config --global user.email "[email protected]"
git config --global user.name "devinkin"

# 设置远程仓库的配置
ssh-keygen -t rsa

# 避免循环checkout问题
echo "Manjaro-dotfiles" >> ~/.gitignore

# 将准备好的配置文件拉下来
git clone --bare [email protected]:DevinKin/Manjaro-dotfiles.git $HOME/Manjaro-dotfiles

# 使用别名管理dotfiles
alias dotfiles='/usr/bin/git --git-dir=$HOME/Manjaro-dotfiles --work-tree=$HOME'

# dotfiles status不显示尚未add的文件
dotfiles config --local status.showUntrackedFiles no

# 从空仓库中将实际的配置文件拉到$HOME
dotfiles checkout

安装输入法

安装fcitx和rime输入法

sudo pacman -S fcitx-im #安裝全部fcitx組件
sudo pacman -S fcitx-rime #安裝rime
sudo pacman -S fcitx-configtool #安裝fcitx圖形管理工具

编辑 .xprofile 添加如下环境变量。

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"

开发环境搭建

Emacs

# 拉取自己的emacs配置
git clone [email protected]:DevinKin/.emacs.d.git

# 拉取emacs的site-lisp
git clone https://github.com/manateelazycat/company-english-helper.git site-lisp/company-english-helper

git clone https://github.com/manateelazycat/emacs-application-framework.git site-lisp/emacs-application-framework

# 如果想要添加其他的site-lisp可以执行以下命令
git clone <repo link> site-lisp/<repo name>
git submodule add <repo link> site-lisp/<repo name>

# 安装emacs及emacs的相关依赖
sudo pacman -S yay
yay --aururl "https://aur.tuna.tsinghua.edu.cn" --save
yay -P -g
yay -S python-pyqt5 python-pyqt5-sip python-pyqtwebengine python-qrcode python-feedparser python-dbus python-pyinotify python-markdown nodejs aria2 libreoffice python-grip filebrowser-bin
sudo pacman -R python-pymupdf
pip uninstall fitz
pip install pymupdf

sudo pacman -S the_silver_searcher
sudo pacman -S emacs

# 启动emacs

Clojure

安装Clojure相关开发环境

sudo pacman -S jdk11-openjdk clojure rlwrap leiningen maven 

yay -S clojure-lsp

Golang

安装Go,nodejs和unzip用于dap-go安装的依赖

sudo pacman -S go nodejs unzip

设置环境变量

export GO111MODULE=auto
export GOPROXY=https://goproxy.cn
export GOROOT=/usr/lib/go
export GOPATH=$HOME/go 
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

安装go相关工具

# 安装gopls,emacs补全使用
goget golang.org/x/tools/gopls@latest
# 安装dlv,golang debug工具
goget github.com/go-delve/delve/cmd/dlv

Python

安装dotnet-sdk-2.2

# 安装dotnet sdk
yay -S dotnet-sdk-2.2 dotnet-runtime-2.2

安装microsoft-python-language-server

yay -S microsoft-python-language-server

安装各种软件

# 安装wps
sudo pacman -S wps-office-cn ttf-wps-fonts

# 安装网易云音乐
yay -S netease-cloud-music

# 安装deepin截图工具
yay -S deepin-screenshot gpaste
# 设置截图快捷键
# System Settings - Shortcuts - Custom Shortcuts - Edit - New - Global Shortcut - Command/URL - 命名为Screenshots
# 在Trigger添加:Ctrl+Alt+A
# 在Action添加:deepin-turbo-invoker --type=dtkwidget deepin-screenshot --icon
# 与原有的一个快捷键设置冲突,Reassign来确认新的设置。

# 安装微信
yay -S deepin-wine-wechat

# 安装tmux,使用教程可看下面的链接:http://louiszhai.github.io/2017/09/30/tmux/
sudo pacman -S xclip
yay -S tmux

# 安装百度网盘
yay -S baidunetdisk 

# 安装向日葵远程连接客户端

yay -S sunlogin

安装企业微信

参考以下项目,使用docker运行企业微信。

安装前置依赖,docker和docker-compose。

yay -S docker-compose

解决KDE桌面无法显示企业微信问题

yay -S gnome-settings-daemon

开机启动程序中添加如下设置:系统设置-开机和关机-自启动服务-添加如 下脚本,已经在dotfiles中存储。

#!/usr/bin/bash

/usr/lib/gsd-xsettings &

不过不知道为什么,会有一个小问题,在开机自启动程序中和fish shell中 运行 docker start wxwork 都无法正常运行docker的企业微信,需要在命令行中执行 bash 然后再执行 docker start wxwork

笔记流配置

个人需求:能在pc,mobile进行同步,markdown格式存储,支持检索功能。

实现方案:

  • joplin:开源的笔记工具,支持云同步。
  • 坚果云:免费同步笔记。
  • typroa:编写markdown笔记的工具。

安装上面三个软件

sudo pacman -S nutstore typora joplin

joplin配置WebDAV云同步

KDE桌面美化

观看Yutube的这个 视频

修复小问题

启动时grub无法显示

sudo vim /etc/default/grub
# 将下面属性修改为menu
GRUB_TIMEOUT_STYLE=menu

sudo update-grub

如果出现闪屏的情况,可以去系统设置-工作空间行为-桌面特效-模糊,点击关闭。

存储dotfiles

在虚拟机中,预装好自己的Manjaro工作环境配置,进行如下操作

# 初始化一个空仓库路径
git init --bare $HOME/Manjaro-dotfiles

# 使用别名管理dotfiles
alias dotfiles='/usr/bin/git --git-dir=$HOME/Manjaro-dotfiles --work-tree=$HOME'

# dotfiles status不显示尚未add的文件
dotfiles config --local status.showUntrackedFiles no

# 后续保存某些配置文件
dotfiles add .bashrc
dotfiles commit -m ".bashrc"
dotfiles pusn origin master

manjaro-dotfiles's People

Contributors

devinkin avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.