{"id":15149055,"url":"https://github.com/mnabila/dotfiles","last_synced_at":"2026-03-15T18:35:42.244Z","repository":{"id":40613263,"uuid":"235796028","full_name":"mnabila/dotfiles","owner":"mnabila","description":"tempat backup konfigurasi desktopku dengan bantuan GNU/stow dan git subtree","archived":false,"fork":false,"pushed_at":"2024-07-21T04:31:26.000Z","size":60671,"stargazers_count":36,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-29T22:45:28.430Z","etag":null,"topics":["archlinux","awesomewm","bspwm","bspwmrc","dmenu","dmenu-scripts","dotfiles","i3-config","i3-gaps","i3-wm","neovim","neovim-dotfiles","stow","sxhkd","sxhkdrc","vimrc","zsh"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mnabila.png","metadata":{"files":{"readme":"README.md","changelog":"newsboat/.config/newsboat/config","contributing":null,"funding":null,"license":"LICENSE","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-01-23T13:02:31.000Z","updated_at":"2024-08-18T14:52:09.000Z","dependencies_parsed_at":"2023-02-14T12:17:01.036Z","dependency_job_id":"3b1ab1db-777a-410f-892a-c552c4dc8f58","html_url":"https://github.com/mnabila/dotfiles","commit_stats":{"total_commits":213,"total_committers":1,"mean_commits":213.0,"dds":0.0,"last_synced_commit":"bc77f532183b3986993d9643eb36bb02bd5951de"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mnabila%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mnabila%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mnabila%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mnabila%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mnabila","download_url":"https://codeload.github.com/mnabila/dotfiles/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237918710,"owners_count":19387305,"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","awesomewm","bspwm","bspwmrc","dmenu","dmenu-scripts","dotfiles","i3-config","i3-gaps","i3-wm","neovim","neovim-dotfiles","stow","sxhkd","sxhkdrc","vimrc","zsh"],"created_at":"2024-09-26T13:41:34.236Z","updated_at":"2025-10-24T05:31:09.799Z","avatar_url":"https://github.com/mnabila.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"```\n                       __          __       ___      ___\n                      /\\ \\        /\\ \\__  /'___\\ __ /\\_ \\\n                      \\_\\ \\    ___\\ \\ ,_\\/\\ \\__//\\_\\\\//\\ \\      __    ____\n                      /'_` \\  / __`\\ \\ \\/\\ \\ ,__\\/\\ \\ \\ \\ \\   /'__`\\ /',__\\\n                     /\\ \\L\\ \\/\\ \\L\\ \\ \\ \\_\\ \\ \\_/\\ \\ \\ \\_\\ \\_/\\  __//\\__, `\\\n                     \\ \\___,_\\ \\____/\\ \\__\\\\ \\_\\  \\ \\_\\/\\____\\ \\____\\/\\____/\n                      \\/__,_ /\\/___/  \\/__/ \\/_/   \\/_/\\/____/\\/____/\\/___/\n```\n\n# Dotfiles\n\n![GitHub](https://img.shields.io/github/license/mnabila/dotfiles?style=for-the-badge)\n![GitHub repo size](https://img.shields.io/github/repo-size/mnabila/dotfiles?label=Dotfiles%20Size\u0026style=for-the-badge)\n\nTempat backup konfigurasi desktop - dengan bantuan GNU/stow\n\n# Daftar Isi\n\n\u003c!-- TOC depthFrom:2 --\u003e\n\n- [Dotfiles](#Dotfiles)\n- [Details](#Details)\n- [ScreenShut](#ScreenShut)\n- [Instalasi](#Instalasi)\n  - [Instalasi GNU/Stow di Arch Linux](#instalasi-gnu%2Fstow-di-arch-linux)\n  - [Download Folder Konfigurasi](#download-folder-configurasi)\n\n\u003c!-- /TOC --\u003e\n\n# Details\n\n|         Item          | Value                                           |\n| :-------------------: | :---------------------------------------------- |\n|          OS           | ArchLinux                                       |\n|          WM           | i3-gaps, bspwm, awesomewm                       |\n|         Shell         | zsh _([zimfw](https://github.com/zimfw/zimfw))_ |\n|          DM           | lightdm, SLIM                                   |\n|         Font          | iosevka, iosevka nerd font                      |\n|      Compositor       | picom(compton fork),xcompmgr                    |\n|     Notification      | dunst                                           |\n|       Terminal        | urxvt, Termite, Suckless terminal               |\n|       Launcher        | rofi, dmenu, jgmenu, j4-dmenu-desktop           |\n|          Bar          | polybar                                         |\n|       Wallpaper       | feh                                             |\n|      Lock Screen      | i3lock, mantablockscreen, slimlock              |\n|   Logout / Shutdown   | script                                          |\n|    Volume Control     | pulsemixer, amixer                              |\n| Brightness Controller | light                                           |\n|    Network Applet     | nm-applet, connman-gtk                          |\n|      Text Editor      | neovim                                          |\n\n# ScreenShut\n\n#### i3-gaps\n\n![i3gaps](https://github.com/mnabila/dotfiles/blob/master/screenshot/i3gaps-2.png?raw=true)\n![i3gaps workflow](https://github.com/mnabila/dotfiles/blob/master/screenshot/i3gaps-workflow-2.png?raw=true)\n\n#### bspwm\n\n![bspwm](https://github.com/mnabila/dotfiles/blob/master/screenshot/bspwm.png?raw=true)\n\n#### awesomewm\n\n![bspwm](https://github.com/mnabila/dotfiles/blob/master/screenshot/awesomewm.png?raw=true)\n\n#### tmux\n\n![tmux](https://github.com/mnabila/dotfiles/blob/master/screenshot/tmux-2.png?raw=true)\n\n#### zsh\n\n![zsh](https://github.com/mnabila/dotfiles/blob/master/screenshot/zsh.png?raw=true)\n\n# Instalasi\n\n#### Instalasi GNU/Stow di Arch Linux\n\n\u003e **Apa sih GNU/Stow itu ?**\n\u003e\n\u003e GNU/Stow merupakan sebuah symlink farm manager atau lebih mudah dipahami dengan symlink\n\u003e manager sehingga pengguna tidak direpotkan lagi mengetikkan semua pathnya apabila ingin\n\u003e melakukan symlink dari folder asal ke folder tujuan.\n\n\u003e **Perbedaan perintah GNU/Stow dan perintah ln untuk membuat symlink ? (contoh tmux)**\n\u003e\n\u003e **ln**\n\u003e\n\u003e `$ ln -s /path/folder/asal/tmux/ /path/folder/tujuan/tmux`\n\u003e\n\u003e **GNU/Stow**\n\u003e\n\u003e `$ stow tmux`\n\n\u003e **untuk menghapus symlink yang di hasilkan bagaimana ?**\n\u003e\n\u003e **ln**\n\u003e\n\u003e `$ unlink /path/folder/tujuan/tmux`\n\u003e\n\u003e **GNU/Stow**\n\u003e\n\u003e `$ stow -D tmux`\n\n\u003e **Kenapa sih harus menggunakan GNU/Stow ?**\n\u003e\n\u003e Dikarenakan banyaknya configurasi yang ada adakalanya pengguna sangat direpotkan uuntuk memanagementnya ketika bermigrasi dari sistem operasi satu ke operasi yang lain.\n\u003e Dengan adanya GNU/Stow ini pengguna sedikit terbantu karna tidak perlu lagi copy manual config dari folder dotfiles ke folder configurasi yang ada.\n\u003e Cukup dengan membuat symlink dari folder dotfiles ke folder configurasi sehingga ketika ada perubahana juga cukup mudah managementnya.\n\ninstall paket GNU/Stow di Arch Linux\n\n```\n$ sudo pacman stow\n```\n\ndaftar perintah di GNU/Stow\n\n```\nstow (GNU Stow) version 2.3.1\n\nSYNOPSIS:\n\n    stow [OPTION ...] [-D|-S|-R] PACKAGE ... [-D|-S|-R] PACKAGE ...\n\nOPTIONS:\n\n    -d DIR, --dir=DIR     Set stow dir to DIR (default is current dir)\n    -t DIR, --target=DIR  Set target to DIR (default is parent of stow dir)\n\n    -S, --stow            Stow the package names that follow this option\n    -D, --delete          Unstow the package names that follow this option\n    -R, --restow          Restow (like stow -D followed by stow -S)\n\n    --ignore=REGEX        Ignore files ending in this Perl regex\n    --defer=REGEX         Don't stow files beginning with this Perl regex\n                          if the file is already stowed to another package\n    --override=REGEX      Force stowing files beginning with this Perl regex\n                          if the file is already stowed to another package\n    --adopt               (Use with care!)  Import existing files into stow package\n                          from target.  Please read docs before using.\n    -p, --compat          Use legacy algorithm for unstowing\n\n    -n, --no, --simulate  Do not actually make any filesystem changes\n    -v, --verbose[=N]     Increase verbosity (levels are from 0 to 5;\n                            -v or --verbose adds 1; --verbose=N sets level)\n    -V, --version         Show stow version number\n    -h, --help            Show this help\n\nReport bugs to: bug-stow@gnu.org\nStow home page: \u003chttp://www.gnu.org/software/stow/\u003e\nGeneral help using GNU software: \u003chttp://www.gnu.org/gethelp/\u003e\n```\n\n#### Memasang Dotfiles\n\nLangkah pertama yakni clone dulu dotfiles yang ada. dengan perintah dibawah ini\n\n\u003e Note:\n\u003e pastikan folder tujuan nya berada di folder /home/\\$USER agar mudah managementnya\n\n```\n$ git clone https://github.com/mnabila/dotfiles.git ~/Dotfiles\n```\n\nUntuk memasang confignya cukup mudah ketikkan perintah dibawah ini.\n\n\u003e kita ambil contoh ingin memasang config tmux\n\n```\n$ stow tmux\n```\n\n## Download Folder Configurasi\n\nsebelum melakukan download folder configurasi yang perlu kita persiapkan yakni git dan subversion\n\n```\n$ sudo pacman -S git subversion\n```\n\nlalu tambahkan custom function dibawah ini pada bashrc atau zshrc kalian\n\n```\ngit-svn(){\n  if [[ ! -z \"$1\" \u0026\u0026 ! -z \"$2\" ]]; then\n          echo \"Starting clone/copy ...\"\n          repo=$(echo $1 | sed 's/\\/$\\|.git$//')\n          svn export \"$repo/trunk/$2\"\n  else\n          echo \"Use: git-svn \u003crepository\u003e \u003csubdirectory\u003e\"\n  fi\n}\n```\nuntuk pengguna fish bisa tamabahkan script berikut ini dalam file ~/.config/fish/functions/git-svn.fish\n\n```\n\nfunction git-svn --description \"Download subfolder in git repository\"\n    set repository $argv[1]\n    set subfolder $argv[2]\n    if test -n $repository \u0026\u0026 test -n $subfolder\n        echo \"Starting clone/copy ...\"\n        set repo (echo $repository | sed 's/\\/$\\|.git$//')\n        svn export \"$repo/trunk/$subfolder\"\n    else\n        echo \"Use: git-svn \u003crepository\u003e \u003csubdirectory\u003e\"\n    end\nend\n```\n\nuntuk menggunakan cukup ketikkan perintah seperti dibawah ini\n\n```\n$ git-svn \"url repository yang kalian inginkan\" \"folder yang ada di repository\"\n```\n\n\u003e kita ambil contoh ingin download configurasi tmux saja\n\n```\n$ git-svn https://github.com/mnabila/dotfiles tmux\n```\n\nBegitulah sedikit tutorial dari pemilik dotfiles\n\n# Perlu Dukun ?\n\n- [Telegram - mnabila](https://t.me/mnabila)\n- [Twitter - mnabiladani](https://twitter.com/mnabiladani)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmnabila%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmnabila%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmnabila%2Fdotfiles/lists"}