Mount portable directory as consistent user directory.

Overview

PortableDesktop

Mount portable directory as consistent user directory.

PortableDesktopCli

help

PortableDesktopCli [options] <Target Path> <Link Path> [Home name]
        options:
                -f|--force: If the <Link Path> already exists, delete it and recreate it.
        args:
                Target Path: Specifies the physical drive and path that you want to assign to a virtual drive.
                Link Path: Specifies the virtual drive and path to which you want to assign a path.
                Home name: The subdirectory name of the <Link Path> directory, Will be specified as the value of %HOME%, which defaults to [.home].

example

PortableDesktopCli [options] <Target Path> <Link Path> [Home name]
        options:
                -f|--force: If the <Link Path> already exists, delete it and recreate it.
        args:
                Target Path: Specifies the physical drive and path that you want to assign to a virtual drive.
                Link Path: Specifies the virtual drive and path to which you want to assign a path.
                Home name: The subdirectory name of the <Link Path> directory, Will be specified as the value of %HOME%, which defaults to [.home].

Target Path:
E:\test
Link Path:
X:\work
X:\work <<===>> E:\test
%HOME% => X:\work\.home
Microsoft Windows [10.0.19042.2846]
(c) Microsoft Corporation。

X:\work>set
HOME=X:\work\.home
HOMEDRIVE=X:
HOMEPATH=X:\work\.home
LOCALAPPDATA=X:\work\.home\AppData\Local
PORTABLE_DESKTOP_ENV_LINK_PATH=X:\work
PORTABLE_DESKTOP_ENV_TARGET_PATH=E:\test
TEMP=X:\work\.home\AppData\Local\Temp
TMP=X:\work\.home\AppData\Local\Temp
USERPROFILE=X:\work\.home
...

X:\work>

PortableDesktop

help

PortableDesktop [Target Path] [Link Path] [Home name]
        args:
                Target Path: Specifies the physical drive and path that you want to assign to a virtual drive.
                Link Path: Specifies the virtual drive and path to which you want to assign a path.
                Home name: The subdirectory name of the <Link Path> directory, Will be specified as the value of %HOME%, which defaults to [.home].

example

  • No parameters, double click to open
    1

  • Input parameters
    2

  • Enter to enter the main window
    3

  • Enter the command and press Enter to execute it. The command running environment is based on:

HOME=X:\work\.home
HOMEDRIVE=X:
HOMEPATH=X:\work\.home
LOCALAPPDATA=X:\work\.home\AppData\Local
PORTABLE_DESKTOP_ENV_LINK_PATH=X:\work
PORTABLE_DESKTOP_ENV_TARGET_PATH=E:\test
TEMP=X:\work\.home\AppData\Local\Temp
TMP=X:\work\.home\AppData\Local\Temp
USERPROFILE=X:\work\.home
...

.profile

%HOME%/[.profile.cmd|.profile.bat]

One of these two files is automatically executed when the program starts (if the file exists)

.pd.json

%HOME%/.pd.json

Configuration file, currently supports shortcuts configuration
Works only on PortableDesktop, not on PortableDesktopCli

example

{
    "shortcuts": {
        "open-url": "msedge",
        "open-file": "explorer",
        "open-home": "explorer %HOME%"
    }
}
  • entering [open-home], [explorer %HOME%] will be executed
  • entering [open-url github.com], [msedge github.com] will be executed
You might also like...
Minimal, flexible & user-friendly X and Wayland tiling window manager with rust
Minimal, flexible & user-friendly X and Wayland tiling window manager with rust

SSWM Minimal, flexible & user-friendly X and Wayland tiling window manager but with rust. Feel free to open issues and make pull requests. [Overview]

Byte is a blazingly fast🚀 Discord Bot with a user-friendly design using twilight written in rust🦀.

Byte Byte is a blazingly fast🚀 Discord Bot with a user-friendly design using twilight written in rust🦀. How To Run There is a public version of the

shavee is a Program to automatically decrypt and mount ZFS datasets using Yubikey HMAC as 2FA or any USB drive with support for PAM to auto mount home directories.

shavee is a simple program to decrypt and mount encrypted ZFS user home directories at login using Yubikey HMAC or a Simple USB drive as 2FA written in rust.

High level FFI binding around the sys mount & umount2 calls, for Rust

sys-mount High level FFI bindings to the mount and umount2 system calls, for Rust. Examples Mount This is how the mount command could be written with

mount nhentai as a folder

Why? why not Seriously, why? a friend misread a mount output filesystem as "nsfw" so i had to make it real How do I use this cargo run mount point

the file filesystem: mount semi-structured data (like JSON) as a Unix filesystem

ffs: the file filesystem ffs, the file filessytem, let's you mount semi-structured data as a fileystem---a tree structure you already know how to work

Eventually consistent values for Rust

Eventuals give you the most up-to-date snapshots of some value. They are like Futures that update over time, continually resolving to an eventually co

