{"id":13683149,"url":"https://github.com/4lgn/dotfiles","last_synced_at":"2025-07-15T21:35:26.167Z","repository":{"id":44625800,"uuid":"146481734","full_name":"4lgn/dotfiles","owner":"4lgn","description":"🔧   .files - different setups separated in branches","archived":false,"fork":false,"pushed_at":"2022-06-09T12:48:35.000Z","size":593116,"stargazers_count":184,"open_issues_count":0,"forks_count":19,"subscribers_count":5,"default_branch":"bspwm","last_synced_at":"2024-11-12T03:34:50.761Z","etag":null,"topics":["arch-linux","bash","bspwm","configuration","console","customization","dotfiles","i3wm","linux","macos","neovim","osx","powerline","shell","terminal","theme","vim","yadm","zsh"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/4lgn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-08-28T17:19:45.000Z","updated_at":"2024-11-11T21:22:54.000Z","dependencies_parsed_at":"2022-08-12T11:20:48.586Z","dependency_job_id":null,"html_url":"https://github.com/4lgn/dotfiles","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/4lgn%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/4lgn%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/4lgn%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/4lgn%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/4lgn","download_url":"https://codeload.github.com/4lgn/dotfiles/tar.gz/refs/heads/bspwm","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241353934,"owners_count":19949130,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arch-linux","bash","bspwm","configuration","console","customization","dotfiles","i3wm","linux","macos","neovim","osx","powerline","shell","terminal","theme","vim","yadm","zsh"],"created_at":"2024-08-02T13:02:02.015Z","updated_at":"2025-03-01T10:33:26.120Z","avatar_url":"https://github.com/4lgn.png","language":"Shell","readme":"# BSPWM .files\n\nDot files for my Arch Linux + bspwm setup used on my Dell XPS 15 9560.\n\n(NOTE: These are the bspwm dotfiles, my i3wm setup is located in the [i3wm branch](https://github.com/Alexrazz/dotfiles/tree/i3wm))\n\n## Table of contents\n\n\u003c!--ts--\u003e\n   * [Screenshots](#screenshots)\n   * [Packages](#packages)\n      * [Primary](#primary)\n      * [Secondary](#secondary)\n   * [Installation](#installation)\n   * [Device/hardware specific settings](#devicehardware-specific-settings)\n      * [Disabled modules](#disabled-modules)\n      * [Disabling turbo boost](#disabling-turbo-boost)\n      * [Enable powertop auto tune](#enable-powertop-auto-tune)\n      * [Kernel parameters](#kernel-parameters)\n   \n   \n\u003c!--te--\u003e\n\n\n## Screenshots\n\n![Screenshot](https://i.imgur.com/6VciZul.png)\n\n## Packages\n\n### Primary\n\n- `rofi`: Application launcher\n- `zsh`: Shell\n- `urxvt`: Terminal emulator\n- `bspwm`: Window manager\n- `sxhkd`: Hotkey daemon\n- `dunst`: Notification daemon\n- `vim`: Editor\n- `vim-plug`: Vim Plugin Manager\n- `polybar`: Status bar\n- `firefox`: Browser\n- `chromium`: Browser\n- `evince`: PDF reader\n- `betterlockscreen`: Lock screen\n- `libinput`: Touch pad driver\n  - `libinput-gestures`: Custom touchpad gestures\n- `neofetch`: System info\n- `ranger`: File explorer\n- `lightdm`: Display Manager\n\n### Secondary\n\n- `w3m`: Used to display images in ranger\n- `imgur-screenshot`: Screenclip to imgur\n- `maim`: Screenclip to clipboard\n- `KeeWeb`: Password manager\n- `redshift`: F.lux alternative (tints your screen to make it easier on your eyes)\n- `picom`: Compositor\n- `pulseaudio / -alsa`: Audio driver\n- `Spicetify`: Spotify theming CLI tool\n- `connman`: Network manager\n  - `cmst`: Front-end for connman\n- `pamixer`: Pulseaudio manager\n- `gotop`: Beautiful TUI activity monitor\n- plug\n- `xcwd`: Used to open a new terminal in the same directory as the current focused terminal\n- Fonts:\n  - Iosevka\n  - noto-fonts\n  - ttf-font-awesome\n  - icomoon-feather\n\n\n\n## Installation\n\nInstallation and the dotfiles are to be managed with [yadm](https://yadm.io/), thus installation is done through cloning the repository using `yadm clone`, and then confirm running the bootstrapping script when prompted to. If not prompted after cloning, executing the bootstrapping script can be done at any time with `yadm bootstrap`.\n\nThus, if you have a completely fresh install of arch, do the following:\n\n- `$ curl -fLo /usr/local/bin/yadm https://github.com/TheLocehiliosan/yadm/raw/master/yadm \u0026\u0026 chmod a+x /usr/local/bin/yadm`\n- `$ yadm clone https://github.com/4lgn/dotfiles -b bspwm`\n- `$ yadm bootstrap`\n\nThe bootstrapping script should setup and install most things, and get you a completely usable system. There are, however, still some further configuration needed for some of the applications that I use. The following sub-sections will cover these extra setups.\n\n### LightDM setup\n\nMake sure you have the following packages installed:\n\n```\npacman -S --needed lightdm lightdm-webkit2-greeter lightdm-webkit-theme-litarvan\n```\n\n- Edit `/etc/lightdm/lightdm.conf` and set `greeter-session=lightdm-webkit2-greeter`.\n- Then edit `/etc/lightdm/lightdm-webkit.conf` and set theme or `webkit-theme` to `litarvan`.\n- Enable the LightDM as a systemd service: `systemctl enable lightdm`\n\n### Vim setup\n\nSimply open vim and it should automatically install everything the first time. If something is wrong, or nothing seemed to have been installed, run `:PlugInstall` from within vim.\n\n### Firefox setup\n\n- Go to `about:config`\n- Enable `toolkit.legacyUserProfileCustomizations.stylesheets`\n- Go to `about:addons`\n- Enable the `Dark theme` if not already enabled\n- Copy the contents of my firefox profile to yours, located at `.mozilla/firefox/\u003cyour-profile-name\u003e/chrome/`\n- Optionally remove some of the extra icons in the `Customize` menu\n\n### Rounded corners (bspwm fork)\n\nTo get the rounded corners in bspwm, I currently use a fork of bspwm by [dylanaraps](https://github.com/dylanaraps), found [here](https://github.com/dylanaraps/bspwm).\n\nTo patch your current bspwm with these changes, do the following:\n\n- `$ git clone https://github.com/dylanaraps/bspwm`\n- `$ cd bspwm`\n- `$ make \u0026\u0026 sudo make install`\n- Restart your X session.\n\nNow, unfortunately, as you will quickly notice with this fork, these corners are not anti-aliased and are quite jagged. There is currently some open issues and discussion on getting anti-aliased corners, especially a pull request by [sdhand](https://github.com/sdhand) is quite promising, found [here](https://github.com/yshui/picom/pull/229). As of writing, none of the solutions out there are without compromises or problems, so I choose to live with jagged corners as of the time being.\n\n## Device/hardware specific settings\n\nThese are some of the tweaks I've made for my specific setup, most of them are to optimize battery lifetime\n\n### Disabled modules\n\n```\n/etc/modprobe.d/blacklist.conf\n\nblacklist nouveau\nblacklist nvidia\nblacklist psmouse\nblacklist btusb\nblacklist bluetooth\n```\n### Disabling turbo boost\n\n```\n/etc/systemd/system/disable-turbo-boost.service\n\n[Unit]\nDescription=Disable Turbo Bost on Intel CPU\n\n[Service]\nExecStart=/bin/sh -c \"/usr/bin/echo 1 \u003e /sys/devices/system/cpu/intel_pstate/no_turbo\"      \nExecStop=/bin/sh -c \"/usr/bin/echo 1 \u003e /sys/devices/system/cpu/intel_pstate/no_turbo\"      \n\n[Install]\nWantedBy=sysinit.target\n```\n\n### Enable powertop auto tune\n\n*TLP can be used instead of this if you want a less aggressive power tuning.*\n\n```\n/etc/systemd/system/powertop.service\n\n[Unit]\nDescription=Powertop tunings\n\n[Service]\nExecStart=/usr/bin/powertop --auto-tune\nRemainAfterExit=true\n\n[Install]\nWantedBy=multi-user.target\n```\n\n### Kernel parameters\n\nBelow are the kernel parameters I would pass to all linux installations, mainly based upon some shortcomings and oddities that I have experienced with the Dell XPS 15.\n\n```\nadd_efi_memmap rw quiet splash i915.modeset=1 nouveau.modeset=0 acpi_rev_override=1\n```\n\n- `i915.modeset=1`: Ensure iGPU is loaded early by using KMS. (Might fix boot loader/display manager not being shown)\n- `nouveau.modeset=0`: Block nouveau from managing the GPU. (This bundled together with the previous parameter allows X to run entirely on my iGPU, as there are no drivers loaded for the GPU; this drastically improves battery life for obvious reasons)\n- `acpi_rev_override=1`: This is the most important setting, as this prevents some freezing issues I had due to the nvidia card not working well with ACPI.\n- `quiet` and `splash`: Personal preference to not show every boot message at boot (I'd just remove these if something seems wrong)\n- `add_efi_memmap` and `rw`: Probably not needed anymore and `rw` are usually default anyways.\n","funding_links":[],"categories":["Shell"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F4lgn%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F4lgn%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F4lgn%2Fdotfiles/lists"}