@@ -19,6 +19,7 @@ froster_data_backup_dir=${froster_all_data_backups}/froster_${date_YYYYMMDDHHMMS
19
19
froster_config_dir=${XDG_CONFIG_HOME} /froster
20
20
froster_all_config_backups=${XDG_CONFIG_HOME} /froster_backups
21
21
froster_config_backup_dir=${froster_all_config_backups} /froster_${date_YYYYMMDDHHMMSS} .bak
22
+ version_regex=' ^[0-9]+\.[0-9]+\.[0-9]+$'
22
23
23
24
# ####################
24
25
# ## ERROR HANDLER ###
@@ -76,11 +77,16 @@ spinner() {
76
77
# Check all needed apt dependencies to install froster
77
78
check_dependencies () {
78
79
80
+ PIPX_BIN_DIR=" ${PIPX_BIN_DIR:- $HOME / .local/ bin} "
81
+
79
82
# Check if ~/.local/bin is in PATH
80
83
local_bin_in_path=false
81
84
if [[ " :$PATH :" == * " :$HOME /.local/bin:" * ]]; then
82
85
local_bin_in_path=true
86
+ else
87
+ echo -e " \nAdding $PIPX_BIN_DIR to PATH for this installation session"
83
88
fi
89
+ export PATH=" $PATH :$PIPX_BIN_DIR "
84
90
85
91
# Check if curl is installed
86
92
if [[ -z $( command -v curl) ]]; then
@@ -241,7 +247,6 @@ install_pipx() {
241
247
242
248
# Check if pipx is installed
243
249
pipx_version=$( python3 -m pipx --version 2> /dev/null)
244
- version_regex=' ^[0-9]+\.[0-9]+\.[0-9]+$'
245
250
246
251
if [[ $pipx_version =~ $version_regex ]]; then
247
252
@@ -257,38 +262,21 @@ install_pipx() {
257
262
echo " Installing pipx via pip"
258
263
python3 -m pip install --upgrade pipx > /dev/null 2>&1
259
264
260
- # Ensure path for pipx
261
- echo " Ensuring path for pipx"
262
- if [[ $( command -v pipx) ]]; then
263
- pipx ensurepath > /dev/null 2>&1
265
+ # ensure path for pipx
266
+ pipx_version=$( python3 -m pipx --version 2> /dev/null)
267
+ if [[ $pipx_version =~ $version_regex ]]; then
268
+ python3 -m pipx ensurepath > /dev/null 2>&1
269
+ echo " ...pipx installed"
264
270
else
265
- $HOME /.local/bin/ pipx ensurepath > /dev/null 2>&1
271
+ echo " ... pipx ensurepath failed "
266
272
fi
267
-
268
- echo " ...pipx installed"
269
- <<< <<< < HEAD
270
-
271
- fi
272
-
273
- =======
274
- else
275
- echo " ...pipx already installed"
276
-
277
- echo -e " \nUpgrading pipx..."
278
- pipx upgrade pipx > /dev/null 2>&1 &
279
- spinner $!
280
- echo " ...pipx upgraded"
281
-
282
- echo -e " \nEnsuring path for pipx..."
283
- pipx ensurepath > /dev/null 2>&1
284
- echo " ...path ensured"
273
+
285
274
fi
286
275
287
276
# Check if PIPX_BIN_DIR is set and not empty, otherwise default to ~/.local/bin
288
277
PIPX_BIN_DIR=" ${PIPX_BIN_DIR:- $HOME / .local/ bin} "
289
278
echo -e " \nAdding $PIPX_BIN_DIR to PATH for this installation session"
290
279
export PATH=" $PATH :$PIPX_BIN_DIR "
291
- >>>>>>> c29f433e57877f8eb12eb3f002fbe6bace698ae3
292
280
}
293
281
294
282
install_froster () {
@@ -302,28 +290,26 @@ install_froster() {
302
290
echo " ...old froster files removed"
303
291
304
292
if [ " $LOCAL_INSTALL " = " true" ]; then
305
- <<< <<< < HEAD
293
+
306
294
echo " Installing from the current directory"
307
- =======
308
295
echo -e " \nInstalling Froster from the current directory in --editable mode..."
309
- >>>>>>> c29f433e57877f8eb12eb3f002fbe6bace698ae3
310
296
python3 -m pip install -e . > /dev/null 2>&1 &
311
297
spinner $!
312
298
echo " ...Froster installed"
299
+
313
300
else
314
- <<< <<< < HEAD
301
+
315
302
echo " Installing from PyPi package repository"
316
303
python3 -m pipx install froster > /dev/null 2>&1 &
317
- =======
304
+
318
305
if pipx list | grep froster > /dev/null 2>&1 ; then
319
306
echo -e " \nUninstalling old Froster..."
320
307
pipx uninstall froster > /dev/null 2>&1
321
308
echo " ...old Froster uninstalled"
322
309
fi
323
310
324
311
echo -e " \nInstalling Froster from PyPi package repository"
325
- pipx install froster > /dev/null 2>&1 &
326
- >>>>>>> c29f433e57877f8eb12eb3f002fbe6bace698ae3
312
+ python3 -m pipx install froster > /dev/null 2>&1 &
327
313
spinner $!
328
314
echo " ...Froster installed"
329
315
fi
@@ -489,16 +475,12 @@ echo -e "\n\nSUCCESS!"
489
475
echo -e " \nFroster version: $version "
490
476
echo -e " Installation path: $( which froster) "
491
477
492
- <<< <<< < HEAD
478
+
493
479
# Refresh Terminal
494
480
if [[ " $local_bin_in_path " = false ]]; then
495
481
echo
496
482
echo " You will need to open a new terminal or refresh your current terminal session by running command:"
497
483
echo " source ~/.bashrc"
498
484
echo
499
485
fi
500
- =======
501
- # Print post-installation instructions
502
- echo -e " \n\nYou will need to open a new terminal or refresh your current terminal session by running command:"
503
- echo -e " source ~/.bashrc\n"
504
- >>>>>>> c29f433e57877f8eb12eb3f002fbe6bace698ae3
486
+
0 commit comments