{"id":26164885,"url":"https://github.com/sileshn/linuxmintwsl2","last_synced_at":"2026-04-04T02:03:21.401Z","repository":{"id":37630112,"uuid":"321505758","full_name":"sileshn/LinuxmintWSL2","owner":"sileshn","description":"Linux mint on wsl2 using wsldl","archived":false,"fork":false,"pushed_at":"2025-03-14T00:06:12.000Z","size":1531,"stargazers_count":162,"open_issues_count":0,"forks_count":18,"subscribers_count":5,"default_branch":"ubuntu","last_synced_at":"2025-03-29T03:07:28.556Z","etag":null,"topics":["bash-on-windows","linuxmint","mint","windows-subsystem-linux","wsl2","wsldl"],"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/sileshn.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}},"created_at":"2020-12-15T00:09:57.000Z","updated_at":"2025-03-15T22:32:51.000Z","dependencies_parsed_at":"2023-02-11T22:31:12.085Z","dependency_job_id":"42fcc9c4-14e6-42d1-bf0d-3d850187cc14","html_url":"https://github.com/sileshn/LinuxmintWSL2","commit_stats":null,"previous_names":[],"tags_count":52,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sileshn%2FLinuxmintWSL2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sileshn%2FLinuxmintWSL2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sileshn%2FLinuxmintWSL2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sileshn%2FLinuxmintWSL2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sileshn","download_url":"https://codeload.github.com/sileshn/LinuxmintWSL2/tar.gz/refs/heads/ubuntu","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247284950,"owners_count":20913704,"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":["bash-on-windows","linuxmint","mint","windows-subsystem-linux","wsl2","wsldl"],"created_at":"2025-03-11T15:57:09.968Z","updated_at":"2026-04-04T02:03:21.387Z","avatar_url":"https://github.com/sileshn.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LinuxmintWSL2\nLinuxmint on WSL2 (Windows 10 FCU or later) based on [wsldl](https://github.com/yuk7/wsldl).\n\n\u003ca href=\"https://ibb.co/TB0JM4yN\"\u003e\u003cimg src=\"https://i.ibb.co/pvKNjfqk/Screenshot-2025-05-21-051706.png\" alt=\"Screenshot-2025-05-21-051706\" border=\"0\"\u003e\u003c/a\u003e\n[![Github All Releases](https://img.shields.io/github/downloads/sileshn/LinuxmintWSL2/total.svg?style=flat-square)](https://github.com/sileshn/LinuxmintWSL2/releases)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)\n[![License](https://img.shields.io/github/license/sileshn/LinuxmintWSL2.svg?style=flat-square)](https://raw.githubusercontent.com/sileshn/LinuxmintWSL2/main/LICENSE)\n\n## Features and important information\nLinuxmintWSL2 has the following features during the installation stage.\n* Increase virtual disk size from the default 256GB\n* Create a new user and set the user as default\n* LinuxmintWSL2 Supports systemd natively if you are running wsl v0.67.6 (more details [here](https://devblogs.microsoft.com/commandline/systemd-support-is-now-available-in-wsl/)) and above. For earlier versions of wsl, systemd is supported using diddledani's [one-script-wsl2-systemd](https://github.com/diddledani/one-script-wsl2-systemd). This is done automatically during initial setup.\n* LinuxmintWSL2 includes a wsl.conf file which only has section headers. Users can use this to configure the distro to their liking. You can read more about wsl.conf and its configuration settings [here](https://docs.microsoft.com/en-us/windows/wsl/wsl-config).\n\n## Requirements\n* For x64 systems: Version 1903 or higher, with Build 18362 or higher.\n* For ARM64 systems: Version 2004 or higher, with Build 19041 or higher.\n* Builds lower than 18362 do not support WSL 2.\n* If you are running Windows 10 version 2004 or higher, you can install all components required to run wsl2 with a single command. This will install ubuntu by default. More details are available [here](https://devblogs.microsoft.com/commandline/install-wsl-with-a-single-command-now-available-in-windows-10-version-2004-and-higher/).\n\t```cmd\n\twsl.exe --install\n\t```\n* If you are running Windows 10 lower then version 2004, follow the steps below to install requirements manually. For more details, check [this](https://docs.microsoft.com/en-us/windows/wsl/install-manual) microsoft document.\n\t* Enable Windows Subsystem for Linux feature.\n\t```cmd\n\tdism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart\n\t```\n\t* Enable Virtual Machine feature\n\t```cmd\n\tdism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart\n\t```\n\t* Download and install the latest Linux kernel update package from [here](https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi).\n\n## Install\n* Make sure all the steps mentioned under \"Requirements\" are completed.\n* [Download](https://github.com/sileshn/LinuxmintWSL2/releases/latest) installer zip\n* Extract all files in zip file to same directory\n* Set version 2 as default. Note that this step is required only for manual installation.\n  ```dos\n  wsl --set-default-version 2\n  ```\n* Run Mint.exe to extract rootfs and register to WSL\n\n**Note:**\nExe filename is using the instance name to register. If you rename it you can register with a diffrent name and have multiple installs.\n\n## How-to-Use(for Installed Instance)\n#### exe Usage\n```\nUsage :\n    \u003cno args\u003e\n      - Open a new shell with your default settings.\n        Inherit current directory (with exception that %%USERPROFILE%% is changed to $HOME).\n\n    run \u003ccommand line\u003e\n      - Run the given command line in that instance. Inherit current directory.\n\n    runp \u003ccommand line (includes windows path)\u003e\n      - Run the given command line in that instance after converting its path.\n\n    config [setting [value]]\n      - `--default-user \u003cuser\u003e`: Set the default user of this instance to \u003cuser\u003e.\n      - `--default-uid \u003cuid\u003e`: Set the default user uid of this instance to \u003cuid\u003e.\n      - `--append-path \u003ctrue|false\u003e`: Switch of Append Windows PATH to $PATH\n      - `--mount-drive \u003ctrue|false\u003e`: Switch of Mount drives\n      - `--wsl-version \u003c1|2\u003e`: Set the WSL version of this instance to \u003c1 or 2\u003e\n      - `--default-term \u003cdefault|wt|flute\u003e`: Set default type of terminal window.\n\n    get [setting [value]]\n      - `--default-uid`: Get the default user uid in this instance.\n      - `--append-path`: Get true/false status of Append Windows PATH to $PATH.\n      - `--mount-drive`: Get true/false status of Mount drives.\n      - `--wsl-version`: Get the version os the WSL (1/2) of this instance.\n      - `--default-term`: Get Default Terminal type of this instance launcher.\n      - `--wt-profile-name`: Get Profile Name from Windows Terminal\n      - `--lxguid`: Get WSL GUID key for this instance.\n\n    backup [file name]\n      - `*.tar`: Output backup tar file.\n      - `*.tar.gz`: Output backup tar.gz file.\n      - `*.ext4.vhdx`: Output backup ext4.vhdx file. (WSL2 only)\n      - `*.ext4.vhdx.gz`: Output backup ext4.vhdx.gz file. (WSL2 only)\n      - `*.reg`: Output settings registry file.\n\n    clean\n      - Uninstall that instance.\n\n    help\n      - Print this usage message.\n```\n\n#### Just Run exe\n```cmd\n\u003eMint.exe\n[root@PC-NAME user]#\n```\n\n#### Run with command line\n```cmd\n\u003eMint.exe run uname -r\n4.4.0-43-Microsoft\n```\n\n#### Run with command line with path translation\n```cmd\n\u003eMint.exe runp echo C:\\Windows\\System32\\cmd.exe\n/mnt/c/Windows/System32/cmd.exe\n```\n\n#### Change Default User(id command required)\n```cmd\n\u003eMint.exe config --default-user user\n\n\u003eMint.exe\n[user@PC-NAME dir]$\n```\n\n#### Set \"Windows Terminal\" as default terminal\n```cmd\n\u003eMint.exe config --default-term wt\n```\n\n## How to setup\n\nLinuxmintWSL2 will ask you to create a new user during its first run. If you chose to create a new user during initial setup, the steps below are not required unless you want to create additional users.\n```dos\npasswd\nuseradd -m -g users -G sudo -s /bin/bash \u003cusername\u003e\necho \"%sudo ALL=(ALL) ALL\" \u003e/etc/sudoers.d/sudo\npasswd \u003cusername\u003e\nexit\n```\n\nYou can set the user you created as default user using 2 methods.\n\nOpen Mint.exe, run the following command (replace username with the actual username you created).\n```dos\nsed -i '/\\[user\\]/a default = username' /etc/wsl.conf\n```\n\nShutdown and restart the distro (this step is important).\n\n(or)\n\nExecute the command below in a windows cmd terminal from the directory where Mint.exe is installed.\n```dos\n\u003eMint.exe config --default-user \u003cusername\u003e\n```\n\n## How to uninstall instance\n```dos\n\u003eMint.exe clean\n\n```\n\n## How to backup instance\nexport to backup.tar.gz (WSL1 or 2)\n```cmd\n\u003eMint.exe backup backup.tar.gz\n```\nexport to backup.ext4.vhdx.gz  (WSL2 only)\n```cmd\n\u003eMint.exe backup backup.ext4.vhdx.gz\n```\n\n## How to restore instance\n\nThere are 2 ways to do it. \n\nRename the backup to rootfs.tar.gz and run Mint.exe\n\n(or)\n\n.tar(.gz)\n```cmd\n\u003eMint.exe install backup.tar.gz\n```\n.ext4.vhdx(.gz)\n```cmd\n\u003eMint.exe install backup.ext4.vhdx.gz\n```\n\nYou may need to run the command below in some circumstances.\n```cmd\n\u003eMint.exe --default-uid 1000\n```\n\n## How to build\n\n#### Prerequisites\n\nDocker, tar, zip, unzip, bsdtar need to be installed.\n\n```dos\ngit clone git@gitlab.com:sileshn/LinuxmintWSL2.git\ncd LinuxmintWSL2\nmake\n\n```\nCopy the Linuxmint.zip file to a safe location and run the command below to clean.\n```dos\nmake clean\n\n```\n\n## How to run docker in LinuxmintWSL2 without using docker desktop.\n\nDelete older versions of docker if installed.\n```dos\nsudo apt-get remove docker docker-engine docker.io containerd runc\n\n```\n\nExecute the commands below to install docker.\n```dos\nsudo apt -y install apt-transport-https ca-certificates curl software-properties-common\ncurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -\nsudo add-apt-repository \"deb [arch=amd64] https://download.docker.com/linux/ubuntu $(. /etc/os-release; echo \"$UBUNTU_CODENAME\") stable\"\nsudo apt update\nsudo apt install docker-ce\nsudo usermod -aG docker $USER\n```\n\nFollow [this](https://blog.nillsf.com/index.php/2020/06/29/how-to-automatically-start-the-docker-daemon-on-wsl2/) blog post for further details on how to set it up. Alternatively, if using systemd, use the commands below to setup and reboot.\n```dos\nsudo systemctl start docker.service\nsudo systemctl enable docker.service\nsudo usermod -aG docker $USER\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsileshn%2Flinuxmintwsl2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsileshn%2Flinuxmintwsl2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsileshn%2Flinuxmintwsl2/lists"}