@networkpro/blog 1.5.4 → 1.5.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -40,7 +40,7 @@ jobs:
40
40
  - name: Set up Node.js
41
41
  uses: actions/setup-node@v6
42
42
  with:
43
- node-version: 22
43
+ node-version: 24
44
44
  cache: npm
45
45
  cache-dependency-path: package-lock.json
46
46
 
@@ -60,6 +60,7 @@ jobs:
60
60
  uses: actions/setup-python@v6
61
61
  with:
62
62
  python-version-file: .python-version
63
+ cache: 'pip'
63
64
 
64
65
  - name: Install Python dependencies
65
66
  run: pip install -r requirements.txt
@@ -36,7 +36,7 @@ jobs:
36
36
  - name: Set up Node.js
37
37
  uses: actions/setup-node@v6
38
38
  with:
39
- node-version: 22
39
+ node-version: 24
40
40
  cache: npm
41
41
  cache-dependency-path: package-lock.json
42
42
 
@@ -53,6 +53,7 @@ jobs:
53
53
  uses: actions/setup-python@v6
54
54
  with:
55
55
  python-version-file: .python-version
56
+ cache: 'pip'
56
57
 
57
58
  - name: Install Python dependencies
58
59
  run: pip install -r requirements.txt
@@ -95,7 +96,7 @@ jobs:
95
96
  - name: Set up Node.js for npmjs
96
97
  uses: actions/setup-node@v6
97
98
  with:
98
- node-version: 22
99
+ node-version: 24
99
100
  registry-url: https://registry.npmjs.org/
100
101
  cache: npm
101
102
 
@@ -143,7 +144,7 @@ jobs:
143
144
  - name: Set up Node.js for GPR
144
145
  uses: actions/setup-node@v6
145
146
  with:
146
- node-version: 22
147
+ node-version: 24
147
148
  registry-url: https://npm.pkg.github.com/
148
149
  cache: npm
149
150
 
@@ -38,7 +38,7 @@ jobs:
38
38
  - name: Set up Node.js
39
39
  uses: actions/setup-node@v6
40
40
  with:
41
- node-version: 22
41
+ node-version: 24
42
42
  cache: npm
43
43
  cache-dependency-path: package-lock.json
44
44
 
@@ -55,6 +55,7 @@ jobs:
55
55
  uses: actions/setup-python@v6
56
56
  with:
57
57
  python-version-file: .python-version
58
+ cache: 'pip'
58
59
 
59
60
  - name: Install Python dependencies
60
61
  run: pip install -r requirements.txt
@@ -97,7 +98,7 @@ jobs:
97
98
  - name: Set up Node.js for npmjs
98
99
  uses: actions/setup-node@v6
99
100
  with:
100
- node-version: 22
101
+ node-version: 24
101
102
  registry-url: https://registry.npmjs.org/
102
103
  cache: npm
103
104
  cache-dependency-path: package-lock.json
@@ -115,24 +116,6 @@ jobs:
115
116
  git config --global user.email "github@sl.neteng.cc"
116
117
  git config --global user.name "SunDevil311"
117
118
 
118
- #- name: Print npm config and registry info
119
- # run: |
120
- # echo "🔍 NPM registry (from config):"
121
- # npm config get registry
122
-
123
- # echo "🔍 NPM user config location:"
124
- # echo "$NPM_CONFIG_USERCONFIG"
125
-
126
- # echo "🔍 .npmrc contents:"
127
- # cat "$NPM_CONFIG_USERCONFIG" || echo "❌ No .npmrc found"
128
- # env:
129
- # NODE_AUTH_TOKEN: ${{ secrets.NPM_NETPRO }}
130
-
131
- #- name: Verify npm authentication
132
- # run: npm whoami
133
- # env:
134
- # NODE_AUTH_TOKEN: ${{ secrets.NPM_NETPRO }}
135
-
136
119
  - name: Publish package to npmjs
137
120
  run: npm publish --access public
138
121
  env:
@@ -158,7 +141,7 @@ jobs:
158
141
  - name: Set up Node.js for GPR
159
142
  uses: actions/setup-node@v6
160
143
  with:
161
- node-version: 22
144
+ node-version: 24
162
145
  registry-url: https://npm.pkg.github.com/
163
146
  cache: npm
164
147
  cache-dependency-path: package-lock.json
@@ -180,24 +163,6 @@ jobs:
180
163
  run: |
181
164
  sed -i 's/"name": "[^"]*"/"name": "@netwk-pro\/blog"/' package.json
182
165
 