ASURA implementation in Rust. A better alternative of consistent-hashing.
ASURA implementation in Rust. A better alternative of consistent-hashing.

ASURA implementation in Rust. A better alternative of consistent-hashing.

A lock-free, partially wait-free, eventually consistent, concurrent hashmap.
A lock-free, partially wait-free, eventually consistent, concurrent hashmap.

A lock-free, partially wait-free, eventually consistent, concurrent hashmap. This map implementation allows reads to always be wait-free on certain pl

Sleek is a CLI tool for formatting SQL. It helps you maintain a consistent style across your SQL code, enhancing readability and productivity.

Sleek: SQL Formatter ✨ Sleek is a CLI tool for formatting SQL. It helps you maintain a consistent style across your SQL code, enhancing readability an

Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports.
Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports.

libui: a portable GUI library for C This README is being written. Status It has come to my attention that I have not been particularly clear about how

The feature-rich, portable async channel library

The feature-rich, portable async channel library crates.io docs.rs Why use Postage? Includes a rich set of channels. | barrier | broadcast | dispa

A modern, portable, easy to use crypto library.
A modern, portable, easy to use crypto library.

Sodium is a new, easy-to-use software library for encryption, decryption, signatures, password hashing and more. It is a portable, cross-compilable, i

A tiny, super simple and portable benchmarking library.

benchmark-simple A tiny benchmarking library for Rust. Trivial to use Works pretty much everywhere, including WebAssembly (WASI, but also in-browser)

hy-rs, pronounced high rise, provides a unified and portable to the hypervisor APIs provided by various platforms.

Introduction The hy-rs crate, pronounced as high rise, provides a unified and portable interface to the hypervisor APIs provided by various platforms.

Lane-Associated Vector (LAV): Portable SIMD vector trait as GAT of SIMD lane trait.

lav Lane-Associated Vector (LAV): Portable SIMD vector trait as GAT of SIMD lane trait. NOTE: This crate requires nightly Rust. Provides SIMD lane tra

Portable linked-list allocator designed for baremetal systems

Palloc Portable linked-list allocator for embedded / baremetal systems. Using the crate Include this in the [dependencies] section of Cargo.toml pallo

A small, portable and extensible game framework written in Rust.
A small, portable and extensible game framework written in Rust.

What is This? Crayon is a small, portable and extensible game framework, which loosely inspired by some amazing blogs on bitsquid, molecular and flooo

Foundry is a blazing fast, portable and modular toolkit for Ethereum application development written in Rust.

foundry Foundry is a blazing fast, portable and modular toolkit for Ethereum application development written in Rust. Foundry consists of: Forge: Ethe

Owner
Kerwin Bryant
💻🏃🎵
Kerwin Bryant
hy-rs, pronounced high rise, provides a unified and portable to the hypervisor APIs provided by various platforms.

Introduction The hy-rs crate, pronounced as high rise, provides a unified and portable interface to the hypervisor APIs provided by various platforms.

S.J.R. van Schaik 12 Nov 1, 2022
File Tree Fuzzer allows you to create a pseudo-random directory hierarchy filled with some number of files.

FTZZ File Tree Fuzzer allows you to create a pseudo-random directory hierarchy filled with some number of files. Installation $ cargo +nightly install

Alex Saveau 22 Dec 28, 2022
Count lines from files in a directory.

rust-cloc Count lines from files in a directory. Features Count the number of empty and non-empty lines in total from all files in a directory. Count

Daniel Liu 2 Apr 27, 2022
Automatically build a Rust module tree from the project directory structure

Hypermod An even lazier version of automod and supermod. Searches the src/ directory recursively for .rs files, then builds a module tree using the di

null 4 Aug 3, 2022
Simple color picker that lets the user create harmonic palettes with ease.

epick Simple color picker that lets the user create harmonic palettes with ease. Get it You can checkout the web demo over here or get a native binary

Wojciech Kępka 101 Dec 19, 2022
Add nice user-facing diagnostics to your errors without being weird about it.

thisdiagnostic is a Rust library for adding rich diagnostic metadata to errors, for some really fancy and customizable error reporting!

Kat Marchán 14 Feb 2, 2022
Simple fake AWS Cognito User Pool API server for development.

Fakey Cognito ?? Homepage Simple fake AWS Cognito API server for development. ✅ Implemented features AdminXxx on User Pools API. Get Started # run wit

naokirin 4 Aug 30, 2022
A program written in Rust, that allows the user to find the current location of the International Space Station and see it on a map.

ISS Location ViewFinder A program written in Rust, that allows the user to find the current location of the International Space Station and see it on

Suvaditya Mukherjee 2 Nov 8, 2021
Take user input in Rust.

Take user input in Rust.

Kutay 0 Jan 25, 2022
Rust library to detect bots using a user-agent string

Rust library to detect bots using a user-agent string

Bryan Morgan 8 Dec 21, 2022