From c8b915fa6274d7cb3ec2abf200f0f8f19d700bce Mon Sep 17 00:00:00 2001 From: "committer@tuxwarrior" Date: Wed, 25 Feb 2026 14:05:09 -0500 Subject: [PATCH] =?UTF-8?q?i3wm=20=E2=9E=94=20hyprland=20(wip)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit still a way to go. but, i am moving in the right direction, at least. --- README.md | 98 +++++++++------------- dots/archinstall/tuxwarrior/options.sh | 3 +- dots/bash/.bashrc | 31 +++++-- dots/bin/gitReposSoftlinker.sh | 3 + dots/bin/startup.sh | 6 +- dots/environment/environment | 15 ++-- dots/librewolf/user.js | 59 +------------- scripts/99_deploy.sh | 108 +++---------------------- 8 files changed, 96 insertions(+), 227 deletions(-) diff --git a/README.md b/README.md index 65fdb3c..d490ef0 100644 --- a/README.md +++ b/README.md @@ -182,26 +182,25 @@ please note, this step is only needed when arch is to be installed on a new host - `chmodAllSh.sh` (fixes mode change from 14001 to 217 errors in repo) - `reboot` and re-login -## step seven :: nvidia (optional) - -if the system runs nvidia, follow the steps in [nvidia.md](nvidia.md) to set up the nvidia driver. - ## step eight :: post installation tasks - - **KEEPASSXC** - - - `/home/poq/syncDir/secrets/keePassXC/passwordVaultA.kdbx` - + - open keepassxc + - open the password vault at: + - `/home/poq/syncDir/secrets/keePassXC/passwordVaultA.kdbx` + - enable browser integration @ settings ➔ browser integration + - name client as `YYMM_hostname.browser`, like `2602_tuxwarrior.librewolf` + - view clients @ database settings ➔ browser integration - **PCLOUD** - log in - - settings ➔ disk usage ➔ disk space: 2048 ➔ 10240 & cache size: 5120 ➔ 51200 (~51 gb) - + - settings ➔ disk usage ➔ + - disk space: 2048 ➔ 10240 + - cache size: 5120 ➔ 51200 (~51 gb) - **KITTEN** - `$ kitten themes 'cyberpunk neon'` - to list all themes: `$ kitten themes` - (search for `tropical` ➔ select `tropical neon` ➔ press `M` to modify kitten.conf and start using the theme) - - favourite themes (as of feb 26): + - alternative themes (as of feb 26): - dark background - `kitten themes 'default'` - `kitten themes 'adwaita darker'` @@ -219,81 +218,61 @@ if the system runs nvidia, follow the steps in [nvidia.md](nvidia.md) to set up - `kitten themes 'ubuntu'` - `kitten themes 'neowave'` - `kitten themes 'box'` - - `kitten themes 'papercolor dark'` - **VSCODIUM** - **local sync** - open extensions and search for `local sync` - install the extension - open extension settings - - 1. disable auto backup files on change - - 2. set path to backup files: + - 1. set path to backup files: - `/home/poq/syncDir/gitRepos/gi.op.fo/fiodb/db/vscodium/syncBackup` - - 3. run `local sync: restore` (ctrl + shift + p) - - 4. enable auto backup files on change + - 2. run `local sync: restore` (ctrl + shift + p) - **open workspace :: open all active projects** - file ➔ open workspace from file ➔ `/home/poq/syncDir/gitRepos/gi.op.fo/fiodb/db/workspaces/vscodium/workspace/one.code-workspace` - - several .sh files might be flagged as modified (in gitkraken they will show up as `file mode changes from 14001 to 217`, which means from chmod 755 to 644), then you can fix this running the command `chmodAllSh.sh`. + - several .sh files might be flagged as modified (in gitkraken they will show up as `file mode changes from 14001 to 217`, which means from chmod 755 to 644). you can fix this running the command `chmodAllSh.sh`. - **GITKRAKEN** - - preferences ➔ integrations ➔ connect to gitlab - - preferences ➔ ssh ➔ uncheck `use local ssh agent` - preferences ➔ ui customization ➔ theme: `gitkraken dark - high contrast` - - register fingerprint for ssh key(s) - - if the ssh key for a git repo has never been used, the ssh connection will fail as the key is not yet registered. - - `$ ssh git@gi.op.fo -p 2002` - - `Are you sure you want to continue connecting (yes/no/[fingerprint])? yes` + - preferences ➔ integrations ➔ connect to gitlab + - currently not needed, as gi.op.fo is not using ssh + - preferences ➔ ssh ➔ uncheck `use local ssh agent` + - select keys to use + - register fingerprint for ssh key(s) + - if the ssh key for a git repo has never been used, the ssh connection will fail as the key is not yet registered. + - `$ ssh git@gi.op.fo -p 2002` + - `Are you sure you want to continue connecting (yes/no/[fingerprint])? yes` - **LIBREWOLF** - - settings ➔ change device name ➔ `YYMM - poq @ tuxwarrior` - - settings ➔ set as default browser - - settings ➔ and log into librewolf sync - - - default browser: - - settings ➔ select the option to set librewolf as default browser - - default search engine: - - change default search engine to presearch, and login to presearch + - settings ➔ change device name ➔ `YYMM_username@host` (example: `2602_poq@tuxwarrior`) + - settings ➔ enable and log into firefox sync + - search engine: + - this should be set automatically - theme - - extensions icon ➔ manage extensions ➔ themes ➔ enable theme `xxxx` - - or, enable: - - alt 1: https://addons.mozilla.org/en-US/librewolf/addon/neon-sign-shine/ - - alt 2: https://addons.mozilla.org/en-US/librewolf/addon/pitch-black-pink/ - - alt 3: https://addons.mozilla.org/en-US/librewolf/addon/activist-bold_/ + - this should be set automatically + - obsolete: + - extensions icon ➔ manage extensions ➔ themes ➔ enable theme `xxxx` + - or, enable: + - alt 1: https://addons.mozilla.org/en-US/firefox/addon/neon-sign-shine/ + - alt 2: https://addons.mozilla.org/en-US/firefox/addon/pitch-black-pink/ + - alt 3: https://addons.mozilla.org/en-US/firefox/addon/activist-bold_/ - install dictionaries for - - [en-AU](https://addons.mozilla.org/en-US/librewolf/addon/english-australian-dictionary/) and - - [no-NB](https://addons.mozilla.org/en-US/librewolf/addon/norsk-bokm%C3%A5l-ordliste/) + - [en-AU](https://addons.mozilla.org/en-US/firefox/addon/english-australian-dictionary/) and + - [no-NB](https://addons.mozilla.org/en-US/firefox/addon/norsk-bokm%C3%A5l-ordliste/) - update singlefile - name format (extension icon ➔ manage extensions ➔ extensions ➔ singlefile ➔ preferences ➔ file format): - old: `%if-empty<{page-title}|No title> ({date-locale} {time-locale}).{filename-extension}` - new: `{year-locale}{month-locale}{day-locale}_{url-href-flat}_.{filename-extension}` - open "save as" dialog (… ➔ file format): - check 'open the "Save as" dialog to confirm the file name' - - open and install extension found on the top of that page - - open `web scrobbler` extension and log in to last.fm + - open the `web scrobbler` extension and log in to last.fm - extension: sidebery ➔ settings ➔ - help ➔ `import addon data` ➔ `/home/poq/syncDir/gitRepos/gitlab.com/dotsplus/librewolf/addons/sidebery/ sidebery-data-....json` - or, download the settings from: - - manual adjustments (if needed) ➔ + - manual adjustments ➔ - delete default containers (`personal`, `work`, `banking`, and `shopping`) - - select `bigTech` container ➔ `manage rules` for urls and add the following urls to include: - - `google.com`, `x.com`, `bing.com`, `youtube.com` - - select `quick` container ➔ manage rules and include: - - `quick.no`, `dlsoftware`, `quick3` - - bitwarden ➔ settings ➔ - - autofill ➔ - - disable: display identities as suggestions - - disable: display cards as suggestions - - enable: `Display suggestions when icon is selected` - - disable: always show cards as autofill suggestions on vault view - - disable: always show identities as autofil suggestions on vault view - - notifications ➔ - - disable: `ask to save and use passkeys` - - appearance ➔ - - vault customization ➔ - - enable: `Show quick copy actions on Vault` - **PCMAN** - edit ➔ preferences > - - (general ➔ uncheck [ ] erase files on removable media instead of "trash can" creation) <<- no, will keep this checked for now - layout ➔ show in places ➔ unselect all but "trash can" - **REAPER** + - ! UPDATE OF THIS SECTION IS NEEDED ! - NOTE: much of this can very likey be omitted, as the settings can be imported from: - `/home/poq/syncDir/gitRepos/gitlab.com/dotsplus/reaper/config/` - --- @@ -337,6 +316,7 @@ if the system runs nvidia, follow the steps in [nvidia.md](nvidia.md) to set up - also located in protonmail under the 'licence' label - extra: ? - **PRINTING** + - ! UPDATE OF THIS SECTION IS NEEDED ! - remove services cups.socket and cups.path - `$ sudo systemctl disable cups.path` - `$ sudo systemctl disable cups.socket` @@ -344,7 +324,7 @@ if the system runs nvidia, follow the steps in [nvidia.md](nvidia.md) to set up - if usb printer, and turned on, the printer should show up - useful: https://kb.adamsdesk.com/operating_system/arch_linux_install_network_printer/ -# error solving +# OBSOLETE : error solving - the keyring is reset on each reboot - symptoms: you're asked to re-login to nextcloud and protonvpn on each reboot diff --git a/dots/archinstall/tuxwarrior/options.sh b/dots/archinstall/tuxwarrior/options.sh index 668f159..3b53d0f 100755 --- a/dots/archinstall/tuxwarrior/options.sh +++ b/dots/archinstall/tuxwarrior/options.sh @@ -2,9 +2,8 @@ # klevstul -# these variables are used by 99_deploy.sh, as that script is importing this file using `source` +# these variables are used by `99_deploy.sh`, where this file is imported using `source` OPTIONS_LOADED=true # used to check if options have been loaded CLONE_TARGET_DIR=/tmp # directory to clone dots repository to SYSTEM_USER=poq # system user (! root) -#I3WM=false # {true, false} installs i3 packages - used by '99_deploy.sh' diff --git a/dots/bash/.bashrc b/dots/bash/.bashrc index 1b3c8fd..0f65d55 100644 --- a/dots/bash/.bashrc +++ b/dots/bash/.bashrc @@ -36,8 +36,6 @@ alias du="du --summarize --human-readable" alias dus="du --summarize --human-readable * | sort -h" alias encrypt="gpg --encrypt --sign --recipient frode@klevstul.com" alias extract="extract.sh" -alias faf="find . -type f -iname" # faf (find a file) -alias fif="grep -rnw . -e" # fif (find in file) | https://stackoverflow.com/questions/16956810/find-all-files-containing-a-specific-text-string-on-linux alias gparted="sudo gparted" alias grep='grep --color=auto' alias ip='ip -br a' @@ -50,8 +48,8 @@ alias ls='ls --color=auto' alias myip="echo $(wget http://ipinfo.io/ip -qO -)" alias neofetch='fastfetch' alias quantumfix="pw-metadata -n settings 0 clock.force-quantum 1024" -alias sb="source ~/.bashrc" -alias sbr="source /home/poq/syncDir/gitRepos/gi.op.fo/lnx-arch/dots/bash/.bashrc" # source bash (from) repo +alias sb="unalias -a; source ~/.bashrc" +alias sbr="unalias -a; source /home/poq/syncDir/gitRepos/gi.op.fo/lnx-arch/dots/bash/.bashrc" # source bash (from) repo alias sizeInBytes="stat -c %s" alias ssh="ssh -v" alias ssh_weba_r="ssh -v -t root@weba -p 1808 'export TERM=xterm; cd /tmp; bash -l'" @@ -74,7 +72,7 @@ alias pgmodeler="/home/poq/syncDir/swas/portableApps/pgmodeler_plus-1*" # x terminal shell start string | https://askubuntu.com/questions/1340319/ps1-string-full-documentation-and-reference-page # https://bash-prompt-generator.org/ # https://askubuntu.com/questions/193416/adding-timestamps-to-terminal-prompts -PS1='\n⚙[\D{%y%m%d%H%M}|\u@\h \w]\$ ' +PS1='\n⚙[\D{%y%m%d%H%M}|\u@\h|\w]\$ ' #PS1='\[\e[01;32m\]\u@\h \[\e[01;34m\]\w\[\e[00m\]\$ ' # change the window title of x terminals @@ -88,6 +86,29 @@ case ${TERM} in esac +# --- +# searching +# --- + +# find a file (faf) +faf() { + path="." + if [[ -n $2 ]]; then + path=$2 + fi + find ${path} -type f -iname ${1} 2>/dev/null +} + +# find in file (fif) | https://stackoverflow.com/questions/16956810/find-all-files-containing-a-specific-text-string-on-linux +fif() { + path="." + if [[ -n $2 ]]; then + path=$2 + fi + grep -rnw ${path} -e ${1} 2>/dev/null +} + + # --- # networking # --- diff --git a/dots/bin/gitReposSoftlinker.sh b/dots/bin/gitReposSoftlinker.sh index 11f2a2e..e4711c1 100755 --- a/dots/bin/gitReposSoftlinker.sh +++ b/dots/bin/gitReposSoftlinker.sh @@ -5,5 +5,8 @@ this_file_name=`basename "$0"` echo "$this_file_name" +# note: it is possible to create sym links / soft links to non-existing directories! hence, this can be done without having started pcloud. ln -s /home/poq/pCloudDrive/repos/git/gitlab.com ~/syncDir/gitRepos/ ln -s /home/poq/pCloudDrive/repos/pCloud_nonGit ~/syncDir/gitRepos/ + +ls -al ~/syncDir/gitRepos/ diff --git a/dots/bin/startup.sh b/dots/bin/startup.sh index 74cbc31..e4b6c9b 100755 --- a/dots/bin/startup.sh +++ b/dots/bin/startup.sh @@ -4,8 +4,10 @@ notify-send "<< startup.sh >>" -nextcloud & # nextcloud file sync -pcloud & # pcloud service +source /home/poq/syncDir/secrets/toBeSourced/secretsAsEnvVariables.sh # set secrets as env variables + +nextcloud & # nextcloud file sync +pcloud & # pcloud service if [[ "${HOSTNAME}" == "tuxwarrior" ]] ; then hyprmon --profile office & diff --git a/dots/environment/environment b/dots/environment/environment index 391a058..59e0edd 100644 --- a/dots/environment/environment +++ b/dots/environment/environment @@ -6,9 +6,17 @@ # note: a re-login is needed for changes to take place # +# secrets +# please note that this file is open to the world, so secrets should only be stored in +# `/home/poq/syncDir/secrets/toBeSourced/secretsAsEnvVariables.sh`, as that file is +# sourced by statup.sh. + +# note on paths: +# even though it would possible to specify unique paths per host machine, that would most +# likely not work very well. this is as several scripts assume `/home/poq/` etc. so, use +# the same path for all hosts. + # full path to directory where syncronised data will be kept -# this should be independent from systems (like nextcloud, dropbox, google drive etc) -# this as we easily should be able to switch system without having to change this name/path # format: SYNCDIR_[HOSTNAME] SYNCDIR_t470p=/home/poq/nextcloud/syncDir SYNCDIR_tuxwarrior=/home/poq/nextcloud/syncDir @@ -26,9 +34,6 @@ DOWNLOADS=/home/poq/syncDir/0_downloads # styling for gtk apps #GTK_THEME=Sweet-Dark -# secrets -#SECRET_KD3=RtKFWJIoXWjU80mlo4T4Ey2mqDNeJQwHjYLkE0ViN+k - # used by lf #EDITOR=nano diff --git a/dots/librewolf/user.js b/dots/librewolf/user.js index 7a61be4..192e654 100644 --- a/dots/librewolf/user.js +++ b/dots/librewolf/user.js @@ -1,66 +1,13 @@ // klevstul -// THIS FILE HAS NOT BEEN UPDATED FOR LIBREWOLF - IT MIGHT NOT EVEN BE NEEDED - // NOTE: update Librewolf's icons layout (customise layout), // then copy "browser.uiCustomization.state" from prefs.js // (located at "/home/poq/.config/librewolf/librewolf/[SOMEID].default-default/") over to this file. -// misc relevant documentation: -// - Exclude timezone from fingerprint protection | https://support.mozilla.org/ca/questions/1426184 - // https://kb.mozillazine.org/About:config_entries // https://support.mozilla.org/bm/questions/1358615 -user_pref("browser.aboutConfig.showWarning", false); -//user_pref("browser.bookmarks.restore_default_bookmarks", false); -//user_pref("browser.bookmarks.showMobileBookmarks", true); -//user_pref("browser.compactmode.show", true); -//user_pref("browser.ctrlTab.sortByRecentlyUsed", true); -//user_pref("browser.download.alwaysOpenPanel", false); -user_pref("browser.download.always_ask_before_handling_new_types", true); -//user_pref("browser.download.autohideButton", false); -user_pref("browser.download.dir", "/home/poq/syncDir/0_downloads"); -//user_pref("browser.download.folderList", 2); -user_pref("browser.download.lastDir", "/home/poq/syncDir/0_downloads"); -user_pref("browser.download.panel.shown", true); -user_pref("browser.download.useDownloadDir", false); -user_pref("browser.formfill.enable", false); -user_pref("browser.newtabpage.activity-stream.topSitesRows", 4); -user_pref("browser.newtabpage.pinned", [{"title": "web/links", "url": "https://gt.op.fo/fro/pNotes.2/src/branch/master/web/links"}, {"title": "op.fo", "url": "https://op.fo"}]); -user_pref("browser.open.lastDir", "/home/poq/syncDir/0_downloads"); -user_pref("browser.search.isUS", false); -user_pref("browser.search.region", "GB"); -user_pref("browser.startup.homepage", "https://gt.op.fo/fro/pNotes.2/src/branch/master/web/links"); -user_pref("browser.startup.page", 3); -user_pref("browser.tabs.inTitlebar", 0); -user_pref("browser.toolbars.bookmarks.visibility", "never"); -user_pref("browser.translations.panelShown", true); -user_pref("browser.uiCustomization.navBarWhenVerticalTabs", "[\"back-button\",\"forward-button\",\"stop-reload-button\",\"vertical-spacer\",\"home-button\",\"urlbar-container\",\"support_lastpass_com-browser-action\",\"_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action\",\"authenticator_mymindstorm-browser-action\",\"sqrl_pass_dog-browser-action\",\"ublock0_raymondhill_net-browser-action\",\"vpn_proton_ch-browser-action\",\"customizableui-special-spring27\",\"emoji_saveriomorelli_com-browser-action\",\"_8397abea-6e82-4bb3-ad79-243bf490892a_-browser-action\",\"_7a7b1d36-d7a4-481b-92c6-9f5427cb9eb1_-browser-action\",\"_5b22cb75-8e43-4f2a-bb9b-1da0655ae564_-browser-action\",\"_c4bcb70b-d89e-4e73-acb4-a0b28918a2cb_-browser-action\",\"_531906d3-e22f-4a6c-a102-8057b88a1a63_-browser-action\",\"_8419486a-54e9-11e8-9401-ac9e17909436_-browser-action\",\"jid0-gxjllfbcoax0lcltedfrekqdqpi_jetpack-browser-action\",\"_b6bd7e35-0762-42a2-a283-95a94635047d_-browser-action\",\"customizableui-special-spring22\",\"_e9b7227c-28db-4739-a175-36679a55bc4e_-browser-action\",\"private-relay_firefox_com-browser-action\",\"87677a2c52b84ad3a151a4a72f5bd3c4_jetpack-browser-action\",\"_799c0914-748b-41df-a25c-22d008f9e83f_-browser-action\",\"_c2c003ee-bd69-42a2-b0e9-6f34222cb046_-browser-action\",\"_c580e2d6-885a-4cb9-af49-59b3b48350e9_-browser-action\",\"verticaltabsreloaded_go-dev_de-browser-action\",\"_48df221a-8316-4d17-9191-7fc5ea5f14c0_-browser-action\",\"https-everywhere-eff_eff_org-browser-action\",\"browser-extension_anonaddy-browser-action\",\"_61173a74-ece7-4ef3-86a7-525538b78430_-browser-action\",\"reset-pbm-toolbar-button\",\"customizableui-special-spring56\",\"downloads-button\",\"unified-extensions-button\",\"firefox-view-button\",\"alltabs-button\",\"sidebar-button\"]"); +// tuxwarrior 2602: +// /home/poq/.config/librewolf/librewolf/ja379kkh.default-default/prefs.js -user_pref("browser.uiCustomization.state", "{\"placements\":{\"widget-overflow-fixed-list\":[\"history-panelmenu\",\"sync-button\",\"fxa-toolbar-menu-button\"],\"unified-extensions-area\":[\"_9350bc42-47fb-4598-ae0f-825e3dd9ceba_-browser-action\",\"cloudfirewall_nikisoft_one-browser-action\",\"_60f82f00-9ad5-4de5-b31c-b16a47c51558_-browser-action\",\"_d07ccf11-c0cd-4938-a265-2a4d6ad01189_-browser-action\",\"foxyproxy_eric_h_jung-browser-action\",\"_84b703a4-eaff-4208-9cee-12c0623056c1_-browser-action\",\"addon_simplelogin-browser-action\",\"_74145f27-f039-47ce-a470-a662b129930a_-browser-action\",\"_48748554-4c01-49e8-94af-79662bf34d50_-browser-action\",\"jid1-kkzogwgsw3ao4q_jetpack-browser-action\",\"customscrollbars_computerwhiz-browser-action\",\"_76b6ec7e-5411-4d36-9aa5-2bb08e31c27e_-browser-action\",\"_b9db16a4-6edc-47ec-a1f4-b86292ed211d_-browser-action\",\"_441ae0e7-c955-4b0e-8209-99462af458db_-browser-action\",\"_contain-facebook-browser-action\",\"copyplaintext_eros_man-browser-action\",\"_56b215f4-29b6-4898-bf2a-152d8bc189ed_-browser-action\",\"_3c078156-979c-498b-8990-85f7987dd929_-browser-action\",\"keepteamsawake_mcarr_dev-browser-action\",\"_8bdd571a-3065-4003-b986-5f020182522e_-browser-action\",\"floccus_handmadeideas_org-browser-action\",\"idcac-pub_guus_ninja-browser-action\"],\"nav-bar\":[\"sidebar-button\",\"back-button\",\"forward-button\",\"stop-reload-button\",\"vertical-spacer\",\"home-button\",\"_d912d569-8daf-4770-a620-8f5757477dae_-browser-action\",\"urlbar-container\",\"support_lastpass_com-browser-action\",\"_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action\",\"keepassxc-browser_keepassxc_org-browser-action\",\"authenticator_mymindstorm-browser-action\",\"sqrl_pass_dog-browser-action\",\"ublock0_raymondhill_net-browser-action\",\"vpn_proton_ch-browser-action\",\"customizableui-special-spring27\",\"emoji_saveriomorelli_com-browser-action\",\"_8397abea-6e82-4bb3-ad79-243bf490892a_-browser-action\",\"_7a7b1d36-d7a4-481b-92c6-9f5427cb9eb1_-browser-action\",\"_5b22cb75-8e43-4f2a-bb9b-1da0655ae564_-browser-action\",\"_c4bcb70b-d89e-4e73-acb4-a0b28918a2cb_-browser-action\",\"_531906d3-e22f-4a6c-a102-8057b88a1a63_-browser-action\",\"_8419486a-54e9-11e8-9401-ac9e17909436_-browser-action\",\"jid0-gxjllfbcoax0lcltedfrekqdqpi_jetpack-browser-action\",\"_b6bd7e35-0762-42a2-a283-95a94635047d_-browser-action\",\"customizableui-special-spring22\",\"_e9b7227c-28db-4739-a175-36679a55bc4e_-browser-action\",\"private-relay_firefox_com-browser-action\",\"87677a2c52b84ad3a151a4a72f5bd3c4_jetpack-browser-action\",\"_799c0914-748b-41df-a25c-22d008f9e83f_-browser-action\",\"_c2c003ee-bd69-42a2-b0e9-6f34222cb046_-browser-action\",\"_c580e2d6-885a-4cb9-af49-59b3b48350e9_-browser-action\",\"verticaltabsreloaded_go-dev_de-browser-action\",\"_48df221a-8316-4d17-9191-7fc5ea5f14c0_-browser-action\",\"https-everywhere-eff_eff_org-browser-action\",\"browser-extension_anonaddy-browser-action\",\"_61173a74-ece7-4ef3-86a7-525538b78430_-browser-action\",\"reset-pbm-toolbar-button\",\"customizableui-special-spring56\",\"downloads-button\",\"unified-extensions-button\"],\"toolbar-menubar\":[\"menubar-items\"],\"TabsToolbar\":[\"firefox-view-button\",\"tabbrowser-tabs\",\"new-tab-button\",\"alltabs-button\"],\"vertical-tabs\":[],\"PersonalToolbar\":[]},\"seen\":[\"developer-button\",\"_testpilot-containers-browser-action\",\"_c2c003ee-bd69-42a2-b0e9-6f34222cb046_-browser-action\",\"_contain-facebook-browser-action\",\"87677a2c52b84ad3a151a4a72f5bd3c4_jetpack-browser-action\",\"_e9b7227c-28db-4739-a175-36679a55bc4e_-browser-action\",\"sqrl_pass_dog-browser-action\",\"verticaltabsreloaded_go-dev_de-browser-action\",\"_c580e2d6-885a-4cb9-af49-59b3b48350e9_-browser-action\",\"_48df221a-8316-4d17-9191-7fc5ea5f14c0_-browser-action\",\"support_lastpass_com-browser-action\",\"jid1-kkzogwgsw3ao4q_jetpack-browser-action\",\"ublock0_raymondhill_net-browser-action\",\"firefoxcolor_mozilla_com-browser-action\",\"_9350bc42-47fb-4598-ae0f-825e3dd9ceba_-browser-action\",\"authenticator_mymindstorm-browser-action\",\"jid0-gxjllfbcoax0lcltedfrekqdqpi_jetpack-browser-action\",\"private-relay_firefox_com-browser-action\",\"foxyproxy_eric_h_jung-browser-action\",\"_3c078156-979c-498b-8990-85f7987dd929_-browser-action\",\"_531906d3-e22f-4a6c-a102-8057b88a1a63_-browser-action\",\"_60f82f00-9ad5-4de5-b31c-b16a47c51558_-browser-action\",\"_b6bd7e35-0762-42a2-a283-95a94635047d_-browser-action\",\"_d07ccf11-c0cd-4938-a265-2a4d6ad01189_-browser-action\",\"_48748554-4c01-49e8-94af-79662bf34d50_-browser-action\",\"https-everywhere-eff_eff_org-browser-action\",\"_8419486a-54e9-11e8-9401-ac9e17909436_-browser-action\",\"_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action\",\"_799c0914-748b-41df-a25c-22d008f9e83f_-browser-action\",\"cloudfirewall_nikisoft_one-browser-action\",\"_74145f27-f039-47ce-a470-a662b129930a_-browser-action\",\"copyplaintext_eros_man-browser-action\",\"jid1-nmve2op40qeqdq_jetpack-browser-action\",\"_5b22cb75-8e43-4f2a-bb9b-1da0655ae564_-browser-action\",\"_7a7b1d36-d7a4-481b-92c6-9f5427cb9eb1_-browser-action\",\"addon_simplelogin-browser-action\",\"_84b703a4-eaff-4208-9cee-12c0623056c1_-browser-action\",\"customscrollbars_computerwhiz-browser-action\",\"_76b6ec7e-5411-4d36-9aa5-2bb08e31c27e_-browser-action\",\"browser-extension_anonaddy-browser-action\",\"emoji_saveriomorelli_com-browser-action\",\"_b9db16a4-6edc-47ec-a1f4-b86292ed211d_-browser-action\",\"_61173a74-ece7-4ef3-86a7-525538b78430_-browser-action\",\"_8397abea-6e82-4bb3-ad79-243bf490892a_-browser-action\",\"_441ae0e7-c955-4b0e-8209-99462af458db_-browser-action\",\"vpn_proton_ch-browser-action\",\"_56b215f4-29b6-4898-bf2a-152d8bc189ed_-browser-action\",\"_c4bcb70b-d89e-4e73-acb4-a0b28918a2cb_-browser-action\",\"keepteamsawake_mcarr_dev-browser-action\",\"_8bdd571a-3065-4003-b986-5f020182522e_-browser-action\",\"floccus_handmadeideas_org-browser-action\",\"idcac-pub_guus_ninja-browser-action\",\"screenshot-button\",\"_d912d569-8daf-4770-a620-8f5757477dae_-browser-action\",\"keepassxc-browser_keepassxc_org-browser-action\"],\"dirtyAreaCache\":[\"nav-bar\",\"toolbar-menubar\",\"TabsToolbar\",\"PersonalToolbar\",\"widget-overflow-fixed-list\",\"unified-extensions-area\",\"vertical-tabs\"],\"currentVersion\":23,\"newElementCount\":59}"); - -user_pref("browser.uidensity", 1); -user_pref("browser.urlbar.doubleClickSelectsAll", false); -user_pref("browser.urlbar.placeholderName", ":::"); -user_pref("browser.urlbar.showSearchSuggestionsFirst", false); -user_pref("devtools.cache.disabled", true); -user_pref("devtools.everOpened", true); -user_pref("distribution.searchplugins.defaultLocale", "en-GB"); -user_pref("dom.security.https_only_mode", true); -user_pref("dom.webnotifications.enabled", true); -user_pref("extensions.activeThemeID", "activist-bold-colorway@mozilla.org"); -user_pref("extensions.formautofill.creditCards.enabled", false); -user_pref("extensions.pocket.enabled", false); -user_pref("fission.autostart", true); -user_pref("general.useragent.locale", "en-GB"); -user_pref("identity.fxaccounts.account.device.name", "poq @ {HOSTNAME}"); -user_pref("intl.accept_languages", "en"); -user_pref("layout.css.prefers-color-scheme.content-override", 1); -user_pref("privacy.donottrackheader.enabled", true); -user_pref("privacy.fingerprintingProtection.overrides", "+AllTargets,-JSDateTimeUTC"); -user_pref("privacy.fingerprintingProtection", true); -user_pref("privacy.resistFingerprinting", false); -user_pref("signon.rememberSignons", false); // do not save passwords -user_pref("spellchecker.dictionary", "en-AU, no-NB"); -user_pref("toolkit.legacyUserProfileCustomizations.stylesheets", true); +user_pref("browser.uiCustomization.state", "{\"placements\":{\"widget-overflow-fixed-list\":[\"history-panelmenu\",\"fxa-toolbar-menu-button\",\"developer-button\"],\"unified-extensions-area\":[\"_3c078156-979c-498b-8990-85f7987dd929_-browser-action\",\"_441ae0e7-c955-4b0e-8209-99462af458db_-browser-action\",\"_9350bc42-47fb-4598-ae0f-825e3dd9ceba_-browser-action\",\"_55f61747-c3d3-4425-97f9-dfc19a0be23c_-browser-action\",\"keepteamsawake_mcarr_dev-browser-action\",\"_74145f27-f039-47ce-a470-a662b129930a_-browser-action\",\"idcac-pub_guus_ninja-browser-action\",\"_contain-facebook-browser-action\",\"_8bdd571a-3065-4003-b986-5f020182522e_-browser-action\",\"_60f82f00-9ad5-4de5-b31c-b16a47c51558_-browser-action\"],\"nav-bar\":[\"sidebar-button\",\"back-button\",\"forward-button\",\"vertical-spacer\",\"_4853d046-c5a3-436b-bc36-220fd935ee1d_-browser-action\",\"firefox-view-button\",\"alltabs-button\",\"sync-button\",\"_d912d569-8daf-4770-a620-8f5757477dae_-browser-action\",\"urlbar-container\",\"keepassxc-browser_keepassxc_org-browser-action\",\"authenticator_mymindstorm-browser-action\",\"customizableui-special-spring2\",\"ublock0_raymondhill_net-browser-action\",\"canvasblocker_kkapsner_de-browser-action\",\"_c2c003ee-bd69-42a2-b0e9-6f34222cb046_-browser-action\",\"customizableui-special-spring5\",\"jid0-gxjllfbcoax0lcltedfrekqdqpi_jetpack-browser-action\",\"_7a7b1d36-d7a4-481b-92c6-9f5427cb9eb1_-browser-action\",\"_5b22cb75-8e43-4f2a-bb9b-1da0655ae564_-browser-action\",\"_531906d3-e22f-4a6c-a102-8057b88a1a63_-browser-action\",\"customizableui-special-spring6\",\"_799c0914-748b-41df-a25c-22d008f9e83f_-browser-action\",\"jid1-kt2kyygi32zpuw_jetpack-browser-action\",\"_a8cf72f7-09b7-4cd4-9aaa-7a023bf09916_-browser-action\",\"customizableui-special-spring8\",\"downloads-button\",\"unified-extensions-button\"],\"toolbar-menubar\":[\"menubar-items\"],\"TabsToolbar\":[],\"vertical-tabs\":[\"tabbrowser-tabs\"],\"PersonalToolbar\":[\"personal-bookmarks\"]},\"seen\":[\"developer-button\",\"screenshot-button\",\"ublock0_raymondhill_net-browser-action\",\"authenticator_mymindstorm-browser-action\",\"_441ae0e7-c955-4b0e-8209-99462af458db_-browser-action\",\"_9350bc42-47fb-4598-ae0f-825e3dd9ceba_-browser-action\",\"_4853d046-c5a3-436b-bc36-220fd935ee1d_-browser-action\",\"jid0-gxjllfbcoax0lcltedfrekqdqpi_jetpack-browser-action\",\"_7a7b1d36-d7a4-481b-92c6-9f5427cb9eb1_-browser-action\",\"_3c078156-979c-498b-8990-85f7987dd929_-browser-action\",\"keepassxc-browser_keepassxc_org-browser-action\",\"_55f61747-c3d3-4425-97f9-dfc19a0be23c_-browser-action\",\"keepteamsawake_mcarr_dev-browser-action\",\"_5b22cb75-8e43-4f2a-bb9b-1da0655ae564_-browser-action\",\"_74145f27-f039-47ce-a470-a662b129930a_-browser-action\",\"_799c0914-748b-41df-a25c-22d008f9e83f_-browser-action\",\"jid1-kt2kyygi32zpuw_jetpack-browser-action\",\"idcac-pub_guus_ninja-browser-action\",\"_contain-facebook-browser-action\",\"_c2c003ee-bd69-42a2-b0e9-6f34222cb046_-browser-action\",\"_8bdd571a-3065-4003-b986-5f020182522e_-browser-action\",\"_d912d569-8daf-4770-a620-8f5757477dae_-browser-action\",\"_531906d3-e22f-4a6c-a102-8057b88a1a63_-browser-action\",\"_60f82f00-9ad5-4de5-b31c-b16a47c51558_-browser-action\",\"_a8cf72f7-09b7-4cd4-9aaa-7a023bf09916_-browser-action\",\"canvasblocker_kkapsner_de-browser-action\"],\"dirtyAreaCache\":[\"nav-bar\",\"vertical-tabs\",\"toolbar-menubar\",\"TabsToolbar\",\"PersonalToolbar\",\"unified-extensions-area\",\"widget-overflow-fixed-list\"],\"currentVersion\":23,\"newElementCount\":10}"); diff --git a/scripts/99_deploy.sh b/scripts/99_deploy.sh index 133fa60..34da31e 100755 --- a/scripts/99_deploy.sh +++ b/scripts/99_deploy.sh @@ -40,7 +40,7 @@ if [[ -z "${clone_trg}" ]] ; then fi # load secrets, as environment variables -secrets_cred_path=/home/${system_user}/syncDir/secrets/toBeSourced/cred.sh +secrets_cred_path=/home/${system_user}/syncDir/secrets/toBeSourced/secretsAsEnvVariables.sh source ${secrets_cred_path} # ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ @@ -149,14 +149,15 @@ deploy_file() { } # locate librewolf's profile directory +# in librewolf, open `about:profiles` to see location of profile directory librewolf_profile_dir() { - ffdir=/home/${system_user}/.mozilla/firefox/ + ffdir=/home/${system_user}/.config/librewolf/librewolf/ if ! [ -d "$ffdir" ] then - echo "error: firefox main directory not found: '${ffdir}'" + echo "error: librewolf's main directory was not found at: '${ffdir}'" else - pattern=".default-release" + pattern=".default-default" old_dir=`pwd` cd ${ffdir} for _dir in *"${pattern}"*; do @@ -166,7 +167,7 @@ librewolf_profile_dir() { if [ -z "$dir" ] then - echo "error: firefox profile directory not found" + echo "error: librewolf's profile directory not found" else ffprofiledir=${ffdir}${dir} echo "${ffprofiledir}" @@ -199,6 +200,8 @@ if [ ${operation} == "dots" ] ; then file_name=.bashrc file_path=/home/${system_user} deploy_file "${dots_trg}/bash/${file_name}" "${file_path}/${file_name}" + unalias -a + source "${file_path}/${file_name}" # bin (executable binaries, scripts) file_path=/usr/local/bin @@ -214,13 +217,6 @@ if [ ${operation} == "dots" ] ; then file_path=/home/${system_user}/.config deploy_file "${dots_trg}/mimeapps/${file_name}" "${file_path}/${file_name}" no_chown - # mounts -# file_name=mnt-nas.mount -# file_path=/etc/systemd/system -# deploy_file "${dots_trg}/systemd/${file_name}" "${file_path}/${file_name}" no_chown - # sed -i "s|USERNAME|klevstul|g" "${file_path}/${file_name}" - # sed -i "s|PASSWORD|${LILLESORTEBOKS}|g" "${file_path}/${file_name}" - # pacman file_name=.makepkg.conf file_path=/home/${system_user} @@ -297,37 +293,8 @@ if [ ${operation} == "dots" ] ; then # programs # ---------- - # cava -# file_name=config -# file_path=/home/${system_user}/.config/cava -# create_dir ${file_path} -# deploy_file "${dots_trg}/cava/${file_name}" "${file_path}/${file_name}" - - ## dbgate - #file_name=settings.json - #file_path=/home/${system_user}/.dbgate - #create_dir ${file_path} - #deploy_file "${dots_trg}/dbgate/${file_name}" "${file_path}/${file_name}" - #cp /home/${system_user}/syncDir/secrets/dbgate/connections.jsonl ${file_path}/ - #chown ${system_user}:${system_user} ${file_path}/connections.jsonl - - # dunst -# file_name=dunstrc -# file_path=/home/${system_user}/.config/dunst -# create_dir ${file_path} -# deploy_file "${dots_trg}/dunst/${file_name}" "${file_path}/${file_name}" - - # lf -# file_name=lfrc -# file_path=/home/${system_user}/.config/lf -# create_dir ${file_path} -# deploy_file "${dots_trg}/lf/${file_name}" "${file_path}/${file_name}" - - # firefox - #file_name=policies.json - #file_path=/usr/lib/firefox/distribution - #deploy_file "${dots_trg}/firefox/${file_name}" "${file_path}/${file_name}" no_chown - + # librewolf + file_name=policies.json ffpd=$(firefox_profile_dir) if [[ ${ffpd} == error* ]] ; then echo ${ffpd} @@ -335,26 +302,11 @@ if [ ${operation} == "dots" ] ; then file_name=user.js file_path=${ffpd} deploy_file "${dots_trg}/firefox/${file_name}" "${file_path}/${file_name}" - # https://stackoverflow.com/questions/525592/find-and-replace-inside-a-text-file-from-a-bash-command - # https://askubuntu.com/questions/76808/how-do-i-use-variables-in-a-sed-command - sed -i -e "s/{HOSTNAME}/${HOSTNAME}/g" "${file_path}/${file_name}" - - file_name=userChrome.css - file_path=${ffpd}/chrome - create_dir ${file_path} - deploy_file "${dots_trg}/firefox/${file_name}" "${file_path}/${file_name}" fi # gtk (settings found using lxappearance) # note that the bookmarks file were found in two different locations, so a # symlink is created below. as well, ".gtkrc-2.0.mine" had no effect, so - # ".gtkrc-2.0" is overwritten -# file_name=settings.ini -# file_path=/home/${system_user}/.config/gtk-3.0 -# create_dir ${file_path} -# deploy_file "${dots_trg}/gtk/${file_name}" "${file_path}/${file_name}" -# gsettings set org.gnome.desktop.interface gtk-theme "Sweet-Dark" - file_name=.gtk-bookmarks file_path=/home/${system_user} deploy_file "${dots_trg}/gtk/${file_name}" "${file_path}/${file_name}" @@ -362,26 +314,12 @@ if [ ${operation} == "dots" ] ; then trash-put ${tmp_file_path_full} ln -s "${file_path}/${file_name}" "${tmp_file_path_full}" -# file_name=.gtkrc-2.0 -# file_path=/home/${system_user} -# deploy_file "${dots_trg}/gtk/${file_name}" "${file_path}/${file_name}" - -# file_name=index.theme -# file_path=/home/${system_user}/.icons/default -# create_dir ${file_path} -# deploy_file "${dots_trg}/gtk/${file_name}" "${file_path}/${file_name}" - # helix file_name=config.toml file_path=/home/${system_user}/.config/helix create_dir ${file_path} deploy_file "${dots_trg}/helix/${file_name}" "${file_path}/${file_name}" - # nitrogen -# file_path=/home/${system_user}/.config/nitrogen -# create_dir ${file_path} -# deploy_file "${dots_trg}/nitrogen/*" "${file_path}/" - # pcmanfm # bookmarks found in "dots/gtk/.gtk-bookmarks" file_name=pcmanfm.conf @@ -389,32 +327,6 @@ if [ ${operation} == "dots" ] ; then create_dir ${file_path} deploy_file "${dots_trg}/pcmanfm/${file_name}" "${file_path}/${file_name}" - # i3wm -# if [ ${I3WM} == "true" ] ; then -# -# # i3 -# file_name=config -# file_path=/home/${system_user}/.config/i3 -# create_dir ${file_path} -# deploy_file "${dots_trg}/i3wm/${file_name}" "${file_path}/" -# -# # i3status -# file_name=config -# file_path=/home/${system_user}/.config/i3status -# create_dir ${file_path} -# deploy_file "${dots_trg}/i3status/${file_name}" "${file_path}/" -# -# fi -# -# if [ ${I3WM} == "true" ] || [ ${QTILE} == "true" ] ; then -# -# # xorg -# file_path=/home/${system_user} -# deploy_file "${dots_trg}/xorg/.*" "${file_path}/" -# chmod 755 ${file_path}/.xinitrc -# -# fi - fi # dots+ (wallpapers, fonts ++)