183
- #- name: Print npm config and registry info
184
- # run: |
185
- # echo "🔍 NPM registry (from config):"
186
- # npm config get registry
187
-
188
- # echo "🔍 NPM user config location:"
189
- # echo "$NPM_CONFIG_USERCONFIG"
190
-
191
- # echo "🔍 .npmrc contents:"
192
- # cat "$NPM_CONFIG_USERCONFIG" || echo "❌ No .npmrc found"
193
- # env:
194
- # NODE_AUTH_TOKEN: ${{ secrets.NWPRO_GPR }}
195
-
196
- #- name: Verify npm authentication
197
- # run: npm whoami --registry=https://npm.pkg.github.com/
198
- # env:
199
- # NODE_AUTH_TOKEN: ${{ secrets.NWPRO_GPR }}
200
-
201
166
  - name: Publish package to GPR
202
167
  run: npm publish --registry=https://npm.pkg.github.com/
203
168
  env:
package/.python-version CHANGED
@@ -1 +1 @@
1
- 3.13
1
+ 3.14
package/CHANGELOG.md CHANGED
@@ -16,6 +16,43 @@ formatting may vary.
16
16
 
17
17
  ---
18
18
 
19
+ ## [1.5.5] - 2025-11-09
20
+
21
+ ### Added
22
+
23
+ - Added `src/posts/2025-11-09-privacy-and-security.md`, along with image assets:
24
+ - `src/img/privacy-security-promo.png`
25
+ - `src/img/privacy-security-promo.webp`
26
+ - Added `src/posts/2025-11-09-sideloading.md`, along with image assets:
27
+ - `src/img/sideloading-promo.png`
28
+ - `src/img/sideloading-promo.webp`
29
+ - Introduced `npm-run-all` devDependency for more efficient linting.
30
+
31
+ ### Changed
32
+
33
+ - Refactored `src/contributing.md` to accurately reflect the proper method of
34
+ contributing.
35
+ - Revised emphasis in the **Message authentication codes** section of
36
+ `/src/posts/secure-secure-shell.md`.
37
+ - Updated CI workflows to utilize **Node.js v24** (LTS):
38
+ - `build-and-deploy.yml`
39
+ - `publish-test.yml`
40
+ - `publish.yml`
41
+ - Revised scripts in `package.json` for more efficient use by utilizing
42
+ `npm-run-all`.
43
+ - Updated `.python-version` to reflect **Python v3.14**.
44
+ - Bumped project version to `v1.5.5`.
45
+ - Updated **Node.js** dependencies:
46
+ - `@eslint/js` `^9.38.0` → `^9.39.1`
47
+ - `@eslint/json` `^0.13.2` → `^0.14.0`
48
+ - `eslint` `^9.38.0` → `^9.39.1`
49
+ - `globals` `^16.4.0` → `^16.5.0`
50
+ - Updated **Python** dependencies:
51
+ - `mkdocs-material` `9.6.22` → `9.6.23`
52
+ - `mkdocs-rss-plugin` `1.17.4` → `1.17.5`
53
+
54
+ ---
55
+
19
56
  ## [1.5.4] - 2025-10-28
20
57
 
21
58
  ### Added
@@ -399,7 +436,8 @@ formatting may vary.
399
436
 
400
437
  <!-- Link references -->
401
438
 
402
- [Unreleased]: https://github.com/netwk-pro/blog/compare/v1.5.4...HEAD
439
+ [Unreleased]: https://github.com/netwk-pro/blog/compare/v1.5.5...HEAD
440
+ [1.5.5]: https://github.com/netwk-pro/blog/releases/tag/v1.5.5
403
441
  [1.5.4]: https://github.com/netwk-pro/blog/releases/tag/v1.5.4
404
442
  [1.5.3]: https://github.com/netwk-pro/blog/releases/tag/v1.5.3
405
443
  [1.5.2]: https://github.com/netwk-pro/blog/releases/tag/v1.5.2
package/cspell.json CHANGED
@@ -17,9 +17,11 @@
17
17
  "Heli",
18
18
  "heliboard",
19
19
  "homescreen",
20
+ "issuetrack",
20
21
  "lastmod",
21
22
  "mkdocs",
22
23
  "msauth",
24
+ "ncurc",
23
25
  "neteng",
24
26
  "NETPRO",
25
27
  "netwk",
@@ -29,6 +31,7 @@
29
31
  "otphelper",
30
32
  "pozil",
31
33
  "robotstxt",
34
+ "sideloading",
32
35
  "sonicwall",
33
36
  "Squircle",
34
37
  "srcset",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@networkpro/blog",
3
- "version": "1.5.4",
3
+ "version": "1.5.5",
4
4
  "description": "The official blog of Network Pro Strategies (Network Pro™).",
