{"id":22254566,"url":"https://github.com/mizux/config","last_synced_at":"2025-06-17T15:42:55.610Z","repository":{"id":11361620,"uuid":"13795690","full_name":"Mizux/config","owner":"Mizux","description":"Linux configuration files (zshrc...)","archived":false,"fork":false,"pushed_at":"2025-04-27T12:54:10.000Z","size":2028,"stargazers_count":2,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-27T13:38:13.280Z","etag":null,"topics":["shell"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Mizux.png","metadata":{"files":{"readme":"README.md","changelog":null,"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,"zenodo":null}},"created_at":"2013-10-23T06:55:09.000Z","updated_at":"2025-04-27T12:54:13.000Z","dependencies_parsed_at":"2023-12-21T18:28:09.791Z","dependency_job_id":"0ff28e42-f2e1-493c-9d72-0d7df42a52cd","html_url":"https://github.com/Mizux/config","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Mizux/config","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mizux%2Fconfig","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mizux%2Fconfig/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mizux%2Fconfig/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mizux%2Fconfig/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mizux","download_url":"https://codeload.github.com/Mizux/config/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mizux%2Fconfig/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260390923,"owners_count":23002017,"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":["shell"],"created_at":"2024-12-03T07:31:35.404Z","updated_at":"2025-06-17T15:42:50.589Z","avatar_url":"https://github.com/Mizux.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"My install steps and configuration script for Archlinux.\n\n# Archlinux Install\nFirst read and keep open the [Installation Guide](https://wiki.archlinux.org/index.php/Installation_guide).\n\n## Download and Archlinux iso\nDownload from any mirror listed here: https://www.archlinux.org/download/\u003cbr\u003e\ne.g. using https://mirrors.eric.ovh/arch/iso/latest/\n```sh\nwget https://mirrors.eric.ovh/arch/iso/latest/archlinux-x86_64.iso\nwget https://mirrors.eric.ovh/arch/iso/latest/archlinux-x86_64.iso.sig\npacman-key -v archlinux-x86_64.iso.sig\n```\nnote: on non archlinux system verify using\n```sh\ngpg --keyserver-options auto-key-retrieve --verify archlinux-x86_64.iso.sig\n```\n\n## Create USB\n```sh\ndd if=*.iso of=/dev/sdX status=progress oflag=sync\n```\nref: [dd(1)](https://jlk.fjfi.cvut.cz/arch/manpages/man/dd.1#DESCRIPTION)\n\n## Init\nnuc10i7: You may need to disable the secure-boot in order to boot from the Arch Linux usb stick.\u003cbr\u003e\ni.e. F12 to access BIOS and change in security...\n\nChange keyboard layout (default us):\n```sh\nloadkeys jp106\nloadkeys fr-latin9\n```\nnote: list `ls /usr/share/kbd/keymaps/**/*.map.gz`\n\nVerify if boot mode is efi:\n```sh\nls /sys/firmware/efi/efivars\n```\n\nSetup wifi:\n```sh\niwctl\n# device list\n# station wlan0 scan\n# station wlan0 get-networks\n# station wlan0 connect SSID\nip link\nping archlinux.org\n```\n\nSetup time\n```sh\ntimedatectl set-ntp true\n```\n\n## Prepare the storage devices\n### BIOS with MBR (cx61, flex2, eeepc)\n```sh\ncfdisk /dev/sda\n```\n\n| Name      | Boot  | Size   | Type       | Format Cmd    | Mount     |\n| --------- | :---: | -----: | ---------: | :-----------: | --------- |\n| /dev/sda1 | *     | 260M   | Linux Sys  | mkfs.ext2     | /mnt/boot |\n| /dev/sda2 |       | ALL    | Linux Sys  | mkfs.ext4     | /mnt      |\n| /dev/sda3 |       | 2G     | Linux SWAP | mkswap        |           |\n\nmkfs all...  \nmount all...  \n```sh\nmount /dev/sda2 /mnt  \nmkdir /mnt/boot  \nmount /dev/sda1 /mnt/boot  \nswapon /dev/sda3\n```\n\n### UEFI with GPT (nuc10i7)\n```sh\ncfdisk /dev/nvme0n1\n```\nnote: Choose [**GPT** for UEFI](https://wiki.archlinux.org/index.php/Partitioning#Choosing_between_GPT_and_MBR)\n\n| Name           | Size   | Type       | Format Cmd    | Mount    |\n| -------------- | -----: | ---------: | :-----------: | -------- |\n| /dev/nvme0n1p1 | 384M   | EFI Sys    | mkfs.fat -F32 | /mnt/efi |\n| /dev/nvme0n1p2 | 928G   | Linux Sys  | mkfs.ext4     | /mnt     |\n| /dev/nvme0n1p3 | 2G     | Linux SWAP | mkswap        |          |\n\nref: [EFI partition format](https://wiki.archlinux.org/index.php/EFI_system_partition#Format_the_partition)\n\nmkfs all...  \nmount all...  \n```sh\nmount /dev/nvme0n1p2 /mnt  \nmkdir /mnt/efi  \nmount /dev/nvme0n1p1 /mnt/efi  \nswapon /dev/nvme0n1p3  \n```\n\n## Install the base system\nReplace \\\u003cfoobar\\\u003e by what you want...\n### Install essential packages\n```sh\npacstrap /mnt base base-devel linux linux-firmware vim\n```\nnote: For MBR you can add **syslinux** (bootloader)\n\n### Fstab\n```sh\ngenfstab -L -p /mnt \u003e\u003e /mnt/etc/fstab\n```\n`-L` will use device Label name e.g. `/dev/sdaX`,\nyou should use `-U` for `UUID` since it's more robust but it's ugly IMHO.\n\n###  Chroot\nTime to chroot in it to finish the installation !\n```sh\narch-chroot /mnt\n```\n### Localization / Time zone / Keymap\n```sh\n# Time\nln -s /usr/share/zoneinfo/Europe/Paris /etc/localtime\n## gen /etc/adjtime\nhwclock --systohc\n# Localization\nvim /etc/locale.gen (en_us, fr, ja \u0026 utf-8)\nlocale-gen\necho \"LANG=\\\"en_US.UTF-8\\\"\" \u003e /etc/locale.conf\necho \"KEYMAP=\u003cfr-latin9/jp106\u003e\" \u003e /etc/vconsole.conf\n# Network Configuration\necho \u003claptop-name\u003e \u003e /etc/hostname\n```\neeepc 1015PEM: `KEYMAP=fr` (with `fr-latin9` cmd `ctrl+c/e` won't work)\n\n### Initramfs\n#### [UEFI only] Setup\nSince Archlinux will generate initramfs image in `/boot` but image must be in the `/efi`\npartition you should bind it in `/efi` partition.\nFirst, try using:\n```sh\nmkdir -p /efi/EFI/arch\nmount --bind /efi/EFI/arch /boot\npacman -S linux\n```\nnote: You need to regenerate the image since the `mount --bind` will hide the\npreviously generated one...\n\nThen, simply add to /etc/fstab (see bootloader part at the end)\n```\n/efi/EFI/arch          /boot           none            defaults,bind   0 0\n```\nref: [Using bind mount](https://wiki.archlinux.org/index.php/EFI_system_partition#Using_bind_mount)\n\n#### Initramfs build\nNow it's time to generate the initramfs\n```sh\nmkinitcpio -P\n```\n\n#### [MBR only] Setup\nOnce build, you need to update the syslinux bootloader:\n```sh\nsyslinux-install_update -iam\n```\nthen edit `/boot/syslinux/syslinux.cfg` if `/dev/sda3` is not correct  \n\n### Pacman Setup  \n* Activate `Color` and `multilib` in `/etc/pacman.conf`\n* update Mirror list (copy your current location mirrors at top) in `/etc/pacman.d/mirrorlist`\n\n## Wireless network configuration\n```sh\npacman -S networkmanager  \nsystemctl enable NetworkManager.service  \n```\nlist network: nmcli con show  \nconnect to network: nmcli dev wifi connect \u003cname\u003e password \u003cpassword\u003e [iface wlan1]  \nor use the ncurse ui tool \"nmtui\"\n\n## NTP Time Synchronization\n```sh\ntimedatectl set-ntp true\n```\n\n## UEFI Bootloader\nFirst create the loader stuff in the `/efi` partition \n```\nbootctl install --esp-path=/efi\n```\n### Create Default loader\nThen in `/efi/loader/loader.conf` \n```\ndefault arch.conf\ntimeout 5\nconsole-mode max\neditor no\n```\n\n### Create Arch conf\nYou should already have done this in the fstab/initramfs part but double check !\n```sh\nmkdir -p /efi/EFI/arch\n```\nShould contains at least `initramfs-linux.img  vmlinuz-linux` if `/boot bind`\nhas been correctly binded, otherwise copy `/boot/*` in `/efi/EFI/arch`.\n\nThen create a `/efi/loader/entries/arch.conf` with:\n```\ntitle Arch Linux\nlinux /EFI/arch/vmlinuz-linux\ninitrd /EFI/arch/initramfs-linux.img\noptions root=/dev/nvme0n1p2 rw\n```\n\nand a `/efi/loader/entries/arch_fallback.conf` :\n```\ntitle Arch Linux Fallback\nlinux /EFI/arch/vmlinuz-linux\ninitrd /EFI/arch/initramfs-linux-fallback.img\noptions root=/dev/nvme0n1p2 rw\n```\n\nnote: For `root` parameter, the linux kernel support [this format](https://github.com/torvalds/linux/blob/f49aa1de98363b6c5fba4637678d6b0ba3d18065/init/do_mounts.c#L191-L219).\n\n### Root password\nSet the root password:\n```sh\npasswd\n```\n\n`exit` the chroot and `umount -R /mnt`.\n**NOW, YOU SHOULD BE ABLE TO REBOOT**\n\n## Archlinux package config\nIn root run:\n```sh\ncd tmp\ngit clone --depth=1 https://github.com/Mizux/config.git config\ncd config/pkg \u0026\u0026 ./dev_install.sh\n```\n\n# User Management\n## Adding User\n```sh\nuseradd -g users -m -s /usr/bin/zsh \u003cusername\u003e  \n```\nChanging password to user:\n```sh\npasswd \u003cusername\u003e\n```\n\nAdding user to a group:  \n```sh\nusermod -a -G \u003cwheel,audio,video,disk,storage,docker,cups\u003e \u003cusername\u003e  \n```\n\nAllowing user (in group `wheel`) to sudo, you'll need to edit `/etc/sudoers`:\n```diff\n+%wheel ALL=(ALL) ALL\n```\n\n## User config Installation\nArchLinux configuration files (zshrc...)  \nsimply run `mizux/install.sh`  \nwarning no backup are performed !  \n\n# Japanese Install\nTo install japaneses, first install fonts:\n```sh\npacman -S adobe-source-han-sans-jp-fonts otf-ipafont\n```\n\nThen install ibus　and configure it.\n```sh\npacman -S ibus ibus-qt ibus-anthy \nibus-setup\n```\nibus-setup/Advanced: check use system layout.  \nibus-setup/InputMethod: add anthy for japanese.  \n\nAlso add this line in your `.xinitrc` (before `setxkbmap fr`)\n```sh\nexport GTK_IM_MODULE=ibus\nexport XMODIFIERS=@im=ibus\nexport QT_IM_MODULE=ibus\nibus-daemon -drx\n```\nnote: if using xfce4, put \"ibus-daemon -drx\" in autostart application otherwise firefox and chromium won't have ibus support (race cond)\n\n# Misc\n## Font viewer\nTo add in rox-filer for ttf files:\n```sh\nfontforge -nosplash -quiet \"$@\"\n```\n\n## DNS change\nExample using Google DNS instead of FAI ones.\n```sh\nnmcli connection modify \u003cconnection_name\u003e ipv4.ignore-auto-dns yes\nnmcli connection modify \u003cconnection_name\u003e ipv6.ignore-auto-dns yes\n%nmcli connection modify \u003cconnection_name\u003e ipv4.dns \"8.8.8.8 8.8.4.4\"\n%nmcli connection modify \u003cconnection_name\u003e ipv6.dns \"2001:4860:4860::8888 2001:4860:4860::8844\"\nnmcli connection down \u003cconnection_name\u003e\nnmcli connection up \u003cconnection_name\u003e\n```\n\nYou can check using:\n```sh\ncat /etc/resolv.conf\n```\n\n## X Server multi-user\nEdit /etc/pam.d/su su-l and add:  \n```sh\nsession        optional        pam_xauth.so\n```\n\n## xdg-open management\nYou must append `.desktop` to any binary.  \ne.g. `feh` becomes `feh.desktop`...\n\n### Query filetype\n```sh\n$ xdg-mime query filetype \u003cexample.png\u003e\nimage/png\n```\n\n### Query default app\n```sh\n$ xdg-mime query default \u003cimage/png\u003e\nfoobar.desktop\n```\n\n### Set default app\n```sh\n$ xdg-mime default \u003cfoobar.desktop\u003e \u003cimage/png\u003e\n```\n\n### Open file using default app\n```sh\n$ xdg-open \u003cexample.png\u003e\n```\n\n# Device\n\n## Memory Check\nto check type of memory installed:\n```sh\nsudo dmidecode -t memory\nsudo lshw -short -C Memory\n```\n\n## Printer Management\n```sh\npacman -S --needed cups ghostscript hplip\nsystemctl start/enable org.cups.cupsd.service\nsystemctl start/enable cups-browsed.service\n```\nThen add printer HP PhotoSmart 6520 using http://localhost:631/ discover network  \nnote use hpcups over hpijs to get border printed   \n\n### HP ENVY 5540\nAdd printer using: `socket://192.168.1.12:9100` and for driver: \n`HP Envy 5540 Series, hpcups 3.17.11 (en, en)`\n\n## Flex2\n\n### Disable laptop lid switch handle\nusefull when using external monitor\u003cbr\u003e\nEdit `/etc/systemd/logind.conf` and enable:  \n```\nLidSwitchIgnoreInhibited=yes\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmizux%2Fconfig","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmizux%2Fconfig","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmizux%2Fconfig/lists"}