{"id":16446857,"url":"https://github.com/alexandrelam/dotfiles","last_synced_at":"2026-01-30T14:15:06.949Z","repository":{"id":41175132,"uuid":"321993552","full_name":"alexandrelam/dotfiles","owner":"alexandrelam","description":"I3 + Neovim = 🏠","archived":false,"fork":false,"pushed_at":"2025-06-11T15:51:36.000Z","size":33641,"stargazers_count":1,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-11T17:13:12.360Z","etag":null,"topics":["archlinux","dotfiles","i3config","i3wm","linux","neovim","vim"],"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/alexandrelam.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-12-16T13:38:02.000Z","updated_at":"2025-06-11T15:51:39.000Z","dependencies_parsed_at":"2024-08-10T18:56:59.554Z","dependency_job_id":null,"html_url":"https://github.com/alexandrelam/dotfiles","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/alexandrelam/dotfiles","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrelam%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrelam%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrelam%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrelam%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alexandrelam","download_url":"https://codeload.github.com/alexandrelam/dotfiles/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrelam%2Fdotfiles/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259571642,"owners_count":22878183,"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":["archlinux","dotfiles","i3config","i3wm","linux","neovim","vim"],"created_at":"2024-10-11T09:49:01.214Z","updated_at":"2026-01-30T14:15:01.930Z","avatar_url":"https://github.com/alexandrelam.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dotfiles\n\nWelcome to my linux dotfiles. It can be used on all distros but is best on Arch based distros.\n\n![image](https://user-images.githubusercontent.com/25727549/130975604-0a3eabd2-67af-409d-bb37-790226f91abb.png)\n\n## Table of content\n\n- [How to install](#how-to-install%3F)\n- [Neovim config](#neovim-config)\n  - [VimPlug](#plugin-manager%3A-vimplug)\n  - [Coc](#coc)\n  - [shortcuts](#shortcuts)\n- [i3](#i3)\n- [Tmux](#tmux)\n- [FAQ](#faq)\n  - [What’s the vision for this config?](#what’s-the-vision-for-this-config%3F)\n  - [Why use this config?](#why-use-this-config%3F)\n  - [Is such a simple desktop really usable?](#is-such-a-simple-desktop-really-usable%3F)\n  - [Why base it mainly on Arch?](#why-base-it-mainly-on-arch%3F)\n  - [Where is polybar and rofi?](#where-is-polybar-and-rofi%3F)\n- [Other](#other-settings)\n\n## How to install?\n\n**Get the following software:**\n\n- stow\n- nitrogen\n- ❤️ i3\n  - i3-wm\n  - i3blocks\n  - i3status\n  - i3lock (optional)\n  - i3-gaps (optional)\n- alacritty (default terminal in i3)\n- dmenu\n- ❤️ neovim\n- rofi (optional)\n- polybar (optional)\n- [brightnessctl](https://github.com/Hummer12007/brightnessctl)\n- [Dunst notification](https://github.com/dunst-project/dunst)\n- mako notification for wayland/sway\n\n**Clone the repo**\n\n```\ngit clone https://github.com/alexandrelam/dotfiles\n```\n\n**Use stow to create symlinks**\n\ne.g:\n\n```\ncd dotfiles\n```\n\n```\nstow nvim\n```\n\n## Neovim config\n\n### Plugin manager: VimPlug\n\n**Linux VimPlug:**\n\n```\nsh -c 'curl -fLo \"${XDG_DATA_HOME:-$HOME/.local/share}\"/nvim/site/autoload/plug.vim --create-dirs \\\n       https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'\n```\n\n**Windows VimPlug :**\n\n```\nmd ~\\AppData\\Local\\nvim\\autoload\n$uri = 'https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'\n(New-Object Net.WebClient).DownloadFile(\n  $uri,\n  $ExecutionContext.SessionState.Path.GetUnresolvedProviderPathFromPSPath(\n    \"~\\AppData\\Local\\nvim\\autoload\\plug.vim\"\n  )\n)\n```\n\nConfig location `AppData\\Local\\nvim\\init.vim`\n\nIf no folder or file, you need to create it.\n\nTo get this config, replace `init.vim` with `win_init.vim` and rename the file\n\n### Coc\n\nI use coc for autocompletion, file explorer, eslint / prettier and whole bunch of things.\n\n![hello](https://user-images.githubusercontent.com/25727549/130977821-390a5c38-8259-44ae-9adf-74c08165738b.gif)\n\n![explorer](https://user-images.githubusercontent.com/25727549/130978148-e54a4b78-a525-4604-a3a8-7042a5891677.gif)\n\n**⚠️ You need node to install coc**\n\nCoc plugins are installed automatically. To install more use `CocInstall` or add package to `g:coc_global_extensions` in `plugins-config.vim`.\n\n### Shortcuts\n\n| shortcut | action                         |\n| -------- | ------------------------------ |\n| , ,      | emmet autocomplete html tags   |\n| ctrl p   | fzf find file in dir           |\n| gj       | previous buffer                |\n| gk       | next buffer                    |\n| gx       | delete buffer                  |\n| gd       | jump to definition             |\n| space a  | linting info                   |\n| space c  | coc commands                   |\n| ff       | format                         |\n| fl       | eslint auto fix                |\n| m        | create bookmark                |\n| ù        | jump to bookmark               |\n| space+e  | file explorer                  |\n| space+do | propose fixes like auto import |\n\n## I3\n\n### Shortcuts\n\n| shortcut       | action                                   |\n| -------------- | ---------------------------------------- |\n| win+hjkl       | changer de focus entre les fenetres      |\n| win+1234       | swap entre les bureaux virtuels          |\n| win+q          | fermer une fenetre                       |\n| win+entre      | ouvrir un nouveau terminal               |\n| win+c          | prochaine fenetre ouverte en horizontale |\n| win+v          | prochaine fenetre ouverte en verticale   |\n| win+r          | resize mode                              |\n| win+shift+r    | reload settings                          |\n| win+i          | rofi menu                                |\n| win+d          | d menu                                   |\n| win+o          | rofi opened windows                      |\n| win+s          | open sound and bluetooth manager         |\n| win+w          | open browser (brave)                     |\n| win+n          | open file manager                        |\n| win+space      | swap between fr and us keyboard layout   |\n| win+rightclick | resize window                            |\n| win+shift+c    | toggle floating window                   |\n| win+shift+w    | tab layout                               |\n| win+shift+e    | default split layout                     |\n| win+shift+z    | logout                                   |\n\n## Tmux\n\nVery basic config for tmux!\n\n- Remapped `ctrl-b` to `ctrl-q` bacause azerty layout keyboard\n- Remapped vertical and horizontal split to `|` and `-`\n- Mouse mode activated\n- Removed auto rename\n- Default pane number is 1\n- Removed delay for vim escape\n\n## FAQ\n\n### What's the vision for this config?\n\nThe goal is to have a lightweight, lean yet effective desktop to work and have fun 😊.\n\n### Why use this config?\n\nIt's home. And it's also lightweight enough for heavy workflow on 8go of ram (docker + node + chrome and hundreds of tabs).\n\n### Is such a simple desktop really usable?\n\nYes I used this config daily for 5 months while working on frontend dev at Okarito.\n\n### Why base it mainly on Arch?\n\nI use Arch btw.\n\n### Where is polybar and rofi?\n\nI used it for a while but in the end I don't like it that much. I rather have i3 default status bar and dmenu. I don't really care about heavy ricing I just want the best software for my use.\n\n## Other settings\n\n### Gnome\n\nWhen I'm not using i3, I'm using Gnome because Gnome is the best non tilingwm for me.\n\nThe following settings are settings I'm always enabling when I install Gnome:\n\n#### Alt right click resize\n\n```\ngsettings set org.gnome.desktop.wm.preferences resize-with-right-button true\ngsettings set org.gnome.desktop.wm.preferences mouse-button-modifier '\u003cAlt\u003e'\n```\n\n#### Fix alt-tab on gnome\n\n```\ngsettings set org.gnome.desktop.wm.keybindings switch-applications \"[]\"\ngsettings set org.gnome.desktop.wm.keybindings switch-applications-backward \"[]\"\ngsettings set org.gnome.desktop.wm.keybindings switch-windows \"['\u003cAlt\u003eTab', '\u003cSuper\u003eTab']\"\ngsettings set org.gnome.desktop.wm.keybindings switch-windows-backward \"['\u003cAlt\u003e\u003cShift\u003eTab', '\u003cSuper\u003e\u003cShift\u003eTab']\"\n```\n\n### Other settings and info\n\n#### Deactivate suspend on close lib laptop\n\nEdit :\n\n```\n/etc/systemd/logind.conf\n```\n\nuncomment lines :\n\n- `HandleLidSwitch` -\u003e ignore\n- `HandleLidSwitchExternalPower` -\u003e ignore\n\napply changes :\n\n```\nsystemctl kill -s HUP systemd-logind\n```\n\n#### Imwheel\n\n1. `sudo apt install imwheel`\n2. Download `mousewheel.sh`\n3. `chmod +x mousewheel.sh`\n4. `./mousewheel.sh`\n5. Add `mousewheel.sh` to startup\n\n#### Setup Arch Nvidia driver hybrid\n\nhttps://www.youtube.com/watch?v=OlIXQRpfJQ4\n\ninstall `optimus-manager-qt` and `bbswitch`\n\n#### Sur windows10\n\nAlt-Resize window : https://stefansundin.github.io/altdrag/\n\n#### Cool website\n\n- Best explaination for react rerendering : https://www.developerway.com/posts/react-re-renders-guide\n- Free illustration for app : https://2.flexiple.com/scale/all-illustrations\n- List of illustrations :https://dev.to/davidepacilio/50-free-tools-and-resources-to-create-awesome-user-interfaces-1c1b\n- Another list of illustration websites : https://dev.to/theme_selection/best-design-resources-websites-every-developer-should-bookmark-1p5d\n\nPolybar theme : [https://github.com/adi1090x/polybar-themes](https://github.com/adi1090x/polybar-themes)\n\nRofi theme : [https://github.com/adi1090x/rofi](https://github.com/adi1090x/rofi)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexandrelam%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falexandrelam%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexandrelam%2Fdotfiles/lists"}