5
5
  "keywords": [
6
6
  "advisory",
@@ -43,21 +43,22 @@
43
43
  "lint:fix": "eslint . --ext .mjs,.js,.json,.jsonc --fix",
44
44
  "lint:md": "npx markdownlint-cli2 \"**/*.{md,markdown}\" \"#node_modules/**\" \"#build/**\"",
45
45
  "lint:css": "npx stylelint \"**/*.css\" --ignore-path .stylelintignore",
46
- "lint:all": "npm run lint && npm run lint:md && npm run lint:css && npm run format",
46
+ "lint:all": "npm-run-all --parallel lint lint:md lint:css --sequential format",
47
47
  "checkout": "npm run lint:all",
48
48
  "verify": "npm run checkout",
49
49
  "upgrade": "npx npm-check-updates -u"
50
50
  },
51
51
  "devDependencies": {
52
- "@eslint/js": "^9.38.0",
53
- "@eslint/json": "^0.13.2",
52
+ "@eslint/js": "^9.39.1",
53
+ "@eslint/json": "^0.14.0",
54
54
  "autoprefixer": "^10.4.21",
55
55
  "browserslist": "^4.27.0",
56
- "eslint": "^9.38.0",
56
+ "eslint": "^9.39.1",
57
57
  "eslint-config-prettier": "^10.1.8",
58
- "globals": "^16.4.0",
58
+ "globals": "^16.5.0",
59
59
  "markdownlint": "^0.39.0",
60
60
  "markdownlint-cli2": "^0.18.1",
61
+ "npm-run-all": "^4.1.5",
61
62
  "postcss": "^8.5.6",
62
63
  "prettier": "3.6.2",
63
64
  "stylelint": "^16.25.0",
package/ref/README.md CHANGED
@@ -51,7 +51,7 @@ docs/
51
51
  blog/ # The directory that all blog content goes into (first blog instance)
52
52
  posts/ # the place to put your posts
53
53
  author/ # Author profiles
54
- .authors.yml # Author information to be added to posts (shared betwe
54
+ .authors.yml # Author information to be added to posts
55
55
  ext/ # Directory that contains code for the custom slugs
56
56
  hooks/ # Directory for a hook that adds social media share buttons
57
57
  ```
package/requirements.txt CHANGED
@@ -1,5 +1,5 @@
1
1
  mkdocs==1.6.1
2
- mkdocs-material==9.6.22
2
+ mkdocs-material==9.6.23
3
3
  mkdocs-material-extensions==1.3.1
4
4
  mkdocs-get-deps==0.2.0
5
- mkdocs-rss-plugin==1.17.4
5
+ mkdocs-rss-plugin==1.17.5
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  date:
3
- created: 2025-06-07
4
- updated: 2025-09-23
3
+ created: 2025-07-05
4
+ updated: 2025-10-29
5
5
  title: Contributing to Network Pro™
6
6
  summary:
7
7
  Instructions for getting involved and contributing to Network Pro Strategies.
@@ -12,15 +12,28 @@ tags:
12
12
  - contributing
13
13
  ---
14
14
 
15
- <a name="top"></a>
16
-
17
- <sup>[SPDX-License-Identifier](https://spdx.dev/learn/handling-license-info):
15
+ <sup>[SPDX-License-Identifier](https://spdx.dev/learn/handling-license-info/):
18
16
  `CC-BY-4.0 OR GPL-3.0-or-later`</sup>
19
17
 
18
+ <a name="top"></a>
19
+
20
20
  # 🤝 Contributing to Network Pro Strategies
21
21
 
22
22
  **Network Pro Strategies**
23
- **Effective Date:** September 23, 2025
23
+ **Effective Date:** October 29, 2025
24
+
25
+ &nbsp;
26
+
27
+ ## Contents
28
+
29
+ - [Using the Issue Tracker](#issuetrack)
30
+ - [Bug Reports](#bug-reports)
31
+ - [Feature Requests](#feature-requests)
32
+ - [Before You Begin](#before-you-begin)
33
+ - [Dependency Management](#dependency-management)
34
+ - [Pull Requests](#pull-requests)
35
+ - [Coding & Style Notes](#coding)
36
+ - [Legal Notice](#legal)
24
37
 
25
38
  &nbsp;
26
39
 
@@ -33,6 +46,8 @@ respectfully. 🙌
33
46
 
34
47
  ---
35
48
 
49
+ <a name="issuetrack"></a>
50
+
36
51
  ## 🐛 Using the Issue Tracker
37
52
 
38
53
  Use the [issue tracker](https://github.com/netwk-pro/netwk-pro.github.io/issues)
@@ -48,6 +63,16 @@ for:
48
63
  - [GitHub Discussions](https://discuss.neteng.pro)
49
64
  - [Discord](https://discord.neteng.pro)
50
65
 
66
+ **Please refer to the following documentation before initiating any feature or
67
+ pull requests:**
68
+
69
+ - [Before You Begin](#before-you-begin)
70
+ - [Dependency Management](#dependency-management)
71
+
72
+ &nbsp;
73
+
74
+ <sub>[Back to top](#top)</sub>
75
+
51
76
  ---
52
77
 
53
78
  <a name="bug-reports"></a>
@@ -57,7 +82,7 @@ for:
57
82
  A bug is a clear, reproducible issue in the code. High-quality reports help us
58
83
  fix problems faster.
59
84
 
60
- ### A good bug report includes
85
+ ### A good bug report includes
61
86
 
62
87
  - A **descriptive title**
63
88
  - Steps to reproduce
@@ -81,6 +106,8 @@ _Example_:
81
106
 
82
107
  <!-- markdownlint-enable MD042 -->
83
108
 
109
+ &nbsp;
110
+
84
111
  <sub>[Back to top](#top)</sub>
85
112
 
86
113
  ---
@@ -100,6 +127,165 @@ Before posting:
100
127
 
101
128
  Strong proposals help us prioritize.
102
129
 
130
+ &nbsp;
131
+
132
+ <sub>[Back to top](#top)</sub>
133
+
134
+ ---
135
+
136
+ <a name="before-you-begin"></a>
137
+
138
+ ## 🧭 Before You Begin
139
+
140
+ Before opening a pull request, please make sure your environment and commits
141
+ follow the project’s conventions.
142
+
143
+ ### Prerequisites
144
+
145
+ - **Node.js:** v24.x (LTS)
146
+ - **npm:** v11.x
147
+ _(See package.json → `engines` field for exact supported versions.)_
148
+
149
+ Install dependencies with:
150
+
151
+ ```bash
152
+ cp .env.template .env
153
+ npm ci
154
+ npx playwright install
155
+ ```
156
+
157
+ ### Code Style & Linting
158
+
159
+ This project uses:
160
+
161
+ - **[Prettier](https://prettier.io)** for formatting
162
+ - **[ESLint](https://eslint.org)** for static analysis
163
+ - **[Vitest](https://vitest.dev)** for testing
164
+
165
+ Please refer to
166
+ **[Editor Configuration](https://github.com/netwk-pro/netwk-pro.github.io/wiki/Editor-Configuration)**
167
+ in the [Wiki](https://github.com/netwk-pro/netwk-pro.github.io/wiki) for the
168
+ full toolchain.
169
+
170
+ To ensure consistency, please run:
171
+
172
+ ```bash
173
+ npm run checkout
174
+ ```
175
+
176
+ This will:
177
+
178
+ - Verify Node and npm versions
179
+ - Run all tests (client + server)
180
+ - Lint and format your code
181
+ - Run SvelteKit’s type and build checks
182
+
183
+ > ✅ Tip: Run this before committing to catch issues early.
184
+ > If Prettier check fails, use `npm run format:fix` to correct formatting, then
185
+ > re-run `npm run checkout`.
186
+
187
+ ### Branch Naming Convention
188
+
189
+ Use clear, consistent names for feature branches:
190
+
191
+ | Type | Example | Description |
192
+ | -------- | ------------------------------ | ------------------------------ |
193
+ | Feature | `feature/auth0-integration` | New feature or enhancement |
194
+ | Fix | `fix/login-redirect` | Bug fix or regression |
195
+ | Chore | `chore/deps-update` | Dependency or tooling updates |
196
+ | Docs | `docs/contributing-update` | Documentation-only changes |
197
+ | Refactor | `refactor/component-structure` | Code cleanup or reorganization |
198
+
199
+ ### Commit Messages
200
+
201
+ Please use clear, descriptive commit messages.
202
+ If you prefer a convention, **Conventional Commits** are supported:
203
+
204
+ ```cpp
205
+ type(scope): short description
206
+
207
+ [optional body]
208
+ ```
209
+
210
+ Examples:
211
+
212
+ ```scss
213
+ fix(auth): handle expired access token
214
+ chore(deps): pin vitest to 3.2.4 for compatibility
215
+ docs(contributing): clarify build process for SvelteKit
216
+ ```
217
+
218
+ &nbsp;
219
+
220
+ <sub>[Back to top](#top)</sub>
221
+
222
+ ---
223
+
224
+ <a name="dependency-management"></a>
225
+
226
+ ## 📦 Dependency Management
227
+
228
+ This project uses
229
+ [`npm-check-updates`](https://github.com/raineorshine/npm-check-updates) (NCU)
230
+ to manage dependency upgrades safely and predictably.
231
+
232
+ ### Configuration
233
+
234
+ All upgrade rules and exclusions are defined in the root `.ncurc.cjs` file.
235
+ This configuration ensures we only upgrade compatible dependencies and avoid
236
+ breakage in core tooling.
237
+
238
+ **Example rules:**
239
+
240
+ - Only upgrade **production** and **dev** dependencies.
241
+ - Reject potentially breaking tools (e.g., `vitest`, `@vitest/coverage-v8`,
242
+ `prettier`).
243
+ - Maintain clean, grouped CLI output during upgrade runs.
244
+
245
+ ### 🪄 Commands
246
+
247
+ | Command | Description |
248
+ | ----------------------- | -------------------------------------------------------------------- |
249
+ | `npm run check:updates` | Lists available dependency updates without modifying `package.json`. |
250
+ | `npm run upgrade` | Applies safe upgrades using `.ncurc.cjs` rules. |
251
+
252
+ These commands are wrappers around NCU, keeping the behavior consistent across
253
+ environments.
254
+
255
+ ### Rejected Packages
256
+
257
+ Certain packages are **intentionally pinned** due to breaking changes between
258
+ major versions or ongoing test compatibility work.
259
+ Do **not manually upgrade** these unless the project maintainer specifically
260
+ approves it.
261
+
262
+ Commonly pinned packages include:
263
+
264
+ - `vitest`
265
+ - `@vitest/coverage-v8`
266
+ - `prettier`
267
+ - `jsdom`
268
+
269
+ If you think one of these can be safely updated, open a discussion issue or
270
+ mention it in your PR description before upgrading.
271
+
272
+ ### Why We Use This Approach
273
+
274
+ We separate **rules** (in `.ncurc.cjs`) from **presentation** (via npm scripts)
275
+ to keep updates consistent:
276
+
277
+ - `.ncurc.cjs` defines _what_ can change
278
+ - `npm run upgrade` defines _how_ it’s displayed
279
+ - Contributors don’t need to remember CLI flags or project-specific exclusions
280
+
281
+ This ensures every update is:
282
+
283
+ - predictable
284
+ - consistent
285
+ - and easy to review
286
+
287
+ &nbsp;
288
+
103
289
  <sub>[Back to top](#top)</sub>
104
290
 
105
291
  ---
@@ -110,22 +296,22 @@ Strong proposals help us prioritize.
110
296
 
111
297
  Well-scoped, well-documented pull requests are the lifeblood of open-source.
112
298
 
113
- ### ⚠️ Ask First
299
+ ### Ask First
114
300
 
115
- Before large PRs (new features, refactors, dependency upgrades), please check
116
- with maintainers first.
301
+ Before starting large PRs (new features, major refactors, or dependency
302
+ upgrades), please open an issue or discussion first to align on approach.
117
303
 
118
- ### 📋 Steps
304
+ ### Steps
119
305
 
120
- `1.` **Fork the repo & set remotes**:
306
+ `1.` **Fork and clone the repo:**
121
307
 
122
308
  ```bash
123
- git clone https://github.com/<your-username>/blog.git
124
- cd blog
125
- git remote add upstream https://github.com/netwk-pro/blog.git
309
+ git clone https://github.com/<your-username>/netwk-pro.github.io.git
310
+ cd netwk-pro.github.io
311
+ git remote add upstream https://github.com/netwk-pro/netwk-pro.github.io.git
126
312
  ```
127
313
 
128
- `2.` **Stay Updated**
314
+ `2.` **Stay up to date with upstream:**
129
315
 
130
316
  ```bash
131
317
  git checkout master
@@ -135,74 +321,125 @@ git pull upstream master
135
321
  `3.` **Create a topic branch:**
136
322
 
137
323
  ```bash
138
- git checkout -b my-feature
324
+ git checkout -b feature/my-feature
139
325
  ```
140
326
 
141
- `4.` **Install & test locally:**
327
+ `4.` **Install:**
142
328
 
143
329
  ```bash
330
+ cp .env.template .env
144
331
  npm ci
332
+ npx playwright install
333
+ ```
334
+
335
+ `5.` **Make and commit your changes:**
336
+
337
+ - Use clear, descriptive commit messages.
338
+ - Group related changes together logically.
339
+
340
+ `6.` **Test locally:**
341
+
342
+ ```bash
343
+ npm run dev
145
344
  npm run checkout
146
345
  ```
147
346
 
148
- `5.` **Make your changes**
347
+ `7.` **Do not commit build artifacts.**
149
348
 
150
- (and commit them in logical chunks with good commit messages).
349
+ ⚠️ SvelteKit builds are environment-specific and should not be checked into
350
+ source control. The CI/CD pipeline will automatically build, test, and deploy
351
+ your changes.
151
352
 
152
- `6.` **Build:**
353
+ Please **do not commit**:
354
+
355
+ - `.svelte-kit/`
356
+ - `build/`
357
+ - `node_modules/`
358
+
359
+ To ensure your local environment matches CI:
153
360
 
154
361
  ```bash
155
362
  npm run build
156
- git add build/
157
- git commit -m "Build: update assets"
158
363
  ```
159
364
 
160
- `7.` **Push and open a PR:**
365
+ (This validates your build works, but does not need to be committed.)
366
+
367
+ `8.` **Push and open your PR:**
161
368
 
162
369
  ```bash
163
- git push origin my-feature
370
+ git push origin feature/my-feature
164
371
  ```
165
372
 
166
- Open your PR with a clear title, description, and reference the related issue
167
- (if any).
373
+ `9.` **Open your PR on GitHub:**
374
+
375
+ - Use a clear title and description.
376
+ - Reference any related issues.
377
+ - Include screenshots or logs if relevant.
378
+
379
+ ---
380
+
381
+ ✅ Tip: Keep your PRs small and focused — it’s easier to review and merge
382
+ quickly.
383
+
384
+ &nbsp;
168
385
 
169
386
  <sub>[Back to top](#top)</sub>
170
387
 
171
388
  ---
172
389
 
390
+ <a name="coding"></a>
391
+
173
392
  ## ✅ Coding & Style Notes
174
393
 
175
- - Use the defined code style (Prettier, ESLint, Stylelint, markdownlint)
176
- - Avoid unrelated changes in the same PR
177
- - Keep PRs focused and test-covered when appropriate
394
+ - Use the defined code style (Prettier, ESLint, Stylelint, markdownlint).
395
+ - Avoid unrelated changes in the same PR.
396
+ - Keep PRs focused and test-covered when appropriate.
178
397
 
179
398
  &nbsp;
180
399
 
400
+ <a name="legal"></a>
401
+
181
402
  ## 🔐 Legal Notice
182
403
 
183
404
  By submitting a pull request, you agree to license your contributions under:
184
405
 
185
- - [CC BY 4.0](https://netwk.pro/license#cc-by)
186
- - [GNU GPL 3.0 or later](https://netwk.pro/license#gnu-gpl)
406
+ - [CC BY 4.0](https://netwk.pro/legal#cc-by)
407
+ - [GNU GPL 3.0 or later](https://netwk.pro/legal#gnu-gpl)
408
+
409
+ &nbsp;
187
410
 
188
411
  <sub>[Back to top](#top)</sub>
189
412
 
190
413
  &nbsp;
191
414
 
192
- _Thanks again for your contribution and for being part of the Network Pro
415
+ _Thanks again for your contribution and for being part of the Network Pro&trade;
193
416
  community!_
194
417
 
195
418
  ---
196
419
 
420
+ <span style="font-size: 12px; font-weight: bold; text-align: center;">
421
+
422
+ [Home](https://netwk.pro) &nbsp; | &nbsp;
423
+ [Terms of Use](https://netwk.pro/terms-of-use)
424
+ [Privacy Policy](https://netwk.pro/privacy) &nbsp; | &nbsp;
425
+ [Legal](https://netwk.pro/license)
426
+
427
+ </span>
428
+
429
+ &nbsp;
430
+
197
431
  <span style="font-size: 12px; text-align: center;">
198
432
 
433
+ Copyright &copy; 2025 **[Network Pro Strategies](https://netwk.pro/)** (Network
434
+ Pro&trade;)
435
+
199
436
  Network Pro&trade;, the shield logo, and the "Locking Down Networks...&trade;"
200
- slogan are [trademarks](https://netwk.pro/license#trademark) of Network Pro
437
+ slogan are [trademarks](https://netwk.pro/legal#trademark) of Network Pro
201
438
  Strategies.
202
439
 
203
- Licensed under **[CC BY 4.0](https://creativecommons.org/licenses/by/4.0/)** and
204
- the **[GNU GPL](https://spdx.org/licenses/GPL-3.0-or-later.html)**, as published
205
- by the Free Software Foundation, either version 3 of the License, or (at your
206
- option) any later version.
440
+ Licensed under **[CC BY 4.0](https://netwk.pro/legal#cc-by)** and the
441
+ **[GNU GPL](https://netwk.pro/legal#gnu-gpl)**, as published by the Free
442
+ Software Foundation, either version 3 of the License, or (at your option) any
443
+ later version.
207
444
 
208
445
  </span>
Binary file
Binary file
@@ -0,0 +1,87 @@
1
+ ---
2
+ date:
3
+ created: 2025-11-09
4
+ title: Introducing Our New Privacy & Security Apps & Services Portal
5
+ summary:
6
+ 'In a digital world where personal data has become the new currency,
7
+ protecting privacy isn’t just a choice — it’s a necessity. That’s why we’re
8
+ excited to announce the launch of our new site: apps.netwk.pro — your trusted
9
+ destination for discovering the best tools and services designed to safeguard
10
+ your digital life.'
11
+ authors:
12
+ - team
13
+ categories:
14
+ - Open-Source
15
+ - Android
16
+ - Privacy
17
+ - Security
18
+ tags:
19
+ - networkpro
20
+ - website
21
+ - android
22
+ - open-source
23
+ - privacy
24
+ - security
25
+ ---
26
+
27
+ # Introducing Our New Privacy & Security Apps & Services Portal
28
+
29
+ In a digital world where personal data has become the new currency, protecting
30
+ privacy isn’t just a choice — it’s a necessity. That’s why we’re excited to
31
+ announce the launch of our new site: [apps.netwk.pro](https://apps.netwk.pro) —
32
+ your trusted destination for discovering the best tools and services designed to
33
+ safeguard your digital life.
34
+
35
+ <!-- more -->
36
+
37
+ ## 🔐 A Curated Guide to the Best in Privacy & Security
38
+
39
+ The new portal brings together a hand-picked collection of **privacy and
40
+ security apps for mobile and desktop**, chosen for their proven track records,
41
+ transparency, and technical integrity. From encrypted messaging platforms and
42
+ secure browsers to password managers, VPNs, firewalls, and data-protection
43
+ tools, each recommendation is carefully evaluated for performance and ethical
44
+ standards.
45
+
46
+ Wherever possible, we prioritize **open-source software** — because true
47
+ security starts with transparency. Open-source projects allow communities to
48
+ verify code integrity, audit vulnerabilities, and ensure that privacy claims are
49
+ backed by evidence, not marketing.
50
+
51
+ ## 📱 Built for Users Who Value Control
52
+
53
+ At _[apps.netwk.pro](https://apps.netwk.pro)_, you won’t find ad-driven rankings
54
+ or pay-to-play listings. Every featured app or service has been selected through
55
+ technical analysis and real-world testing. Our goal is to help users — from
56
+ everyday consumers to professionals — find tools that respect their data,
57
+ enhance their privacy, and strengthen their security posture across platforms.
58
+
59
+ Whether you’re looking to **de-Google your phone**, improve your **network
60
+ security**, or discover **FOSS alternatives** to mainstream apps, the site
61
+ provides curated insights, installation guidance, and direct links to trusted
62
+ sources.
63
+
64
+ ## 🌍 A Step Toward Digital Independence
65
+
66
+ This launch represents our commitment to promoting **digital autonomy** —
67
+ empowering individuals and organizations to take control of their privacy,
68
+ rather than surrendering it to default settings or proprietary ecosystems.
69
+
70
+ Explore the growing catalog now at [apps.netwk.pro](https://apps.netwk.pro) and
71
+ start building your personal security stack with confidence.
72
+
73
+ Because in a connected world, **privacy isn’t just protection — it’s freedom**.
74
+
75
+ Check out the new site:
76
+ 🔗 [apps.netwk.pro](https://apps.netwk.pro)
77
+
78
+ &nbsp;
79
+
80
+ <figure class="poster-figure">
81
+ <picture>
82
+ <source srcset="/img/privacy-security-promo.webp" type="image/webp" />
83
+ <img src="/img/privacy-security-promo.png" alt="Introducing Our New Privacy & Security Apps & Services Portal" style="width: 60%; height: 60%">
84
+ <figcaption>
85
+ Introducing Our New Privacy & Security Apps & Services Portal – featured visual
86
+ </figcaption>
87
+ </figure>
@@ -0,0 +1,79 @@
1
+ ---
2
+ date:
3
+ created: 2025-11-09
4
+ title: 'The End of True Sideloading'
5
+ summary:
6
+ Google’s new restrictions will soon mean only registered apps can be installed
7
+ on Android. That’s not security — it’s control.
8
+ authors:
9
+ - team
10
+ categories:
11
+ - Open-Source
12
+ - Privacy
13
+ - Security
14
+ - Android
15
+ tags:
16
+ - google
17
+ - android
18
+ - sideloading
19
+ - apps
20
+ - open-source
21
+ - privacy
22
+ ---
23
+
24
+ # The End of True Sideloading
25
+
26
+ ## How Google Is Tightening Its Grip on Android
27
+
28
+ For years, **sideloading** — the ability to install apps outside of official app
29
+ stores — has been one of Android’s defining features. It’s what set the platform
30
+ apart from Apple’s closed ecosystem, giving users the freedom to choose where
31
+ their software comes from and how they use their devices.
32
+
33
+ <!-- more -->
34
+
35
+ That freedom, however, is about to change.
36
+
37
+ According to a
38
+ [recent F-Droid article](https://f-droid.org/en/2025/10/28/sideloading.html),
39
+ Google’s new policies will soon make it impossible to install apps that haven’t
40
+ been pre-approved through its registration systems. In other words, sideloading
41
+ as we know it will be replaced with a **"managed installation"** model — one
42
+ where every app must be part of Google’s controlled ecosystem.
43
+
44
+ ## A Shift From Freedom To Control
45
+
46
+ This change is being framed as a security improvement, but it raises fundamental
47
+ questions about **digital sovereignty**. If every app has to be “verified”
48
+ through Google’s channels, then users effectively lose the ability to make
49
+ independent decisions about what software they trust or use.
50
+
51
+ Projects like **F-Droid**, which champion open-source, privacy-respecting apps,
52
+ could be severely impacted. Developers who distribute apps independently —
53
+ outside of Play Store policies or monetization structures — may find themselves
54
+ locked out entirely.
55
+
56
+ ## The Bigger Picture
57
+
58
+ What’s happening isn’t just about Android. It’s part of a broader industry shift
59
+ toward closed ecosystems and controlled user experiences. By restricting
60
+ sideloading, Google is limiting not only user freedom but also innovation,
61
+ competition, and transparency.
62
+
63
+ For those who value openness, privacy, and true digital ownership, now is the
64
+ time to pay attention.
65
+
66
+ As F-Droid emphasizes, sideloading isn’t a loophole — it’s a fundamental right
67
+ of computing freedom. Losing it means ceding more control over our devices,
68
+ data, and choices to corporate gatekeepers.
69
+
70
+ Read more at the link below:
71
+ 🔗 [f-droid.org/en/2025/10/28/sideloading.html](https://f-droid.org/en/2025/10/28/sideloading.html)
72
+
73
+ &nbsp;
74
+
75
+ <figure class="poster-figure">
76
+ <source srcset="/img/sideloading-promo.webp" type="image/webp" />
77
+ <img src="/img/sideloading-promo.png" alt="The End of True Sideloading" style="width: 60%; height: 60%;">
78
+ <figcaption>The End of True Sideloading – featured visual</figcaption>
79
+ </figure>
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  date:
3
3
  created: 2015-01-04
4
- updated: 2025-07-27
4
+ updated: 2025-11-09
5
5
  title: Secure Secure Shell
6
6
  summary: Secure shell (SSHD) hardening guide.
7
7
  authors:
@@ -12,6 +12,7 @@ categories:
12
12
  tags:
13
13
  - cybersecurity
14
14
  - guides
15
+ - security
15
16
  ---
16
17
 
17
18
  # Secure Secure Shell
@@ -370,18 +371,18 @@ Here are the available MAC choices:
370
371
  1. hmac-md5-96
371
372
  1. hmac-sha1
372
373
  1. hmac-sha1-96
373
- 1. hmac-sha2-256
374
- 1. hmac-sha2-512
374
+ 1. **hmac-sha2-256**
375
+ 1. **hmac-sha2-512**
375
376
  1. umac-64
376
- 1. umac-128
377
- 1. <hmac-md5-etm@openssh.com>
378
- 1. <hmac-md5-96-etm@openssh.com>
379
- 1. <hmac-sha1-etm@openssh.com>
380
- 1. <hmac-sha1-96-etm@openssh.com>
381
- 1. **<hmac-sha2-256-etm@openssh.com>**
382
- 1. **<hmac-sha2-512-etm@openssh.com>**
383
- 1. <umac-64-etm@openssh.com>
384
- 1. <umac-128-etm@openssh.com>
377
+ 1. **umac-128**
378
+ 1. hmac-md5-etm@openssh.com
379
+ 1. hmac-md5-96-etm@openssh.com
380
+ 1. hmac-sha1-etm@openssh.com
381
+ 1. hmac-sha1-96-etm@openssh.com
382
+ 1. **hmac-sha2-256-etm@openssh.com**
383
+ 1. **hmac-sha2-512-etm@openssh.com**
384
+ 1. umac-64-etm@openssh.com
385
+ 1. **umac-128-etm@openssh.com**
385
386
 
386
387
  The selection considerations:
387
388