Skip to content

Commit

Permalink
GitHub Flow migration (#241)
Browse files Browse the repository at this point in the history
Adapted to "GitHub Flow" [1] like documented in detail in the main task
issue svengreb/styleguide-git#9 [2].

[1]: https://guides.github.com/introduction/flow
[2]: svengreb/styleguide-git#9

Subtask of svengreb/styleguide-git#9
Resolves GH-240
  • Loading branch information
arcticicestudio committed Apr 7, 2020
1 parent 66236bc commit 38e9cd4
Show file tree
Hide file tree
Showing 14 changed files with 118 additions and 1,295 deletions.
1,190 changes: 6 additions & 1,184 deletions CHANGELOG.md

Large diffs are not rendered by default.

12 changes: 6 additions & 6 deletions README.md

Large diffs are not rendered by default.

18 changes: 9 additions & 9 deletions snowblocks/firefox/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@

This snowblock for [Firefox][] Quantum and [Firefox Developer Edition][firefox-dev-edition] provides…

* …the [`user.js`][mzkb-user.js] file to define and persist almost all preferences for a profile.
* …the [`profiles.ini`][mzkb-profiles.ini] file to configure the name and path of the main profile `igloo`.
* …the `ignore-dev-edition-profile` file (placed within the Firefox application data folder) to fix [Bugzilla bug 1098986][bugzilla-1098986] that causes Firefox Developer Edition to use the internal default profile regardless of whether another customized profile has been set as default.
* …the `chrome` folder with the [`userChrome.css`][mzkb-userchrome.css] and [`userContent.css`][mzkb-usercontent.css] files to customize the Firefox UI components design and layout and elements of websites.
* …the `containers.json` file of the [Firefox Multi-Account Containers][firefox-addon-multi-acc-cont] to persist the configured containers.
- …the [`user.js`][mzkb-user.js] file to define and persist almost all preferences for a profile.
- …the [`profiles.ini`][mzkb-profiles.ini] file to configure the name and path of the main profile `igloo`.
- …the `ignore-dev-edition-profile` file (placed within the Firefox application data folder) to fix [Bugzilla bug 1098986][bugzilla-1098986] that causes Firefox Developer Edition to use the internal default profile regardless of whether another customized profile has been set as default.
- …the `chrome` folder with the [`userChrome.css`][mzkb-userchrome.css] and [`userContent.css`][mzkb-usercontent.css] files to customize the Firefox UI components design and layout and elements of websites.
- …the `containers.json` file of the [Firefox Multi-Account Containers][firefox-addon-multi-acc-cont] to persist the configured containers.

## Configurations

Expand Down Expand Up @@ -46,16 +46,16 @@ touch ~/Library/Application\ Support/Firefox/ignore-dev-edition-profile

## References

* [ghacksuserjs/ghacks-user.js][] - An ongoing comprehensive user.js template for configuring and hardening Firefox privacy, security and anti-fingerprinting.
* [pyllyukko/user.js][] - Firefox `user.js` configuration file for Mozilla Firefox designed to harden browser settings and make it more secure.
- [ghacksuserjs/ghacks-user.js][] - An ongoing comprehensive user.js template for configuring and hardening Firefox privacy, security and anti-fingerprinting.
- [pyllyukko/user.js][] - Firefox `user.js` configuration file for Mozilla Firefox designed to harden browser settings and make it more secure.

[bugzilla-1098986]: https://bugzilla.mozilla.org/show_bug.cgi?id=1098986
[firefox]: https://www.mozilla.org/en-US/firefox
[firefox-addon-multi-acc-cont]: https://addons.mozilla.org/en-US/firefox/addon/multi-account-containers
[firefox-dev-edition]: https://www.mozilla.org/en-US/firefox/developer
[ghacksuserjs/ghacks-user.js]: https://github.com/ghacksuserjs/ghacks-user.js
[gh-igloo-sb-ff-ignore-dev-profile]: https://github.com/arcticicestudio/igloo/blob/develop/snowblocks/firefox/ignore-dev-edition-profile
[gh-igloo-sb-ff-user.js]: https://github.com/arcticicestudio/igloo/blob/develop/snowblocks/firefox/user.js
[gh-igloo-sb-ff-ignore-dev-profile]: https://github.com/arcticicestudio/igloo/blob/master/snowblocks/firefox/ignore-dev-edition-profile
[gh-igloo-sb-ff-user.js]: https://github.com/arcticicestudio/igloo/blob/master/snowblocks/firefox/user.js
[google-font-source-code-pro]: https://fonts.google.com/specimen/Source+Code+Pro
[mzkb-profiles.ini]: http://kb.mozillazine.org/Profiles.ini_file
[mzkb-user.js]: http://kb.mozillazine.org/User.js_file
Expand Down
10 changes: 5 additions & 5 deletions snowblocks/gpg/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,13 +62,13 @@ See the [references](#references) for more information and details.

**Fix failed IPC connection call on macOS**

* [gpg: can’t connect to the agent: IPC connect call failed][ref-blog-michaelheap-ipc-connect-fail]
* [GNUPG bugtracker: “gpg-agent 2.1 socket and nfs /home“][ref-gnupg-bugtracker-t1752]
* [How to configure GnuPG's S.gpg-agent socket location?]([ref-askubuntu-gpg-socket])
- [gpg: can’t connect to the agent: IPC connect call failed][ref-blog-michaelheap-ipc-connect-fail]
- [GNUPG bugtracker: “gpg-agent 2.1 socket and nfs /home“][ref-gnupg-bugtracker-t1752]
- [How to configure GnuPG's S.gpg-agent socket location?]([ref-askubuntu-gpg-socket])

[gnupg]: https://www.gnupg.org
[gh-igloo-snowblock-launchd]: https://github.com/arcticicestudio/igloo/tree/develop/snowblocks/launchd
[gh-igloo-snowblock-systemd]: https://github.com/arcticicestudio/igloo/tree/develop/snowblocks/systemd
[gh-igloo-snowblock-launchd]: https://github.com/arcticicestudio/igloo/tree/master/snowblocks/launchd
[gh-igloo-snowblock-systemd]: https://github.com/arcticicestudio/igloo/tree/master/snowblocks/systemd
[gocryptfs]: https://github.com/rfjakob/gocryptfs
[ref-askubuntu-gpg-socket]: https://askubuntu.com/a/1053594
[ref-blog-michaelheap-ipc-connect-fail]: https://michaelheap.com/gpg-cant-connect-to-the-agent-ipc-connect-call-failed
Expand Down
2 changes: 1 addition & 1 deletion snowblocks/jetbrains/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ JetBrains uses a [naming scheme for the folder all user configurations][intellij
The base target folder name for the `clean` and `link` plugins must be updated after updating to a new product version. Next to this, the `clean` plugin should also keep the previous target paths to ensure they are cleaned up after updating.

[font-hack]: https://sourcefoundry.org/hack
[gh-igloo-sb-jb-editor.xml]: https://github.com/arcticicestudio/igloo/blob/develop/snowblocks/jetbrains/ooptions/editor.xml
[gh-igloo-sb-jb-editor.xml]: https://github.com/arcticicestudio/igloo/blob/master/snowblocks/jetbrains/ooptions/editor.xml
[goland]: https://www.jetbrains.com/go
[google-font-source-code-pro]: https://fonts.google.com/specimen/Source+Code+Pro
[intellij-doc-autoupdate]: https://www.jetbrains.com/help/idea/keep-product-up-to-date.html#manage_updates_manually
Expand Down
2 changes: 1 addition & 1 deletion snowblocks/pip/requirements.iceowl.txt
Original file line number Diff line number Diff line change
Expand Up @@ -22,5 +22,5 @@ virtualenv
# +------+

# Required by the custom hooks of the "taskwarrior" snowblock to interact with Taskwarrior API.
# See https://github.com/arcticicestudio/igloo/tree/develop/snowblocks/taskwarrior for details.
# See https://github.com/arcticicestudio/igloo/tree/master/snowblocks/taskwarrior for details.
taskw
14 changes: 7 additions & 7 deletions snowblocks/plank/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
* [dconf Configuration](#dconf-configuration)
* [Autostart](#autostart)
- [dconf Configuration](#dconf-configuration)
- [Autostart](#autostart)

# dconf Configuration

Expand All @@ -21,11 +21,11 @@ The [xdg snowblock][gh-sb-xdg] provides host specific [autostart][gh-sb-xdg-auto

# References

* [Plank GitHub Repository][plank-gh]
- [Plank GitHub Repository][plank-gh]

[config-dconf-gh]: https://github.com/arcticicestudio/igloo/blob/develop/snowblocks/plank/plank.dconf
[config-dconf-gh]: https://github.com/arcticicestudio/igloo/blob/master/snowblocks/plank/plank.dconf
[dconf]: https://wiki.gnome.org/Projects/dconf
[gh-sb-xdg]: https://github.com/arcticicestudio/igloo/tree/develop/snowblocks/xdg
[gh-sb-xdg-autostart]: https://github.com/arcticicestudio/igloo/tree/develop/snowblocks/xdg/autostart
[gh-sb-xdg-autostart-igloo]: https://github.com/arcticicestudio/igloo/blob/develop/snowblocks/xdg/autostart/plank.desktop.igloo
[gh-sb-xdg]: https://github.com/arcticicestudio/igloo/tree/master/snowblocks/xdg
[gh-sb-xdg-autostart]: https://github.com/arcticicestudio/igloo/tree/master/snowblocks/xdg/autostart
[gh-sb-xdg-autostart-igloo]: https://github.com/arcticicestudio/igloo/blob/master/snowblocks/xdg/autostart/plank.desktop.igloo
[plank-gh]: https://github.com/ricotz/plank
22 changes: 11 additions & 11 deletions snowblocks/systemd/README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
* [Units](#units)
* [Services](#services)
* [igloosync-dropbox](#igloosync-dropbox)
* [`gocryptfs` and `secret-tool` setup](#gocryptfs-and-secret-tool-setup)
* [`libfuse` configuration](#libfuse-configuration)
- [Units](#units)
- [Services](#services)
- [igloosync-dropbox](#igloosync-dropbox)
- [`gocryptfs` and `secret-tool` setup](#gocryptfs-and-secret-tool-setup)
- [`libfuse` configuration](#libfuse-configuration)

# Units

Expand All @@ -16,8 +16,8 @@
The stored password must be assigned with the following attribute-value pair:

* attribute: `igloosync`
* value: `dropbox`
- attribute: `igloosync`
- value: `dropbox`

To store the password run

Expand All @@ -35,14 +35,14 @@ secret-tool lookup igloosync dropbox

[FUSE][fuse] ([libfuse][libfuse]) must be configured with the `/etc/fuse.conf` file to allow non-root users to specify the `allow_other` or `allow_root` mount options which overrides the security measure restricting file access to the filesystem owner, so that all users (including root) can access the files.

This is necessary to access the files of the mounted `gocryptfs` volume with applications that are run via `sudo`. It is used in the [pacman][snowblock-pacman] snowblock for the local package repository `bitfroest` which would throw a *Permission Denied* exception when running `pacman` (e.g. `sudo pacman -Sy`) if the volume is not mounted with the `gocryptfs -allow_other` option.
This is necessary to access the files of the mounted `gocryptfs` volume with applications that are run via `sudo`. It is used in the [pacman][snowblock-pacman] snowblock for the local package repository `bitfroest` which would throw a _Permission Denied_ exception when running `pacman` (e.g. `sudo pacman -Sy`) if the volume is not mounted with the `gocryptfs -allow_other` option.

Please note that `libfuse` has a **[unresolved security bug][libfuse-secbug]** when using the `allow_other` mount option as [described in the official documentation][libfuse-sec], but is of **little concern if the filesystem is accessible only to the mounting user** which is the case since these are **dotfiles for a personal system**:

> No other user (including root) can access the contents of the mounted filesystem (though this can be relaxed by allowing the use of the `allow_other` and `allow_root` mount options in `/etc/fuse.conf`)
>
>
> If you intend to use the allow_other mount options, be aware that FUSE has an unresolved [security bug][libfuse-secbug]: if the `default_permissions` mount option is not used, the results of the first permission check performed by the file system for a directory entry will be re-used for subsequent accesses as long as the inode of the accessed entry is present in the kernel cache - even if the permissions have since changed, and even if the subsequent access is made by a different user. This is of little concern if the filesystem is accessible only to the mounting user (which has full access to the filesystem anyway), but becomes a security issue when other users are allowed to access the filesystem (since they can exploit this to perform operations on the filesystem that they do not actually have permissions for).
>
>
> This bug needs to be fixed in the Linux kernel and has been known since 2006 but unfortunately no fix has been applied yet. If you depend on correct permission handling for FUSE file systems, the only workaround is to use `default_permissions` (which does not currently support ACLs), or to completely disable caching of directory entry attributes.
[archwiki-keyring]: https://wiki.archlinux.org/index.php/GNOME/Keyring
Expand All @@ -52,4 +52,4 @@ Please note that `libfuse` has a **[unresolved security bug][libfuse-secbug]** w
[libfuse]: https://github.com/libfuse/libfuse
[libfuse-sec]: https://github.com/libfuse/libfuse#security-implications
[libfuse-secbug]: https://github.com/libfuse/libfuse/issues/15
[snowblock-pacman]: https://github.com/arcticicestudio/igloo/tree/develop/snowblocks/pacman
[snowblock-pacman]: https://github.com/arcticicestudio/igloo/tree/master/snowblocks/pacman
22 changes: 11 additions & 11 deletions snowblocks/tilix/README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
* [dconf Configuration](#dconf-configuration)
* [Nord Color Scheme](#nord-color-scheme)
* [Key Mappings](#key-mappings)
* [tmux snowblock compatibility](#tmux-snowblock-compatibility)
* [References](#references)
- [dconf Configuration](#dconf-configuration)
- [Nord Color Scheme](#nord-color-scheme)
- [Key Mappings](#key-mappings)
- [tmux snowblock compatibility](#tmux-snowblock-compatibility)
- [References](#references)

# dconf Configuration

Expand All @@ -28,20 +28,20 @@ The [Nord Tilix][nord-tilix-gh] color scheme, included in the current [`tilix.dc

The key mappings

* *Scroll down* <kbd>Shift</kbd> + <kbd>Ctrl</kbd> + <kbd>Down</kbd>
* *Scroll up* <kbd>Shift</kbd> + <kbd>Ctrl</kbd> + <kbd>Up</kbd>
- _Scroll down_ <kbd>Shift</kbd> + <kbd>Ctrl</kbd> + <kbd>Down</kbd>
- _Scroll up_ <kbd>Shift</kbd> + <kbd>Ctrl</kbd> + <kbd>Up</kbd>

have been disabled for compatibility reasons with the [tmux snowlbock][gh-sb-tmux]. It provides key mappings to resize panes via <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>🠨</kbd><kbd>🠩</kbd><kbd>🠪</kbd><kbd>🠫</kbd> which key press events are catched by the Tilix efault terminal scroll key mappings.

# References

* [Official Tilix Website][tilix]
* [Tilix GitHub Repository][tilix-gh]
- [Official Tilix Website][tilix]
- [Tilix GitHub Repository][tilix-gh]

[config-dconf-gh]: https://github.com/arcticicestudio/igloo/blob/develop/snowblocks/tilix/config.dconf
[config-dconf-gh]: https://github.com/arcticicestudio/igloo/blob/master/snowblocks/tilix/config.dconf
[dconf]: https://wiki.gnome.org/Projects/dconf
[nord-tilix-aur]: https://aur.archlinux.org/packages/nord-tilix
[nord-tilix-gh]: https://github.com/arcticicestudio/nord-tilix
[tilix]: https://gnunn1.github.io/tilix-web
[tilix-gh]: https://github.com/gnunn1/tilix
[gh-sb-tmux]: https://github.com/arcticicestudio/igloo/tree/develop/snowblocks/tmux
[gh-sb-tmux]: https://github.com/arcticicestudio/igloo/tree/master/snowblocks/tmux
52 changes: 26 additions & 26 deletions snowblocks/tmux/README.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
* [Configuration](#configuration)
* [24-bit "True Color" Support](#24-bit-true-color-support)
* [Automatic tpm Installation](#automatic-tpm-installation)
* [Key Mappings](#key-mappings)
* [Development](#development)
* [Manual Plugin Loading](#manual-plugin-loading)
- [Configuration](#configuration)
- [24-bit "True Color" Support](#24-bit-true-color-support)
- [Automatic tpm Installation](#automatic-tpm-installation)
- [Key Mappings](#key-mappings)
- [Development](#development)
- [Manual Plugin Loading](#manual-plugin-loading)

# Configuration

## 24-bit "True color" Support

[tmux][tmux] supports 24-bit *True color* since version [2.2][tc-version].
[tmux][tmux] supports 24-bit _True color_ since version [2.2][tc-version].

To check if tmux has been compiled with *True color* support start `tmux` and run
To check if tmux has been compiled with _True color_ support start `tmux` and run

```sh
tmux info | grep Tc
```

If the output is `Tc: (flag) true` tmux supports *True color*, otherwise the output will be `Tc: [missing]`.
If the output is `Tc: (flag) true` tmux supports _True color_, otherwise the output will be `Tc: [missing]`.

The 24-bit colors can be tested by run this inside tmux:

Expand All @@ -37,17 +37,17 @@ awk 'BEGIN{
}'
```

If the line looks "stepwise" tmux does not use 24-bit *True color*:
If the line looks "stepwise" tmux does not use 24-bit _True color_:

![](https://raw.githubusercontent.com/arcticicestudio/igloo/develop/snowblocks/tmux/assets/scrot-doc-tc-support-disabled.png)
![](https://raw.githubusercontent.com/arcticicestudio/igloo/master/snowblocks/tmux/assets/scrot-doc-tc-support-disabled.png)

Otherwise the line should have smooth transitions:

![](https://raw.githubusercontent.com/arcticicestudio/igloo/develop/snowblocks/tmux/assets/scrot-doc-tc-support-enabled.png)
![](https://raw.githubusercontent.com/arcticicestudio/igloo/master/snowblocks/tmux/assets/scrot-doc-tc-support-enabled.png)

The `$TERM` environment variable is important for tmux as described in the official [tmux FAQ][tmux-faq]. The variable must be initialized with a terminal that supports 256 colors (`*-256color`). More information about 24-bit color terminal support can be found in the [ArchWiki][archw-24bit].

If the terminal supports *True color* the `terminal-overrides` option must be set in the `~/.tmux.conf` file for the `$TERM` value and the *True color* `Tc` tmux flag:
If the terminal supports _True color_ the `terminal-overrides` option must be set in the `~/.tmux.conf` file for the `$TERM` value and the _True color_ `Tc` tmux flag:

```sh
set-option -ga terminal-overrides ",xterm-256color:Tc"
Expand All @@ -57,7 +57,7 @@ This will reflect the actual `$TERM` outside of tmux and enables full compatibil

For other terminals, replace `xterm-256color` with the relevant terminal type, stored in `$TERM`, **including the important `Tc` terminfo extension flag!**.

See the *tmux(1)* man page for details about the `Tc` [terminfo][terminfo] extension.
See the _tmux(1)_ man page for details about the `Tc` [terminfo][terminfo] extension.

## Automatic tpm Installation

Expand All @@ -74,26 +74,26 @@ After cloning the tpm repository the [plugin installer helper script][tpm-bin-pl
## Split windows
* Horizontal: <kbd>Prefix</kbd> - <kbd>h</kbd>
* Vertical: <kbd>Prefix</kbd> - <kbd>v</kbd>
- Horizontal: <kbd>Prefix</kbd> - <kbd>h</kbd>
- Vertical: <kbd>Prefix</kbd> - <kbd>v</kbd>
## Switch windows
* Switch to previous window: <kbd>Prefix</kbd> - <kbd>Shift</kbd> + <kbd>🠨</kbd>
* Switch to next window: <kbd>Prefix</kbd> - <kbd>Shift</kbd> + <kbd>🠪</kbd>
- Switch to previous window: <kbd>Prefix</kbd> - <kbd>Shift</kbd> + <kbd>🠨</kbd>
- Switch to next window: <kbd>Prefix</kbd> - <kbd>Shift</kbd> + <kbd>🠪</kbd>
## Resize panes
* Resize left: <kbd>Prefix</kbd> - <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>🠨</kbd>
* Resize right: <kbd>Prefix</kbd> - <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>🠪</kbd>
* Resize up: <kbd>Prefix</kbd> - <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>🠩</kbd>
* Resize down: <kbd>Prefix</kbd> - <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>🠫</kbd>
- Resize left: <kbd>Prefix</kbd> - <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>🠨</kbd>
- Resize right: <kbd>Prefix</kbd> - <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>🠪</kbd>
- Resize up: <kbd>Prefix</kbd> - <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>🠩</kbd>
- Resize down: <kbd>Prefix</kbd> - <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>🠫</kbd>
Please read the documentation of the [Tilix][gh-sb-tilix] snowblock about the [compatibility with the tmux key mappings][gh-sb-tilix-keymap-tmux-comp].
## Synchronize typing between panes
* Toggle typing synchronization: <kbd>Prefix</kbd> - <kbd>e</kbd>
- Toggle typing synchronization: <kbd>Prefix</kbd> - <kbd>e</kbd>
# Development
Expand All @@ -107,12 +107,12 @@ run-shell ~/.tmux/plugins/nord-tmux/nord.tmux
[archw-24bit]: https://wiki.archlinux.org/index.php/Tmux#24-bit_color
[faq]: https://github.com/tmux/tmux/wiki/FAQ#what-is-term-and-what-does-it-do
[gh-sb-tilix]: https://github.com/arcticicestudio/igloo/tree/develop/snowblocks/tilix
[gh-sb-tilix-keymap-tmux-comp]: https://github.com/arcticicestudio/igloo/tree/develop/snowblocks/tilix#tmux-snowblock-compatibility
[gh-sb-tilix]: https://github.com/arcticicestudio/igloo/tree/master/snowblocks/tilix
[gh-sb-tilix-keymap-tmux-comp]: https://github.com/arcticicestudio/igloo/tree/master/snowblocks/tilix#tmux-snowblock-compatibility
[ghg-truecolor]: https://gist.github.com/XVilka/8346728
[tc-version]: https://github.com/tmux/tmux/commit/427b8204268af5548d09b830e101c59daa095df9
[terminfo]: https://en.wikipedia.org/wiki/Terminfo
[tmux]: https://tmux.github.io
[tpm-gh]: https://github.com/tmux-plugins/tpm
[tpm-autoinstall]: https://github.com/tmux-plugins/tpm/blob/master/docs/automatic_tpm_installation.md
[tpm-bin-plugin-installer]: https://github.com/tmux-plugins/tpm/blob/master/bin/install_plugins
[tpm-bin-plugin-installer]: https://github.com/tmux-plugins/tpm/blob/master/bin/install_plugins
2 changes: 1 addition & 1 deletion snowblocks/tmux/tmux.conf
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
# Repository: https://github.com/arcticicestudio/igloo
# License: MIT
# References:
# https://github.com/arcticicestudio/igloo/blob/develop/snowblocks/tmux/README.md
# https://github.com/arcticicestudio/igloo/blob/master/snowblocks/tmux/README.md

#+-----------+
#+ Bootstrap +
Expand Down

0 comments on commit 38e9cd4

Please sign in to comment.