File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -991,19 +991,26 @@ jobs:
991991 ```bash
992992 wget https://github.com/NDXDeveloper/slashsum/releases/download/${{ github.ref_name }}/slashsum_${{ github.ref_name }}_amd64.deb
993993 sudo apt install ./slashsum_${{ github.ref_name }}_amd64.deb
994+ hash -r
994995 slashsum --version
995996 ```
996997
997998 #### Linux (Snap Store - Recommended)
998999 ```bash
9991000 sudo snap install slashsum
1001+ sudo snap connect slashsum:home
1002+ sudo snap connect slashsum:removable-media
1003+ hash -r # Refresh shell path cache
10001004 slashsum --version
10011005 ```
10021006
10031007 #### Linux (Snap from GitHub Release)
10041008 ```bash
10051009 wget https://github.com/NDXDeveloper/slashsum/releases/download/${{ github.ref_name }}/slashsum_${{ github.ref_name }}_amd64.snap
10061010 sudo snap install --dangerous slashsum_${{ github.ref_name }}_amd64.snap
1011+ sudo snap connect slashsum:home
1012+ sudo snap connect slashsum:removable-media
1013+ hash -r # Refresh shell path cache
10071014 slashsum --version
10081015 ```
10091016
Original file line number Diff line number Diff line change @@ -36,6 +36,7 @@ usermod -aG wheel your_username
3636# =============================================================================
3737
3838sudo apt install ./slashsum_*_amd64.deb
39+ hash -r
3940
4041# Or with dpkg
4142sudo dpkg -i slashsum_*_amd64.deb
@@ -87,6 +88,9 @@ sudo ln -s /var/lib/snapd/snap /snap
8788
8889## Install from Snap Store (recommended - auto-updates)
8990sudo snap install slashsum
91+ sudo snap connect slashsum:home
92+ sudo snap connect slashsum:removable-media
93+ hash -r
9094
9195## Run
9296slashsum --version
@@ -98,6 +102,9 @@ slashsum --version
98102
99103## Install the snap package from release file
100104sudo snap install --dangerous slashsum_*_amd64.snap
105+ sudo snap connect slashsum:home
106+ sudo snap connect slashsum:removable-media
107+ hash -r
101108
102109## Run
103110slashsum --version
Original file line number Diff line number Diff line change @@ -261,14 +261,20 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
261261
262262/// Expands tilde (~) to home directory in file paths
263263/// Handles both "~" and "~/path" patterns
264+ /// Supports snap confinement (SNAP_REAL_HOME), standard Unix (HOME), and Windows (USERPROFILE)
264265fn expand_tilde ( path : & str ) -> PathBuf {
265- if path. starts_with ( "~/" ) {
266- if let Some ( home) = env:: var_os ( "HOME" ) . or_else ( || env:: var_os ( "USERPROFILE" ) ) {
267- return PathBuf :: from ( home) . join ( & path[ 2 ..] ) ;
268- }
269- } else if path == "~" {
270- if let Some ( home) = env:: var_os ( "HOME" ) . or_else ( || env:: var_os ( "USERPROFILE" ) ) {
271- return PathBuf :: from ( home) ;
266+ if path. starts_with ( "~/" ) || path == "~" {
267+ // Priority: SNAP_REAL_HOME (snap), HOME (Unix), USERPROFILE (Windows)
268+ let home = env:: var_os ( "SNAP_REAL_HOME" )
269+ . or_else ( || env:: var_os ( "HOME" ) )
270+ . or_else ( || env:: var_os ( "USERPROFILE" ) ) ;
271+
272+ if let Some ( home_dir) = home {
273+ if path == "~" {
274+ return PathBuf :: from ( home_dir) ;
275+ } else {
276+ return PathBuf :: from ( home_dir) . join ( & path[ 2 ..] ) ;
277+ }
272278 }
273279 }
274280 PathBuf :: from ( path)
You can’t perform that action at this time.
0 commit comments