Skip to content
Snippets Groups Projects
Commit 8ca912c7 authored by Recolic's avatar Recolic :house_with_garden:
Browse files

.add-example

parent fb680c8c
No related branches found
No related tags found
No related merge requests found
lc_assert_user_is root lc_assert_user_is root
desktop_related_setup () {
# to install & enable gnome
pacman -Sy --noconfirm gnome networkmanager power-profiles-daemon nextcloud-client firefox
systemctl enable gdm NetworkManager power-profiles-daemon
# more customization...
pacman -Sy --needed --noconfirm base-devel nextcloud-client firefox telegram-desktop docker shadowsocks-rust v2ray proxychains xclip adobe-source-han-sans-cn-fonts pcsclite ccid git inetutils wget ttf-fira-code htop tmux dos2unix nfs-utils python-pip gnome-tweaks fcitx5-im man-db man-pages kolourpaint breeze
pacman -Sy --needed --noconfirm recolic-aur/gnome-terminal-transparency recolic-aur/oreo-cursors-git
echo '
# This file is parsed by pam_env module
# Syntax: simple KEY=VAL pairs on separate lines
GTK_IM_MODULE=fcitx5
QT_IM_MODULE=fcitx5
XMODIFIERS=@im=fcitx5' > /etc/environment
systemctl enable bluetooth pcscd.service
}
lc_init () { lc_init () {
# my favorite pkgs # my favorite pkgs
pacman -Sy --noconfirm fish dhcpcd vim sudo openssh pacman -Sy --noconfirm fish dhcpcd vim sudo openssh
...@@ -12,8 +31,16 @@ lc_init () { ...@@ -12,8 +31,16 @@ lc_init () {
sudo -u rtest linuxconf register masterconf.sh sudo -u rtest linuxconf register masterconf.sh
# more desktop pkgs # more customization...
pacman -Sy --noconfirm gnome networkmanager power-profiles-daemon nextcloud-client firefox grep kernel.sysrq=1 /etc/sysctl.d/99-sysctl.conf || echo 'kernel.sysrq=1' >> /etc/sysctl.d/99-sysctl.conf
systemctl enable gdm NetworkManager power-profiles-daemon
grep recolic-aur /etc/pacman.conf || echo '[recolic-aur]
SigLevel = Optional TrustAll
Server = https://drive.recolic.cc/mirrors/recolic-aur' >> /etc/pacman.conf
sed -i 's/^[# ]*ParallelDownloads =[ 0-9A-Za-z]*$/ParallelDownloads = 5/g' /etc/pacman.conf
sed -i 's/^[# ]*SystemMaxUse=[ 0-9A-Za-z]*$/SystemMaxUse=150M/g' /etc/systemd/journald.conf
sed -i 's/^[# ]*SystemMaxFileSize=[ 0-9A-Za-z]*$/SystemMaxFileSize=30M/g' /etc/systemd/journald.conf
desktop_related_setup
} }
lc_assert_user_is_not root lc_assert_user_is_not root
config_gsettings () {
echo "## gnome desktop config"
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type nothing
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type nothing
gsettings set org.gnome.settings-daemon.plugins.power idle-dim false
gsettings set org.gnome.desktop.screensaver idle-activation-enabled false
gsettings set org.gnome.desktop.privacy remember-recent-files false
gsettings set org.gnome.desktop.peripherals.touchpad tap-to-click true
gsettings set org.gnome.desktop.interface enable-hot-corners false
gsettings set org.gnome.desktop.media-handling automount false
gsettings set org.gnome.desktop.media-handling automount-open false
gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-left "['<Shift><Alt>Left']"
gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-right "['<Shift><Alt>Right']"
gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-up "['<Shift><Alt>Up']"
gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-down "['<Shift><Alt>Down']"
gsettings set org.gnome.desktop.wm.keybindings move-to-monitor-left "['<Super><Shift>Left']"
gsettings set org.gnome.desktop.wm.keybindings move-to-monitor-right "['<Super><Shift>Right']"
gsettings set org.gnome.desktop.wm.keybindings move-to-monitor-up "['<Super><Shift>Up']"
gsettings set org.gnome.desktop.wm.keybindings move-to-monitor-down "['<Super><Shift>Down']"
gsettings set org.gnome.desktop.wm.keybindings switch-windows "['<Primary>Tab']"
gsettings set org.gnome.desktop.wm.keybindings switch-windows-backward "['<Primary><Shift>Tab']"
gsettings set org.gnome.desktop.wm.keybindings switch-applications "['<Super>Tab', '<Alt>Tab']"
gsettings set org.gnome.desktop.wm.keybindings switch-applications-backward "['<Shift><Super>Tab', '<Shift><Alt>Tab']"
}
lc_init () { lc_init () {
[[ -d $HOME/sh ]] || git clone https://git.recolic.net/root/daily-scripts.git $HOME/sh || return 1 [[ -d $HOME/sh ]] || git clone https://git.recolic.net/root/daily-scripts.git $HOME/sh || return 1
# config_gpg
config_gsettings
} }
lc_fsmap $HOME/sh/mybin /usr/mybin lc_fsmap $HOME/sh/mybin /usr/mybin
lc_startup () { lc_startup () {
firefox_config='
user_pref("browser.tabs.tabmanager.enabled", false);
user_pref("services.sync.prefs.sync.browser.uiCustomization.state", true);
user_pref("browser.tabs.hoverPreview.enabled", false);'
for dir in "$HOME"/.mozilla/firefox/*.default*; do
[[ -d "$dir" ]] && echo "$firefox_config" > "$dir/user.js"
done
[[ -f /usr/bin/az ]] && az config set core.login_experience_v2=off
} }
lc_login () {
# echo _:1 | bash /usr/mybin/unlock_keyrings
}
...@@ -46,6 +46,8 @@ function lc_cron () { ...@@ -46,6 +46,8 @@ function lc_cron () {
# Warning: watch out for unintended user # Warning: watch out for unintended user
lc_fsmap files/vimrc $LC_USER_HOME/.vimrc lc_fsmap files/vimrc $LC_USER_HOME/.vimrc
lc_daemon files/myservice.sh
# TODO: what if lc_fsmap depends on lc_init() ?? This is not recommended usage. # TODO: what if lc_fsmap depends on lc_init() ?? This is not recommended usage.
# e.g: 'git clone xxx $HOME/sh' and lc_fsmap $HOME/sh/something /usr/bin/fancy # e.g: 'git clone xxx $HOME/sh' and lc_fsmap $HOME/sh/something /usr/bin/fancy
# lc_fsmap should success even if $HOME/sh/something doesn't exist yet. (what if dest also not exist? let it fail...) # lc_fsmap should success even if $HOME/sh/something doesn't exist yet. (what if dest also not exist? let it fail...)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment