Compare commits
51 Commits
181c9fbad9
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 2f779fb9d0 | |||
|
7a02c7b1c1
|
|||
| 48fbd272e4 | |||
|
b850c51e4f
|
|||
|
3bf5769b52
|
|||
| 67e56ea102 | |||
|
2c9e75bf1a
|
|||
| ccc904c691 | |||
|
d0c371a0f9
|
|||
|
466ef289b1
|
|||
|
b5755ddedb
|
|||
|
2a119bd920
|
|||
|
a8dc69d7ad
|
|||
|
09f5c60d60
|
|||
|
b122f7c1c0
|
|||
|
70fd148928
|
|||
|
c53c6d50aa
|
|||
|
c4d94bb019
|
|||
|
1075833562
|
|||
|
fb46c13394
|
|||
| f78789fdc4 | |||
| 4327c15823 | |||
|
39c14fb3e4
|
|||
|
47e1ebf69c
|
|||
|
88f9362279
|
|||
|
96e4d9a402
|
|||
|
b3e9ccc546
|
|||
| 5f601251db | |||
|
af2da91d7c
|
|||
|
3c7f02a09c
|
|||
|
81c8220e30
|
|||
|
b694a6f547
|
|||
| d0f5fac2b4 | |||
|
82563d0a48
|
|||
|
4ff0738531
|
|||
|
69c298922a
|
|||
|
a87e7f12a6
|
|||
|
4fbf32eaa9
|
|||
|
dc274983fe
|
|||
|
ee749cf1bb
|
|||
|
6bc40e11c1
|
|||
|
4e853f04f3
|
|||
|
fb01dd8e3f
|
|||
|
61aabd8ef1
|
|||
|
b32544f938
|
|||
|
bca63a36fb
|
|||
|
9d1b94f686
|
|||
|
a9ff01f392
|
|||
|
fbcf5be2a6
|
|||
| 5310ee1912 | |||
| bc7f7a7347 |
17
NEWSITE_CONTRIBUTERS.md
Normal file
@@ -0,0 +1,17 @@
|
||||
# Basic Concept, Design and Guiding Light
|
||||
|
||||
* Ken Fallon
|
||||
|
||||
# Implementaion and Design Touches
|
||||
|
||||
* Lee Hanken
|
||||
* Roan Horning
|
||||
|
||||
# Constructive Feedback and Forward Looks
|
||||
|
||||
* Archer72 (Mark Rice)
|
||||
* Dave Morris
|
||||
* kwoot
|
||||
|
||||
Thanks to all the contributers who helped give HPR
|
||||
its 2025 facelift!
|
||||
@@ -68,5 +68,5 @@ and add the label "**Feature Request**".
|
||||
* Ken Fallon
|
||||
* norrist
|
||||
* Paul Jewell
|
||||
|
||||
* Lee Hanken
|
||||
|
||||
|
||||
@@ -10,7 +10,11 @@ https://creativecommons.org/publicdomain/
|
||||
* -- https://developer.mozilla.org/en-US/docs/Learn/CSS/CSS_layout/Responsive_Design
|
||||
* - Matthew James Tayler: Responsive Font Size (Optimal Text at Every Breakpoint)
|
||||
* -- https://matthewjamestaylor.com/responsive-font-size
|
||||
* - CSS-Tricks: Linearly Scale font-size with CSS clamp() Based on the Viewport
|
||||
* - CSS-Tricks: Linearly Scale font-size with CSS c
|
||||
* #welcome > p {
|
||||
* font-size: 1.25rem;
|
||||
* font-weight: 450;
|
||||
* }lamp() Based on the Viewport
|
||||
* -- https://css-tricks.com/linearly-scale-font-size-with-css-clamp-based-on-the-viewport/
|
||||
*/
|
||||
|
||||
@@ -43,10 +47,12 @@ https://creativecommons.org/publicdomain/
|
||||
--link-secondary: #a8f8ff;
|
||||
--link-secondary-hover: #f9e9c2;
|
||||
--link-title-color: #00003e;
|
||||
--link-navigation-hover: #030303;
|
||||
--primary-content-line-height: 1.45;
|
||||
|
||||
--font-family-hpr: Verdana, Arial, Helvetica, sans-serif; /* 1em/1.5 OpenDyslexic, */;
|
||||
--font-size-default: clamp(1rem, 15px + 0.3vw, 1.07rem);
|
||||
--font-size-emphasis: clamp(1.1rem, 15px + 0.3vw, 1.25rem);
|
||||
|
||||
--logo-font-family: var(--font-family-hpr);
|
||||
--logo-font-weight: bolder;
|
||||
@@ -327,9 +333,13 @@ article > p,
|
||||
#podcast_lane > .lane,
|
||||
#project_lane > .lane,
|
||||
#latest_lane.lane {
|
||||
justify-content: flex-between;
|
||||
justify-content: space-around;
|
||||
}
|
||||
.lane > article,
|
||||
#welcome > p {
|
||||
font-size: var(--font-size-emphasis);
|
||||
font-weight: 450;
|
||||
}
|
||||
#hosts tr {
|
||||
/* Add shadows to create the "card" effect */
|
||||
border-top: thin solid var(--shadow-cards);
|
||||
@@ -340,7 +350,7 @@ article > p,
|
||||
2px 4px 4px var(--shadow-cards);
|
||||
transition: 0.3s;
|
||||
flex: 1 0 100%;
|
||||
overflow-x: scroll;
|
||||
overflow: auto;
|
||||
padding-bottom: 1rem;
|
||||
}
|
||||
.lane > article:hover,
|
||||
@@ -354,7 +364,7 @@ article > p,
|
||||
margin-right: 1rem;
|
||||
}
|
||||
.lane > article > header,
|
||||
.lane > article > h3 {
|
||||
.lane > article > h3:first-child {
|
||||
background: var(--background-secondary);
|
||||
padding: 1.5rem 1rem 1rem 1rem;
|
||||
margin: 0;
|
||||
@@ -362,12 +372,25 @@ article > p,
|
||||
font-size: 1.45rem;
|
||||
color: var(--background-primary);
|
||||
}
|
||||
.lane > article > header > .index-link {
|
||||
float: right;
|
||||
}
|
||||
.lane.stack > article {
|
||||
border-radius: 0.5rem;
|
||||
border: thin solid var(--background-secondary);
|
||||
max-width: calc(100vw - 12px);
|
||||
}
|
||||
.lane.stack > article > header,
|
||||
.lane.stack > article > h3:first-child {
|
||||
border-top-left-radius: 0.5rem;
|
||||
border-top-right-radius: 0.5rem;
|
||||
}
|
||||
.lane > article > header a,
|
||||
.lane > article > h3 a {
|
||||
.lane > article > h3:first-child a {
|
||||
color: var(--link-secondary);
|
||||
}
|
||||
.lane > article > header a:hover,
|
||||
.lane > article > h3:hover {
|
||||
.lane > article > h3:first-child:hover {
|
||||
color: var(--link-secondary-hover);
|
||||
}
|
||||
.lane.stack> * > header * {
|
||||
@@ -533,46 +556,66 @@ fieldset > table td select {
|
||||
display: block;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
fieldset > table {
|
||||
width: calc(100vw + -16vw + -1rem);
|
||||
max-width: 100%;
|
||||
}
|
||||
fieldset > input,
|
||||
fieldset > table td input,
|
||||
fieldset > table td textarea {
|
||||
width: calc(100vw + -16vw + -1.5rem);
|
||||
max-width: 100%;
|
||||
input {
|
||||
border: thin solid var(--input-border-primary);
|
||||
border-radius: 0.2rem;
|
||||
margin-bottom: 0.5rem;
|
||||
padding: 0.5rem;
|
||||
}
|
||||
|
||||
fieldset > table td select {
|
||||
appearance: none;
|
||||
input[type="submit"] {
|
||||
background-color: var(--background-secondary);
|
||||
color: var(--text-secondary);
|
||||
font-weight: 400;
|
||||
width: fit-content;
|
||||
}
|
||||
input[type="submit"]:hover {
|
||||
background-color: var(--link-primary-hover);
|
||||
color: var(--background-primary);
|
||||
}
|
||||
select {
|
||||
appearance: auto;
|
||||
background: var(--background-primary);
|
||||
color: var(--text-primary);
|
||||
width: calc(100vw + -16vw + -0.40rem);
|
||||
border: 1px solid var(--input-border-primary);
|
||||
border-radius: 0.25rem;
|
||||
cursor: pointer;
|
||||
margin-bottom: 0.5rem;
|
||||
padding: 0.5rem;
|
||||
}
|
||||
fieldset > table td select:focus{
|
||||
select:focus{
|
||||
background: var(--background-secondary);
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
fieldset > table td select:active {
|
||||
}select:active {
|
||||
background: var(--background-secondary);
|
||||
color: var(--text-primary);
|
||||
}
|
||||
fieldset > input,
|
||||
fieldset > table td input,
|
||||
fieldset > table td textarea {
|
||||
width: calc(100vw + -16vw + -1.5rem);
|
||||
max-width: 100%;
|
||||
}
|
||||
fieldset > table td select {
|
||||
width: calc(100vw + -16vw + -0.40rem);
|
||||
}
|
||||
fieldset > table td input[type="radio"] {
|
||||
display: initial;
|
||||
width: initial;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
#youtube {
|
||||
--video-ratio: calc(390 / 640);
|
||||
width: min(calc(89vw + 0px), 640px);
|
||||
height: min(calc(calc(89vw + 0px) * var(--video-ratio)), 390px);
|
||||
}
|
||||
#upload_method pre {
|
||||
max-width: 80vw;
|
||||
overflow-x: scroll;
|
||||
}
|
||||
#search form {
|
||||
flex: 1 1 100%;
|
||||
}
|
||||
@@ -586,20 +629,14 @@ fieldset > table td input[type="radio"] {
|
||||
width: 94%;
|
||||
}
|
||||
#search fieldset > input[type="submit"] {
|
||||
background-color: var(--background-secondary);
|
||||
color: var(--text-secondary);
|
||||
width: 100%;
|
||||
}
|
||||
#search fieldset > input[type="submit"]:hover {
|
||||
background-color: var(--link-primary-hover);
|
||||
color: var(--background-primary);
|
||||
}
|
||||
#search fieldset > p {
|
||||
margin-top: 0.5rem;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
.no-css {
|
||||
display: none;
|
||||
display: none !important;
|
||||
}
|
||||
#tags .date {
|
||||
margin:0;
|
||||
@@ -633,12 +670,20 @@ fieldset > table td input[type="radio"] {
|
||||
background: var(--background-secondary);
|
||||
color: var(--background-primary);
|
||||
}
|
||||
#hosts td:nth-child(2) {
|
||||
display: inline-flex;
|
||||
}
|
||||
#hosts td:nth-child(-n+2) a {
|
||||
color: var(--link-secondary);
|
||||
flex: 1;
|
||||
}
|
||||
#hosts td:nth-child(-n+2) a:hover {
|
||||
color: var(--link-secondary-hover);
|
||||
}
|
||||
#hosts td:nth-child(-n+2) a strong {
|
||||
display: inline-block;
|
||||
line-height: 1.5rem;
|
||||
}
|
||||
#hosts td:nth-child(2) {
|
||||
padding: 0.25rem 0 0 8px;
|
||||
width: calc(100% - 90px);
|
||||
@@ -694,6 +739,57 @@ fieldset > table td input[type="radio"] {
|
||||
clip: rect(0, 0, 0, 0);
|
||||
border: 0;
|
||||
}
|
||||
nav.episodes {
|
||||
color: var(--background-primary);
|
||||
font-size: 0.9em;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-around;
|
||||
max-width: 100vw;
|
||||
}
|
||||
nav.episodes span {
|
||||
color: var(--text-primary);
|
||||
display: inline-block;
|
||||
text-align: center;
|
||||
border: solid thin var(--text-primary);
|
||||
}
|
||||
nav.episodes span:nth-child(-n+2),
|
||||
nav.episodes span:nth-child(-n+2) a {
|
||||
border-top-left-radius: 2rem;
|
||||
border-bottom-left-radius: 2rem;
|
||||
}
|
||||
nav.episodes span:nth-child(n+3),
|
||||
nav.episodes span:nth-child(n+3) a {
|
||||
border-top-right-radius: 2rem;
|
||||
border-bottom-right-radius: 2rem;
|
||||
}
|
||||
nav.episodes span.no-link,
|
||||
nav.episodes span a {
|
||||
padding: 0.3em 0.4em 0.1em 0.4em;
|
||||
display: inline-block;
|
||||
min-width: 4.4em;
|
||||
min-height: 1.5em;
|
||||
}
|
||||
nav.episodes span a:hover {
|
||||
background-color: var(--link-primary-hover);
|
||||
color: var(--link-secondary-hover);
|
||||
}
|
||||
nav.episodes svg {
|
||||
margin: 0 0.2rem;
|
||||
height: 0.85em;
|
||||
max-width: 13px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
nav.episodes span a svg #arrow,
|
||||
nav.episodes span a svg #bar {
|
||||
stroke: var(--link-primary);
|
||||
fill: var(--link-primary);
|
||||
}
|
||||
nav.episodes span a:hover svg #arrow,
|
||||
nav.episodes span a:hover svg #bar {
|
||||
stroke: var(--link-secondary-hover);
|
||||
fill: var(--link-secondary-hover);
|
||||
}
|
||||
@media (min-width: 600px) {
|
||||
body > header .bounding-box {
|
||||
justify-content: space-between;
|
||||
@@ -790,6 +886,9 @@ fieldset > table td input[type="radio"] {
|
||||
#host {
|
||||
gap: 1rem;
|
||||
}
|
||||
nav.episodes {
|
||||
display: inline-block;
|
||||
}
|
||||
}
|
||||
@media (min-width: 900px) {
|
||||
#podcast_lane > .lane,
|
||||
@@ -805,3 +904,53 @@ fieldset > table td input[type="radio"] {
|
||||
max-width: 30%;
|
||||
}
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
:root {
|
||||
--link-primary: #bbdfe7;
|
||||
--link-header-hover: #b54c08; /* original --link-primary-hover */;
|
||||
--link-primary-hover: var(--link-secondary-hover);
|
||||
--background-primary: #4d4d4d; /* HPR Grey */
|
||||
--text-primary: #dfdfdf /*#fffff7#fafafa#fbfbee #dfdfdf */;
|
||||
--banner-text-primary: #b6b6b6;
|
||||
--shadow-secondary-color: hsl(0, 0%, 40%);
|
||||
--input-border-primary: var(--shadow-secondary-color);
|
||||
--lane-button-color: #d5e6ea;
|
||||
}
|
||||
body > header {
|
||||
background-image: url("/images/main-header-background-dark.png");
|
||||
background-color: #22545a;
|
||||
}
|
||||
img {
|
||||
filter: brightness(0.70);
|
||||
}
|
||||
a.lane-button {
|
||||
background-image: url("/images/lane-button-background-dark.png");
|
||||
color: var(--lane-button-color);
|
||||
}
|
||||
a.lane-button img {
|
||||
filter: none;
|
||||
}
|
||||
.lane > article > header {
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
#title a:hover {
|
||||
color: var(--link-header-hover);
|
||||
}
|
||||
#hosts td:nth-child(-n+2) {
|
||||
color: var(--text-primary);
|
||||
}
|
||||
nav.episodes span a:hover {
|
||||
background-color: var(--link-primary-hover);
|
||||
color: var(--link-navigation-hover);
|
||||
}
|
||||
nav.episodes span svg #arrow,
|
||||
nav.episodes span svg #bar {
|
||||
stroke: var(--text-primary);
|
||||
fill: var(--text-primary);
|
||||
}
|
||||
nav.episodes span a:hover svg #arrow,
|
||||
nav.episodes span a:hover svg #bar {
|
||||
stroke: var(--link-navigation-hover);
|
||||
fill: var(--link-navigation-hover);
|
||||
}
|
||||
}
|
||||
|
||||
BIN
public_html/images/contribute-audacity-export-sm.png
Normal file
|
After Width: | Height: | Size: 86 KiB |
BIN
public_html/images/contribute-audacity-record-sm.png
Normal file
|
After Width: | Height: | Size: 114 KiB |
BIN
public_html/images/contribute-mumble-record-sm.png
Normal file
|
After Width: | Height: | Size: 93 KiB |
24
public_html/images/icons/arrow-first.svg
Normal file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
viewBox="0 0 12 12"
|
||||
version="1.1"
|
||||
id="arrow_first"
|
||||
width="12"
|
||||
height="12"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<path
|
||||
id="arrow"
|
||||
style="stroke-width:0.584448;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="M 9.9303359,11.572157 11.530286,10.119277 7.0035163,5.9964088 11.484768,1.9181465 9.8743209,0.45252151 3.7931149,5.986851 Z" />
|
||||
<rect
|
||||
style="stroke-width:0.524;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;marker-start:url(#Arrow1Lstart);paint-order:normal"
|
||||
id="bar"
|
||||
width="2.2"
|
||||
height="11.263"
|
||||
x="0.5"
|
||||
y="0.36860976"
|
||||
rx="0"
|
||||
ry="0.0015425405" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 877 B |
25
public_html/images/icons/arrow-last.svg
Normal file
@@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
viewBox="0 0 12 12"
|
||||
version="1.1"
|
||||
id="arrow_last"
|
||||
width="12"
|
||||
height="12"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<path
|
||||
id="arrow"
|
||||
style="stroke-width:0.584448;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="M 2.0731448,11.604466 0.47319466,10.151586 4.9999643,6.0287178 0.51871266,1.9504555 2.1291598,0.48483049 8.2103658,6.01916 Z" />
|
||||
<rect
|
||||
style="stroke-width:0.524;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;marker-start:url(#Arrow1Lstart);paint-order:normal"
|
||||
id="bar"
|
||||
width="2.2"
|
||||
height="11.263"
|
||||
x="-11.503481"
|
||||
y="0.40091875"
|
||||
rx="0"
|
||||
ry="0.0015425405"
|
||||
transform="scale(-1,1)" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 911 B |
15
public_html/images/icons/arrow-next.svg
Normal file
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
viewBox="0 0 12 12"
|
||||
version="1.1"
|
||||
id="arrow_next"
|
||||
width="12"
|
||||
height="12"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<path
|
||||
id="arrow"
|
||||
style="stroke-width:0.584448;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="M 2.0731448,11.604466 0.47319466,10.151586 4.9999643,6.0287178 0.51871266,1.9504555 2.1291598,0.48483049 8.2103658,6.01916 Z" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 575 B |
15
public_html/images/icons/arrow-previous.svg
Normal file
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
viewBox="0 0 12 12"
|
||||
version="1.1"
|
||||
id="arrow_previous"
|
||||
width="12"
|
||||
height="12"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<path
|
||||
id="arrow"
|
||||
style="stroke-width:0.584448;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="M 9.9303359,11.572157 11.530286,10.119277 7.0035163,5.9964088 11.484768,1.9181465 9.8743209,0.45252151 3.7931149,5.986851 Z" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 578 B |
BIN
public_html/images/lane-button-background-dark.png
Normal file
|
After Width: | Height: | Size: 25 KiB |
BIN
public_html/images/main-header-background-dark.png
Normal file
|
After Width: | Height: | Size: 611 KiB |
6
site.cfg
@@ -10,7 +10,7 @@ driver: dbi:SQLite:hpr.db
|
||||
|
||||
# Configure the location of the templates and the generated HTML
|
||||
[app_paths]
|
||||
templates_path: ./templates
|
||||
templates_path: ./templates:./public_html/images/icons
|
||||
output_path: ./public_html
|
||||
|
||||
# Configure the root template page which pulls in the navigation and
|
||||
@@ -108,9 +108,9 @@ content: content-sitemap.tpl.html
|
||||
navigation: navigation-main.tpl.html
|
||||
content: content-tags.tpl.html
|
||||
|
||||
[twat_episode]
|
||||
[twt_episode]
|
||||
navigation: navigation-get-shows.tpl.html
|
||||
content: content-twat_episode.tpl.html
|
||||
content: content-twt_episode.tpl.html
|
||||
multipage: true
|
||||
filename: eps/twt[id]/index.html
|
||||
|
||||
|
||||
@@ -16,9 +16,12 @@
|
||||
<li><a href="<!--% absolute_url(baseurl,'about.html#workflow') %-->">Workflow.</a></li>
|
||||
<li><a href="<!--% absolute_url(baseurl,'about.html#faq') %-->">Frequently Asked Questions.</a></li>
|
||||
</ul>
|
||||
|
||||
<div class="lane stack">
|
||||
<article>
|
||||
<header>
|
||||
<p class="index-link"><a href="/about.html#TOP">↑ Go to top</a></p>
|
||||
<h1 id="about">About HPR<a href="<!--% absolute_url(baseurl,'about.html#about') %-->">.</a></h1>
|
||||
|
||||
</header>
|
||||
<h2 id="community">The HPR Community<a href="<!--% absolute_url(baseurl,'about.html#community') %-->">.</a></h2>
|
||||
<p>What differentiates HPR from other podcasts is that the shows are crowd sourced from the community -
|
||||
fellow listeners like <strong><a href="<!--% absolute_url(baseurl,'about.html#contact') %-->">you</a></strong>.
|
||||
@@ -40,7 +43,7 @@
|
||||
<p>Hacker Public Radio (HPR) is an Internet Radio show (podcast) that releases shows every weekday Monday through Friday.
|
||||
HPR has a long lineage going back to <a href="https://web.archive.org/web/20230323053905/http://www.oldskoolphreak.com/" >Radio FreeK America</a>,
|
||||
<a href="https://web.archive.org/web/20220123174618/https://www.binrev.com/forums/" >Binary Revolution Radio</a> & <a href="https://web.archive.org/web/20150208172826/http://www.nomicon.info/" >Infonomicon</a>,
|
||||
and it is a rename of <a href="<!--% absolute_url(baseurl,'twat.html') %-->" >Today With a Techie</a> radio.
|
||||
and it is a rename of <a href="<!--% absolute_url(baseurl,'eps/index.html#twt_episodes') %-->" >Today With a Techie</a> radio.
|
||||
Please listen to StankDawg's "<a href="<!--% media_path(1, 'hpr', 'mp3', baseurl, media_baseurl) %-->" >
|
||||
Introduction to HPR</a>" for more information.</p>
|
||||
|
||||
@@ -64,6 +67,7 @@
|
||||
<p>Our hosting is kindly provided to us by <a href="<!--% absolute_url(baseurl,'correspondents/0174.html') %-->">Josh Knapp</a> from <a href="https://anhonesthost.com/hosting/shared-hosting">AnHonestHost.com</a>, and he has the last word in issues related to site security. A changing team of volunteers called the "admins" or "Janitors", deal with the day to day operation of HPR. Acting as the first point of contact, processing the shows, coordinating policy discussions, removing spam, updating the website, etc. They are contactable via the email account admin @ HPR. They have no more say over policy than anyone else. Anyone who has shown a long term dedication to the project and is trusted by the community, can become an admin.
|
||||
</p>
|
||||
<p>See the section <a href="<!--% absolute_url(baseurl,'about.html#stuff_you_need_to_know') %-->" >stuff you need to know</a> for more information.</p>
|
||||
|
||||
<h3 id="recent_policy_changes">Recent Policy Changes</h3>
|
||||
<ul>
|
||||
<li><a href="https://lists.hackerpublicradio.com/pipermail/hpr/2024-October/004791.html">Clarification that contributions are CC BY-SA 4.0 unless otherwise stated</a></li>
|
||||
@@ -76,6 +80,7 @@
|
||||
<li><a href="https://lists.hackerpublicradio.com/pipermail/hpr/2021-December/004341.html">Removal of "by arranged permission"
|
||||
when posting to HPR</a></li>
|
||||
</ul>
|
||||
|
||||
<h2 id ="patrons" >Please support our Patrons<a href="<!--% absolute_url(baseurl,'about.html#patrons') %-->">.</a></h2>
|
||||
<p>
|
||||
Our hosting is kindly provided by <a href="<!--% absolute_url(baseurl) %-->correspondents/0174.html">Josh</a> from
|
||||
@@ -87,30 +92,33 @@
|
||||
Please also consider supporting the <a href="https://archive.org/donate/">https://archive.org/donate/</a> who are
|
||||
now hosting our media files.
|
||||
</p>
|
||||
|
||||
<hr />
|
||||
|
||||
<h1 id="contact">Primary Contact Points<a href="<!--% absolute_url(baseurl,'about.html#contact') %-->">.</a></h1>
|
||||
|
||||
</article>
|
||||
<hr class="no-css">
|
||||
<article>
|
||||
<header>
|
||||
<p class="index-link"><a href="/about.html#TOP">↑ Go to top</a></p>
|
||||
<h1 id="contact">Contact<a href="<!--% absolute_url(baseurl,'about.html#contact') %-->">.</a></h1>
|
||||
</header>
|
||||
<h2 id="contact_primary">Primary Contact Points</h2>
|
||||
<ul>
|
||||
<li>email: <strong>admin -at- hackerpublicradio org</strong>, will put you in touch with the Janitors who are
|
||||
the first point of contact for any issues related to the HPR community.
|
||||
If you have any issue of concern please bring it to their attention first.
|
||||
<br />
|
||||
<br>
|
||||
<em>As an anti-spam measure you may get an error back but we do get your email.</em></li>
|
||||
<li>Website: <a href="<!--% absolute_url(baseurl,'') %-->" ><!--% absolute_url(baseurl,'') %--></a>.
|
||||
There is a comment link on each show where you can provide your constructive feedback.</li>
|
||||
<li>Maillist: <a href="<!--% absolute_url(baseurl,'/maillist') %-->">Mailing list</a>.
|
||||
While the Janitors are the first point of contact, the HPR project is
|
||||
<a href="<!--% absolute_url(baseurl,'about.html#governance') %-->">governed</a> by the community.
|
||||
Decisions about how Hacker Public Radio are made on the mailing list, and you can join it by going to :<br />
|
||||
Decisions about how Hacker Public Radio are made on the mailing list, and you can join it by going to :<br>
|
||||
<a href="<!--% absolute_url(baseurl,'/maillist') %-->"><!--% absolute_url(baseurl,'/maillist') %--></a></li>
|
||||
<li>Mastodon: <a href="https://infosec.exchange/@hpr">https://infosec.exchange/@hpr</a> is the official HPR Mastodon instance
|
||||
and is actively monitored.</li>
|
||||
<li>Matrix: <a href="https://matrix.to/#/#hpr:matrix.org" >https://matrix.to/#/#hpr:matrix.org</a> is the official HPR Matrix channel
|
||||
and is actively monitored.</li>
|
||||
</ul>
|
||||
<h3 id="contact_secondary">Secondary Contact Points</h3>
|
||||
<h2 id="contact_secondary">Secondary Contact Points</h2>
|
||||
<p>These platforms are monitored from time to time. Commenting here is less likely to get an immediate response.</p>
|
||||
<ul>
|
||||
<li><a href="https://t.me/+6fEhQrf5IEc4ZGU8">Telegram</a></li>
|
||||
@@ -119,10 +127,13 @@
|
||||
<li><a href="https://www.linkedin.com/company/hackerpublicradio/" >Linked-In</a></li>
|
||||
<li><a href="http://itunes.apple.com/us/podcast/hacker-public-radio/id281699640" >iTunes</a></li>
|
||||
</ul>
|
||||
|
||||
<hr />
|
||||
|
||||
</article>
|
||||
<hr class="no-css">
|
||||
<article>
|
||||
<header>
|
||||
<p class="index-link"><a href="/about.html#TOP">↑ Go to top</a></p>
|
||||
<h1 id ="press" >In the Press<a href="<!--% absolute_url(baseurl,'about.html#press') %-->">.</a></h1>
|
||||
</header>
|
||||
<ul>
|
||||
<li>2019-10-18: <a href="https://blog.feedspot.com/hacker_podcasts/">Top 10 Hacker Podcasts You Must Follow in 2019</a> (<a href="<!--% absolute_url(baseurl,'press/2019-10-18_blog.feedspot.com-hacker_podcasts-Top_10_Hacker_Podcasts_You_Must_Follow_in_2019.pdf') %-->">Archived</a>)</li>
|
||||
<li>2018-08-01: <a href="https://www.linuxlinks.com/review-hacker-public-radio-podcasts-hacker-community/">Review: The Linux Podcast Scene - all the movers and shakers</a> (<a href="<!--% absolute_url(baseurl,'press/2018-08-01_linuxlinks.com_review-linux-podcast-scene-movers-shakers.pdf') %-->">Archived</a>)</li>
|
||||
@@ -131,16 +142,19 @@
|
||||
<li>2016-01-18: <a href="http://www.tripwire.com/state-of-security/security-awareness/information-security-podcast-roundup-2016-edition/">Information Security Podcast Roundup: 2016 Edition</a> from TripWire.com (<a href="<!--% absolute_url(baseurl,'press/2016-01-18_Information_Security_Podcast_Roundup_2016_Edition.pdf') %-->">Archived</a>)</li>
|
||||
<li>2014-12-09: <a href="http://joeyh.name/blog/entry/podcasts_that_dont_suck_2014/">podcasts that don't suck, 2014 edition (Joey Hess)</a>(<a href="<!--% absolute_url(baseurl,'press/2014-12-09_podcasts_that_dont_suck_2014_edition.pdf') %-->">Archived</a>)</li>
|
||||
<li>2014-06-30: <a href="http://opensource.com/life/14/6/hacker-public-radio">Free software on Hacker Public Radio</a> by Bryan Behrenshausen (Red Hat)(<a href="<!--% absolute_url(baseurl,'press/2014-06-30_Free_software_on_Hacker_Public_Radio.pdf') %-->">Archived</a>)</li>
|
||||
<li>2014-04-19: <a href="http://www.efytimes.com/e1/fullnews.asp?edid=136312">10 Useful Places Hosting Informative Podcasts On Linux</a> (<a href="<!--% absolute_url(baseurl,'press/2014-04-19_10_Useful_Places_Hosting_Informative_Podcasts_On_Linux.pdf') %-->">Archived</a>)
|
||||
<li>2014-04-19: <a href="http://www.efytimes.com/e1/fullnews.asp?edid=136312">10 Useful Places Hosting Informative Podcasts On Linux</a> (<a href="<!--% absolute_url(baseurl,'press/2014-04-19_10_Useful_Places_Hosting_Informative_Podcasts_On_Linux.pdf') %-->">Archived</a>)</li>
|
||||
<li>2014-04-11: <a href="http://blog.sleeplessbeastie.eu/2014/04/11/hand-picked-audio-podcasts-for-linux-users/">Hand-picked audio podcasts for Linux users</a> by Milosz Galazka (<a href="<!--% absolute_url(baseurl,'press/2014-04-11_hand-picked-audio-podcasts-for-linux-users.pdf') %-->">Archive</a>)</li>
|
||||
<li>2013-10-11: <a href="http://www.linuxlinks.com/article/20130706190339587/LinuxPodcasts-Page1.html">Illuminating Linux Podcasts</a> by Dan Petersen (<a href="<!--% absolute_url(baseurl,'press/2013-10-11_Illuminating_Linux_Podcasts.pdf') %-->">Archive</a>)</li>
|
||||
<li>2012-12-24: <a href="http://www.maketecheasier.com/10-great-podcasts-for-linux-open-source-geeks/">10 Great Podcasts for Linux & Open Source Geeks</a> by Rebecca "Ruji" Chapnik (<a href="<!--% absolute_url(baseurl,'press/2012-12-24_10-great-podcasts-for-linux-open-source-geeks.pdf') %-->">Archived</a>)</li>
|
||||
<li>2011-08-01: <a href="http://www.linuxformat.com/archives?issue=147">Linux Format: Pick the perfect geek podcast in our roundup</a> by Mayank Sharma in Linux Format Magazine(<a href="<!--% absolute_url(baseurl,'press/2011-08-01_hpr-linux-format.png') %-->">Archive</a>)</li>
|
||||
</ul>
|
||||
|
||||
<hr />
|
||||
</article>
|
||||
<hr class="no-css">
|
||||
<article>
|
||||
<header>
|
||||
<p class="index-link"><a href="/about.html#TOP">↑ Go to top</a></p>
|
||||
<h1 id="how_to_help">How to Help<a href="<!--% absolute_url(baseurl,'about.html#how_to_help') %-->">.</a></h1>
|
||||
|
||||
</header>
|
||||
<p>
|
||||
Hacker Public Radio is a communty podcast where the shows are provided by the community, and is also
|
||||
<a href="<!--% absolute_url(baseurl,'about.html#governance') %-->">governed</a> by the community,
|
||||
@@ -158,12 +172,13 @@
|
||||
|
||||
<h2 id="podcatcher_support">Podcatcher Support</h2>
|
||||
<p>
|
||||
Please report your experiences with our feeds to admin@hpr</a>.
|
||||
Please report your experiences with our feeds to admin@hpr.
|
||||
</p>
|
||||
|
||||
<h2 id="other_ways_to_help">Other ways to help</h2>
|
||||
<p>
|
||||
You can help by:
|
||||
</p>
|
||||
<ul>
|
||||
<li>Spreading the word</li>
|
||||
<li>Creating a HPR page on wikipedia</li>
|
||||
@@ -181,11 +196,13 @@
|
||||
<li>Improving the documentation on our gittea repo</li>
|
||||
<li><a href="<!--% absolute_url(baseurl,'about.html#patrons') %-->">Support our Patrons</a></li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<hr />
|
||||
</article>
|
||||
<hr class="no-css">
|
||||
<article>
|
||||
<header>
|
||||
<p class="index-link"><a href="/about.html#TOP">↑ Go to top</a></p>
|
||||
<h1 id="download">Download Archive<a href="<!--% absolute_url(baseurl,'about.html#download') %-->">.</a></h1>
|
||||
|
||||
</header>
|
||||
<p>Please be aware that our Archive exceeds <strong>62Gb</strong> <em>(Ogg: 21Gb, Spx: 16Gb, mp3: 25Gb)</em>. We are happy for you to download them, but please make sure that you are not going to incur additional bandwidth charges on your side.</p>
|
||||
|
||||
<p>We will be happy to post you the episodes on physical media anywhere in the world if bandwidth is an issue.</p>
|
||||
@@ -199,19 +216,20 @@
|
||||
You can download the audio of the episodes directly from the command line using the following commands:
|
||||
</p>
|
||||
<ul>
|
||||
<li>ogg:<br />
|
||||
<li>ogg:<br>
|
||||
<span style="font-family:monospace;">curl '<!--% absolute_path(baseurl) %-->eps/hpr[0001-<!--% episode.latest %-->].ogg' -o "hpr#1.ogg"</span></li>
|
||||
<li>spx:<br />
|
||||
<li>spx:<br>
|
||||
<span style="font-family:monospace;">curl '<!--% absolute_path(baseurl) %-->eps/hpr[0001-<!--% episode.latest %-->].spx' -o "hpr#1.spx"</span></li>
|
||||
<li>mp3:<br />
|
||||
<li>mp3:<br>
|
||||
<span style="font-family:monospace;">curl '<!--% absolute_path(baseurl) %-->eps/hpr[0001-<!--% episode.latest %-->].mp3' -o "hpr#1.mp3"</span></li>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<hr />
|
||||
|
||||
</article>
|
||||
<hr class="no-css">
|
||||
<article>
|
||||
<header>
|
||||
<p class="index-link"><a href="/about.html#TOP">↑ Go to top</a></p>
|
||||
<h1 id="so_you_want_to_record_a_podcast">So you want to record a podcast<a href="<!--% absolute_url(baseurl,'about.html#so_you_want_to_record_a_podcast') %-->">.</a></h1>
|
||||
|
||||
</header>
|
||||
<p>Well you've come to the right place. Our goal here at HPR is to make it as easy as possible for you to get a podcast released. We take care of the hard bits so you don't need to. Recording your first show is always a daunting prospect but <a href="<!--% absolute_url(baseurl) %-->correspondents/index.html">hundreds of people</a> like yourself have done it and so can you.
|
||||
</p>
|
||||
|
||||
@@ -268,7 +286,7 @@
|
||||
<h2 id="upload_your_show">4. Upload your show<a href="<!--% absolute_url(baseurl,'about.html#upload_your_show') %-->">.</a></h2>
|
||||
<p>
|
||||
Once you have your audio ready you can post your show by going to the <a href="<!--% hub_baseurl %-->calendar.php">Calendar</a>
|
||||
page or press the <strong><a href="<!--% hub_baseurl %-->calendar.php">⇧Upload⇧</strong></a> button.
|
||||
page or press the <a href="<!--% hub_baseurl %-->calendar.php"><strong>⇧Upload⇧</strong></a> button.
|
||||
</p>
|
||||
<p>
|
||||
After you have selected a date you will be redirected to the <a href="<!--% hub_baseurl %-->request.php">request page</a>,
|
||||
@@ -285,7 +303,7 @@
|
||||
<h2 id="questions">Questions ?<a href="<!--% absolute_url(baseurl,'about.html#questions') %-->">.</a></h2>
|
||||
<p>
|
||||
Got any questions not covered here, then just email <strong>"admin" at "HPR"</strong>,
|
||||
and we'll get in touch with you with all you need to know about getting your show published.<br />
|
||||
and we'll get in touch with you with all you need to know about getting your show published.<br>
|
||||
You can chat with other podcasters using IRC in the <strong>#oggcastplanet</strong> channel on the
|
||||
<a href="https://web.libera.chat/gamja/?channels=oggcastplanet">libera.chat</a> network.
|
||||
Follow us on <a href="https://infosec.exchange/@hpr">Mastodon</a> (use the tag <strong>#hpr</strong>)
|
||||
@@ -309,7 +327,7 @@
|
||||
That's not to say we won't help you with ways to improve the audio if you wish, or narrate your script if you can't
|
||||
or won't record it yourself.
|
||||
Drop into the IRC channel <a href="https://web.libera.chat/gamja/?channels=oggcastplanet">#oggcastplanet</a> where there are
|
||||
people who will help.<br />
|
||||
people who will help.
|
||||
</p>
|
||||
|
||||
<h2 id="motto">Our Mottos</h2>
|
||||
@@ -322,16 +340,18 @@
|
||||
<a href="https://web.libera.chat/gamja/?channels=oggcastplanet">#oggcastplanet</a> channel on libera.chat
|
||||
and chat with a live person 24/7.
|
||||
</p>
|
||||
|
||||
<hr />
|
||||
|
||||
</article>
|
||||
<hr class="no-css">
|
||||
<article>
|
||||
<header>
|
||||
<p class="index-link"><a href="/about.html#TOP">↑ Go to top</a></p>
|
||||
<h1 id="requested_topics">Requested topics<a href="<!--% absolute_url(baseurl,'about.html#requested_topics') %-->">.</a></h1>
|
||||
|
||||
</header>
|
||||
<p>This is a list of topics that have been requested by the community.
|
||||
Feel free to add it to the list by emailing admin at hpr or by tweeting us on <a href="https://twitter.com/hpr">@HPR</a>.</p>
|
||||
<ul>
|
||||
<li>How did you get into podcasting/linux/geekdom?</li>
|
||||
<li>What podcasts you listen to and can recommend</li>
|
||||
<li>Whata podcasts you listen to and can recommend</li>
|
||||
<li>What's in your bag? Tell us what tools/gear/stuff you keep close at hand.</li>
|
||||
<li>What got you into Linux?</li>
|
||||
<li>Your favorite Android applications.</li>
|
||||
@@ -344,7 +364,7 @@
|
||||
<li>Installing a VPN to your home network</li>
|
||||
<li>Init and System.d</li>
|
||||
<li>Episodes for the LPI, or the Networking series.</li>
|
||||
<li>Beginning Audio Series for HPR and OSMP Release
|
||||
<li>Beginning Audio Series for HPR and OSMP Release</li>
|
||||
<li>Hackintosh computers - what are they, why would you want one.</li>
|
||||
<li>Grub 2.0 introduction and customization.</li>
|
||||
<li>FM Transmitter hack to listen into internet streams</li>
|
||||
@@ -394,10 +414,13 @@
|
||||
<li>#IPFS (and don't leave out IPNS!). I'd really like to get a better understanding of practical use of this.</li>
|
||||
<li>Any experiences integrating Dell/Wyse thin- and zero- clients into linux networks.</li>
|
||||
</ul>
|
||||
|
||||
<hr />
|
||||
|
||||
</article>
|
||||
<hr class="no-css">
|
||||
<article>
|
||||
<header>
|
||||
<p class="index-link"><a href="/about.html#TOP">↑ Go to top</a></p>
|
||||
<h1 id="agreement">Stuff you need to know<a href="<!--% absolute_url(baseurl,'about.html#agreement') %-->">.</a></h1>
|
||||
</header>
|
||||
<p>
|
||||
This is some important information that you will need to know before uploading to HPR.
|
||||
</p>
|
||||
@@ -407,7 +430,7 @@
|
||||
<p>
|
||||
Once you upload a show, you will no longer be allowed to create or edit pages relating to
|
||||
<a href="https://en.wikipedia.org/wiki/Hacker_Public_Radio">Hacker Public Radio</a> in
|
||||
<a href="https://en.wikipedia.org/wiki/Wikipedia:FAQ/Organizations">Wikipedia</a>.<br />
|
||||
<a href="https://en.wikipedia.org/wiki/Wikipedia:FAQ/Organizations">Wikipedia</a>.<br>
|
||||
See our <a href="<!--% absolute_url(baseurl,'about.html#faq_wikipedia') %-->">FAQ about
|
||||
the HPR Wikipedia page</a> for more information.
|
||||
</p>
|
||||
@@ -482,7 +505,7 @@
|
||||
we have a policy that we don't listen to the shows before they are aired.
|
||||
This is a long standing tradition arising from the fact that HPR is a community of peers
|
||||
who believe that any host has as much right to submit shows as any other.
|
||||
<br />
|
||||
<br>
|
||||
We <strong>do</strong> transcode the audio into different formats.
|
||||
</p>
|
||||
<p>
|
||||
@@ -493,8 +516,6 @@
|
||||
describes the agreed approach to this topic.
|
||||
</p>
|
||||
|
||||
</p>
|
||||
|
||||
<h2 id="explicit_content">Your show will be signaled as containing explicit content
|
||||
<a href="<!--% absolute_url(baseurl,'about.html#explicit') %-->">.</a></h2>
|
||||
<p>
|
||||
@@ -545,13 +566,13 @@
|
||||
</p>
|
||||
<p>
|
||||
The following are standing reservations:
|
||||
</p>
|
||||
<ul>
|
||||
<li>Anniversary episodes.</li>
|
||||
<li>HPR Community News on the first Monday of the month.</li>
|
||||
<li>The first day of the fourth month.</li>
|
||||
<li>The days following new year.</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<h2 id="utf8">We use UTF-8 end to end<a href="<!--% absolute_url(baseurl,'about.html#utf8') %-->">.</a></h2>
|
||||
<blockquote>See the video "<a href="https://www.youtube.com/watch?v=MijmeoH9LT4">Characters, Symbols and the Unicode Miracle -
|
||||
@@ -563,13 +584,13 @@
|
||||
When you includes output from the command line in the show notes, posting screen-shots of console or terminal output
|
||||
makes it impossible for screen readers to access the text.
|
||||
Always try to include the raw output ( eg: embedded in <pre> tags)
|
||||
<br />
|
||||
<br>
|
||||
Include descriptive language in any link texts.
|
||||
<br />
|
||||
<br>
|
||||
Avoid structures like: <em>"For accessibility information click
|
||||
<a href="<!--% absolute_url(baseurl,'about.html#accessibility') %-->">here</a>"</em><br />
|
||||
<a href="<!--% absolute_url(baseurl,'about.html#accessibility') %-->">here</a>"</em><br>
|
||||
Rather use: <em>"For more information click our
|
||||
<a href="<!--% absolute_url(baseurl,'about.html#accessibility') %-->">accessibility page</a>"</em><br />
|
||||
<a href="<!--% absolute_url(baseurl,'about.html#accessibility') %-->">accessibility page</a>"</em>
|
||||
</p>
|
||||
|
||||
<h2 id="international">Your show will be heard by an International Audience
|
||||
@@ -600,8 +621,6 @@
|
||||
These shows contain a message alerting listeners to the fact that we had free slots that were not filled.
|
||||
</p>
|
||||
|
||||
<hr />
|
||||
|
||||
<h1 id="scheduling_guidelines">Scheduling Guidelines</h1>
|
||||
<ol>
|
||||
<li>You must have your audio recording ready to upload <strong>before</strong> you pick a slot.</li>
|
||||
@@ -612,10 +631,13 @@
|
||||
<li>If you are uploading a series of shows then post them one every two weeks.</li>
|
||||
<li>If you have a non urgent show that is timeless, then add it to the <a href="<!--% absolute_url(baseurl,'about.html#reserve_queue') %-->">Reserve Queue</a>.</li>
|
||||
</ol>
|
||||
|
||||
<hr />
|
||||
|
||||
</article>
|
||||
<hr class="no-css">
|
||||
<article>
|
||||
<header>
|
||||
<p class="index-link"><a href="/about.html#TOP">↑ Go to top</a></p>
|
||||
<h1 id="recording_a_podcast">Recording a Podcast</h1>
|
||||
</header>
|
||||
<p>
|
||||
On this page you will find information on how to record a podcast. Our golden rule is <strong>Any audio is better than no audio.</strong>
|
||||
so keep that in mind. Don't forget to <strong>introduce yourself</strong> in your show.
|
||||
@@ -658,11 +680,13 @@
|
||||
import the file you recorded earlier and edit it as you wish.
|
||||
</p>
|
||||
<p>
|
||||
<img width="600" src="images/contribute-audacity-record.png" alt="Audacity Can Record" title="Audacity Screenshot of Recording" >
|
||||
<img srcset="images/contribute-audacity-record-sm.png 460w, images/contribute-audacity-record.png 640w"
|
||||
sizes="(max-width: 460px) 95vw, 640px"
|
||||
src="images/contribute-audacity-record.png" alt="Audacity Can Record" title="Audacity Screenshot of Recording" >
|
||||
</p>
|
||||
<blockquote>Audacity is a free, easy-to-use and multilingual audio editor and recorder for
|
||||
Windows, Mac OS X, GNU/Linux and other operating systems.</blockquote>
|
||||
<iframe width="640" height="390" src="//www.youtube.com/embed/ss8CyTwBOPY" style="border: none"></iframe>
|
||||
<iframe id="youtube" src="//www.youtube.com/embed/ss8CyTwBOPY"></iframe>
|
||||
<p>
|
||||
When you have finished editing your podcast you can export it.
|
||||
</p>
|
||||
@@ -674,7 +698,9 @@
|
||||
<li>Set <em>Bit depth</em> to <strong>24</strong>.</li>
|
||||
</ol>
|
||||
<p>
|
||||
<img width="600" src="images/contribute-audacity-export.png" alt="Audacity Export Settings" title="Audacity Screenshot of an Export" >
|
||||
<img srcset="images/contribute-audacity-export-sm.png 460w, images/contribute-audacity-export.png 640w"
|
||||
sizes="(max-width: 460px) 95vw, 640px"
|
||||
src="images/contribute-audacity-export.png" alt="Audacity Export Settings" title="Audacity Screenshot of an Export" >
|
||||
</p>
|
||||
|
||||
<h2 id="phone_interviews">Recording Interviews with the Phone<a href="<!--% absolute_url(baseurl,'about.html#phone_interviews') %-->">.</a></h2>
|
||||
@@ -689,17 +715,19 @@
|
||||
<h2 id="round_table">Recording round table discussions<a href="<!--% absolute_url(baseurl,'about.html#round_table') %-->">.</a></h2>
|
||||
<p>
|
||||
If you would like to record with multiple participants then you can use <a href="https://www.mumble.com/">Mumble</a>.
|
||||
Connect to <strong>chatter.skyehaven.net</strong> Port: <strong>64738 </strong>.<br />
|
||||
Connect to <strong>chatter.skyehaven.net</strong> Port: <strong>64738 </strong>.<br>
|
||||
Walk through the audio wizard and then pop into the <strong>Hacker Public Radio</strong> room.
|
||||
Once you are ready press the <strong>recording</strong> button, select <em>multichannel</em> and then <em>start</em>.
|
||||
That will record multiple tracks, one for each participant which you can edit and then submit.
|
||||
<br />
|
||||
<br>
|
||||
Kwisher made a <a href="<!--% absolute_url(baseurl) %-->mumble-howto">Mumble tutorial</a>
|
||||
which you might find useful and <a href="<!--% absolute_url(baseurl) %-->correspondents/0228.html">Delwin</a>
|
||||
has produced a number of short shows on how to configure the audio quality.
|
||||
</p>
|
||||
<p>
|
||||
<img width="600" src="images/contribute-mumble-record.png" alt="Audacity Can Record" title="Audacity Screenshot of Recording" >
|
||||
<img srcset="images/contribute-mumble-record-sm.png 460w, images/contribute-mumble-record.png 640w"
|
||||
sizes="(max-width: 460px) 95vw, 640px"
|
||||
src="images/contribute-mumble-record.png" alt="Audacity Can Record" title="Audacity Screenshot of Recording" >
|
||||
</p>
|
||||
|
||||
<h2 id="background_music">Avoid Bedding/background music<a href="<!--% absolute_url(baseurl,'about.html#background_music') %-->">.</a></h2>
|
||||
@@ -722,12 +750,13 @@
|
||||
<p>
|
||||
There is no need to add any information to the file as that will be inserted based on the information you fill in when you upload the show.
|
||||
</p>
|
||||
|
||||
|
||||
<hr />
|
||||
|
||||
</article>
|
||||
<hr class="no-css">
|
||||
<article>
|
||||
<header>
|
||||
<p class="index-link"><a href="/about.html#TOP">↑ Go to top</a></p>
|
||||
<h1 id="promote_hpr">Please promote HPR<a href="<!--% absolute_url(baseurl,'about.html#promote_hpr') %-->') %-->">.</a></h1>
|
||||
|
||||
</header>
|
||||
<p>Feel free to use the promotional material to spread the word in your podcasts, or have them played on to other shows.</p>
|
||||
<h2>General HPR promotion</h2>
|
||||
<ul>
|
||||
@@ -740,15 +769,16 @@
|
||||
</ul>
|
||||
|
||||
<h2>New Year Promo</h2>
|
||||
<p>
|
||||
<ul>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->promos/hpr-nye-promo.ogg">HPR New Years Promo</a></li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<hr />
|
||||
|
||||
</article>
|
||||
<hr class="no-css">
|
||||
<article>
|
||||
<header>
|
||||
<p class="index-link"><a href="/about.html#TOP">↑ Go to top</a></p>
|
||||
<h1 id="requesting_slot">Picking a slot for your show</h1>
|
||||
</header>
|
||||
<p>
|
||||
Any host can select any free slot a up to year in advance, by recording their show and uploading it to the desired slot.
|
||||
In exceptional circumstances it may be necessary to reserve a slot while not having the audio available,
|
||||
@@ -780,7 +810,7 @@
|
||||
</p>
|
||||
<p><strong>Note:</strong> This email address will be published on the HPR website and will be given out in the feeds,
|
||||
so please use a <strong>public email</strong> address for this purpose.
|
||||
Where we publish it we pad it with dot nospam at-sign nospam dot. <br />
|
||||
Where we publish it we pad it with dot nospam at-sign nospam dot. <br>
|
||||
i.e. <em>hpr@example.com</em> becomes <em>hpr.nospam@nospam.example.com</em>.
|
||||
If you do not want to have your email exposed, please contact the admin@hpr team to arrange a alias.
|
||||
</p>
|
||||
@@ -791,10 +821,13 @@
|
||||
The upload form works on the assumption you will be posting one show at a time, from the same IP address.
|
||||
Once you have pressed submit you will not be able to edit any of the information.
|
||||
</p>
|
||||
|
||||
<hr />
|
||||
|
||||
</article>
|
||||
<hr class="no-css">
|
||||
<article>
|
||||
<header>
|
||||
<p class="index-link"><a href="/about.html#TOP">↑ Go to top</a></p>
|
||||
<h1 id="adding_an_episode">Adding an Episode</h1>
|
||||
</header>
|
||||
<p>
|
||||
The unique link sent by email will allow you to manage both the episode and information about yourself that is displayed on HPR.
|
||||
The following information will be requested:
|
||||
@@ -802,27 +835,27 @@
|
||||
<h2 id="personal_information">Personal Information</h2>
|
||||
<p>
|
||||
Remember <em>All information will be displayed publicly</em>. The only exception is that your email address will be sent
|
||||
in the feed with some anti-spam additions.<br />
|
||||
in the feed with some anti-spam additions.<br>
|
||||
For example <em>hpr@example.com</em> will become <em>hpr.nospam@nospam.example.com</em>
|
||||
</p>
|
||||
<ul>
|
||||
<li id="email"><strong>email:</strong> <em>already populated</em><br />
|
||||
See notes <a href="<!--% absolute_url(baseurl,'about.html#requesting_slot') %-->">above</a><br />
|
||||
<li id="email"><strong>email:</strong> <em>already populated</em><br>
|
||||
See notes <a href="<!--% absolute_url(baseurl,'about.html#requesting_slot') %-->">above</a><br>
|
||||
</li>
|
||||
<li id="image"><strong>image:</strong> <em>Optional</em><br />
|
||||
<li id="image"><strong>image:</strong> <em>Optional</em><br>
|
||||
If you have associated a <a href="https://en.gravatar.com/">Gravatar</a> image with an email address,
|
||||
then it will be displayed here.
|
||||
Otherwise you can upload a 80x80 image .</li>
|
||||
<li id="Name_Handle"><strong>Name/Handle:</strong> <em>Mandatory</em><br />
|
||||
<li id="Name_Handle"><strong>Name/Handle:</strong> <em>Mandatory</em><br>
|
||||
It should be the name you wish to be known as on HPR. It can be your real name, an Internet handle or both.</li>
|
||||
<li id="Default_license"><strong>Your Default license:</strong> <em>Mandatory</em><br />
|
||||
<li id="Default_license"><strong>Your Default license:</strong> <em>Mandatory</em><br>
|
||||
This field tells us what your work is normally licensed under. All our shows are now released under a
|
||||
<a href="https://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike 4.0
|
||||
International (CC BY-SA 4.0)</a> license, which means that while you continue to retain the copyright
|
||||
to your show you are allowing us (and everyone else) to use it provided we give you attribution and
|
||||
that we release it under the same license. Click the <a href="https://creativecommons.org/licenses/by-sa/4.0/">link</a>
|
||||
for more information.</li>
|
||||
<li id="Profile"><strong>Profile:</strong> <em>Optional</em><br />
|
||||
<li id="Profile"><strong>Profile:</strong> <em>Optional</em><br>
|
||||
Enter some text about yourself with links to your blog or other online presence.</li>
|
||||
</ul>
|
||||
<p>
|
||||
@@ -830,45 +863,45 @@
|
||||
</p>
|
||||
<h2 id="episode_information">Episode Information</h2>
|
||||
<ul>
|
||||
<li id="Title"><strong>Title:</strong> <em>Mandatory</em><br />
|
||||
<li id="Title"><strong>Title:</strong> <em>Mandatory</em><br>
|
||||
This will be a short descriptive title and will be used everywhere to identify your show. Any valid UTF-8 character is acceptable, but keep the length short and clear.</li>
|
||||
<li id="Short_Summary"><strong>Summary:</strong> <em>Mandatory</em><br />
|
||||
<li id="Short_Summary"><strong>Summary:</strong> <em>Mandatory</em><br>
|
||||
This is a short 100 character summary of what your show is about.
|
||||
Please fill this out as it is used once the show has gone off the main page, on the mobile site,
|
||||
on printed brochures, on text to speech announcements, on twitter, <a href="https://infosec.exchange/@hpr">Mastodon</a> etc.</li>
|
||||
<li id="Theme"><strong>Theme:</strong> <em>Automatic</em><br />
|
||||
<li id="Theme"><strong>Theme:</strong> <em>Automatic</em><br>
|
||||
The Intro, and the Outro will be added automatically. Please do not add it.
|
||||
</li>
|
||||
<li id="Explicit"><strong>Explicit:</strong> <em>Mandatory</em><br />
|
||||
<li id="Explicit"><strong>Explicit:</strong> <em>Mandatory</em><br>
|
||||
See <a href="https://web.archive.org/web/20150326185817/http://www.apple.com/uk/itunes/podcasts/specs.html">iTunes</a>
|
||||
for more information.</li>
|
||||
<li id="License"><strong>License:</strong> <em>Mandatory</em><br />
|
||||
<li id="License"><strong>License:</strong> <em>Mandatory</em><br>
|
||||
All our shows are now released under a
|
||||
<a href="https://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)</a>
|
||||
license, which means that while you continue to retain the copyright to your show you are allowing us (and everyone else)
|
||||
to use it provided we give you attribution and that we release it under the same license.
|
||||
Click the <a href="https://creativecommons.org/licenses/by-sa/4.0/">link</a> for more information.</li>
|
||||
<li id="show_notes"><strong>show notes:</strong> <em>Mandatory</em><br />
|
||||
<li id="show_notes"><strong>show notes:</strong> <em>Mandatory</em><br>
|
||||
It is important to provide good show notes because:
|
||||
<ul>
|
||||
<li><strong>They provide the listeners with more information on the topic.</strong><br />
|
||||
<li><strong>They provide the listeners with more information on the topic.</strong><br>
|
||||
You have taken the time to record a show on a topic, so many people will want to find out more on the subject,
|
||||
therefore you should include links to give more information. It is not enough to just give it in the show itself
|
||||
as people may be listening while away from the Internet, and they may have forgotten or misheard your links.
|
||||
</li>
|
||||
<li><strong>They ensure your show gets posted on time.</strong><br />
|
||||
<li><strong>They ensure your show gets posted on time.</strong><br>
|
||||
If you do not supply show notes then your show notes will need to be edited manually by an HPR volunteer and
|
||||
this will most likely result in delays. During that time other shows will be processed and may get posted
|
||||
before your show.
|
||||
It is always better if you send us show notes yourself as you know best what information you are trying to convey.</li>
|
||||
<li><strong>They encourage people to download your show.</strong><br />
|
||||
<li><strong>They encourage people to download your show.</strong><br>
|
||||
We produce a lot of shows and many people download based on the text in the show notes.
|
||||
If the show notes are not descriptive then it is less likely that
|
||||
it will get as many downloads as other shows with good show notes.</li>
|
||||
<li><strong>They allow your show to be indexed by search engines.</strong><br />
|
||||
<li><strong>They allow your show to be indexed by search engines.</strong><br>
|
||||
Search engines cannot determine the content of your show from the audio alone.
|
||||
The only way for your show to be indexed is for you to describe in the associated text what you say in the audio.</li>
|
||||
<li><strong>They make your show accessible to the deaf and hard of hearing.</strong><br />
|
||||
<li><strong>They make your show accessible to the deaf and hard of hearing.</strong><br>
|
||||
Your audio is completely inaccessible to those who have hearing problems,
|
||||
so the only way for your show to be of help to them is if you distill the essence of the show into the show notes.
|
||||
If you are using a script to prepare your show then include that.</li>
|
||||
@@ -883,33 +916,33 @@
|
||||
Please add them to an full_shownotes.html file which you can expect to be served from
|
||||
<!--% absolute_url(baseurl) %-->eps/hpr9999/full_shownotes.html</li>
|
||||
</ul>
|
||||
|
||||
<li id="series"><strong>Series:</strong> <em>Optional</em><br />
|
||||
Select the <a href="<!--% absolute_url(baseurl) %-->series/index.html">series</a> if any that your show is a part of.
|
||||
</li>
|
||||
<li id="tags"><strong>Tags:</strong> <em>Optional</em><br />
|
||||
</ul>
|
||||
</li>
|
||||
<li id="series"><strong>Series:</strong> <em>Optional</em><br>
|
||||
Select the <a href="<!--% absolute_url(baseurl) %-->series/index.html">series</a> if any that your show is a part of.</li>
|
||||
<li id="tags"><strong>Tags:</strong> <em>Optional</em><br>
|
||||
Add a list of comma separated tags. Pick the most important words from the shownotes.
|
||||
These are used to <a href="<!--% absolute_url(baseurl) %-->tags.html">find shows via the tags page</a>.
|
||||
</li>
|
||||
<li id="upload_method"><strong>Upload Method:</strong> <em>Optional</em><br />
|
||||
You have the choice of the following options:<br />
|
||||
These are used to <a href="<!--% absolute_url(baseurl) %-->tags.html">find shows via the tags page</a>.</li>
|
||||
<li id="upload_method"><strong>Upload Method:</strong> <em>Optional</em><br>
|
||||
You have the choice of the following options:<br>
|
||||
<ul>
|
||||
<li id="browser"><strong>Upload now via this browser</strong><br />
|
||||
<li id="browser"><strong>Upload now via this browser</strong><br>
|
||||
You can upload single or multiple files using this method.
|
||||
Chrome will display the percentage uploaded but to see this in Firefox you will need to install a
|
||||
<a href="https://addons.mozilla.org/en-US/firefox/addon/uploadprogress/">plugin</a>, or just wait.
|
||||
</li>
|
||||
<li id="url"><strong>Provide a url for us to get it from</strong><br />
|
||||
<li id="url"><strong>Provide a url for us to get it from</strong><br>
|
||||
Using this option may cause delays as a HPR volunteer will need to troubleshoot any issues that may occur,
|
||||
and this can result in your show not been posted on time.
|
||||
This must be publicly accessable using a curl or wget command.
|
||||
Please avoid services that require login or downloading via a browser.
|
||||
</li>
|
||||
<li id="upload_later"><strong>Other</strong><br />
|
||||
<li id="upload_later"><strong>Other</strong><br>
|
||||
The postal information will be sent to you after submission.
|
||||
</li>
|
||||
</ul>
|
||||
<br />
|
||||
<br>
|
||||
If you want to submit an additional file with your show, then put them in a zip, or tgz file.
|
||||
This should expand to a directory with a index.html file that refers to the other files.
|
||||
This will be hosted in the eps directory under a new directory with the episode number.
|
||||
@@ -920,7 +953,7 @@
|
||||
...
|
||||
</pre>
|
||||
Ensure that all links are full urls, as relative urls will not work in RSS feeds.
|
||||
Adding additional files will delay processing as they need to be verified manually.
|
||||
Adding additional files will delay processing as they need to be verified manually.</li>
|
||||
</li>
|
||||
</ul>
|
||||
<p>
|
||||
@@ -928,11 +961,13 @@
|
||||
Keep an eye on the <a href="<!--% hub_baseurl %-->calendar.php">calendar</a> for when it is posted.
|
||||
Your show information is used to process the media files, on the website, in the RSS feeds, and on social media sites.
|
||||
</p>
|
||||
|
||||
<hr />
|
||||
|
||||
</article>
|
||||
<hr class="no-css">
|
||||
<article>
|
||||
<header>
|
||||
<p class="index-link"><a href="/about.html#TOP">↑ Go to top</a></p>
|
||||
<h1 id="workflow">Workflow</h1>
|
||||
|
||||
</header>
|
||||
<ol>
|
||||
<li>REQUEST_UNVERIFIED - </li>
|
||||
<li>REQUEST_EMAIL_SENT - email sent</li>
|
||||
@@ -944,10 +979,13 @@
|
||||
<li>UPLOADED_TO_IA - on the IA and visible</li>
|
||||
<li>UPLOADED_TO_RSYNC_NET - archived on rsync.net</li>
|
||||
</ol>
|
||||
|
||||
<hr />
|
||||
|
||||
</article>
|
||||
<hr class="no-css">
|
||||
<article>
|
||||
<header>
|
||||
<p class="index-link"><a href="/about.html#TOP">↑ Go to top</a></p>
|
||||
<h1 id="faq">Frequently Asked Questions</h1>
|
||||
</header>
|
||||
<h2 data-number="0.1" id="what-is-hacker-public-radio"><span class="header-section-number">0.1</span> What is Hacker Public Radio?</h2>
|
||||
<ul>
|
||||
<li><p>Hacker Public Radio (HPR) is an Internet Radio show (podcast) that releases shows (episodes)
|
||||
@@ -1182,3 +1220,5 @@
|
||||
However keep in mind that we will be very suspicious of any submission done this way and will be checking it in detail,
|
||||
so expect delays in processing.
|
||||
</p>
|
||||
</article>
|
||||
</div>
|
||||
|
||||
@@ -13,13 +13,13 @@
|
||||
<!--% hpr_show_count = hpr_show_count +1; %-->
|
||||
<!--% END %-->
|
||||
|
||||
<!--% query_twat_show_count = DBI.prepare('
|
||||
<!--% query_twt_show_count = DBI.prepare('
|
||||
SELECT id
|
||||
FROM twat_eps AS eps
|
||||
WHERE eps.hostid = ?
|
||||
')
|
||||
%-->
|
||||
<!--% query_twat_shows = DBI.prepare('
|
||||
<!--% query_twt_shows = DBI.prepare('
|
||||
SELECT
|
||||
eps.id,
|
||||
CASE eps.explicit WHEN 1 THEN \'Explicit\' ELSE \'Clean\' END AS explicit ,
|
||||
@@ -37,11 +37,11 @@
|
||||
ORDER BY eps.id DESC
|
||||
')
|
||||
%-->
|
||||
<!--% twat_shows_to_count = query_twat_show_count.execute(id); %-->
|
||||
<!--% twat_shows = query_twat_shows.execute(id); %-->
|
||||
<!--% twat_show_count = 0 %-->
|
||||
<!--% FOREACH show IN twat_shows_to_count %-->
|
||||
<!--% twat_show_count = twat_show_count +1; %-->
|
||||
<!--% twt_shows_to_count = query_twt_show_count.execute(id); %-->
|
||||
<!--% twt_shows = query_twt_shows.execute(id); %-->
|
||||
<!--% twt_show_count = 0 %-->
|
||||
<!--% FOREACH show IN twt_shows_to_count %-->
|
||||
<!--% twt_show_count = twt_show_count +1; %-->
|
||||
<!--% END %-->
|
||||
|
||||
<!--% hosts = DBI.tie('hosts', 'hostid') %-->
|
||||
@@ -57,7 +57,7 @@
|
||||
<div id="host_meta">
|
||||
<p><label>email:</label> <u><!--% this_host.email %--></u></p>
|
||||
<div><label>profile:</label> <!--% this_host.profile %--></div>
|
||||
<p><label>episodes:</label> <strong><!--% hpr_show_count + twat_show_count %--></strong></p>
|
||||
<p><label>episodes:</label> <strong><!--% hpr_show_count + twt_show_count %--></strong></p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="lane stack">
|
||||
@@ -67,12 +67,12 @@
|
||||
<p class="listen-in"><!--% display_listen_in(hpr_show.id) %--></p>
|
||||
</article>
|
||||
<!--% END %-->
|
||||
<!--% FOREACH twat_show IN twat_shows; %-->
|
||||
<!--% FOREACH twt_show IN twt_shows; %-->
|
||||
<article>
|
||||
|
||||
<!--% twat_show_summary(twat_show, 'hide_host') %-->
|
||||
<p class="listen-in"><!--% display_listen_in(twat_show.id,"twat") %--></p>
|
||||
<!--% twt_show_summary(twt_show, 'hide_host') %-->
|
||||
<p class="listen-in"><!--% display_listen_in(twt_show.id,"twt") %--></p>
|
||||
</article>
|
||||
<!--% END %-->
|
||||
</div>
|
||||
<p><a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">Become a Correspondent</a></p>
|
||||
<p><a href="<!--% absolute_url(baseurl) %-->../about.html#so_you_want_to_record_a_podcast">Become a Correspondent</a></p>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
||||
<!--% PROCESS 'shared-avatar.tpl.html' %-->
|
||||
<h2 class="title">Correspondents</h2>
|
||||
<p>For more information on how to become a Correspondent see our <a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">contribute</a></center> page. To add a logo here, either email one to admin at hpr or setup your email on <a href="https://en.gravatar.com/">Gravatar</a>. To protect your browsing privacy we gather the images every hour and serve them directly from HPR.<p />
|
||||
<p>For more information on how to become a Correspondent see our <a href="<!--% absolute_url(baseurl) %-->../about.html#so_you_want_to_record_a_podcast">contribute</a></center> page. To add a logo here, either email one to admin at hpr or setup your email on <a href="https://en.gravatar.com/">Gravatar</a>. To protect your browsing privacy we gather the images every hour and serve them directly from HPR.<p />
|
||||
<!--% USE DBI(constants.driver) %-->
|
||||
<!--% host_cnt = 0 %-->
|
||||
<table id="hosts" class="hosts lane stack">
|
||||
@@ -23,13 +23,12 @@
|
||||
<tr class="lane">
|
||||
<td><!--% get_avatar(host.hostid, host.host, host_cnt > 8) %--></td>
|
||||
|
||||
<td><strong><!--% host.host %--></strong><br>
|
||||
|
||||
Host ID: <a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pad_left(host.hostid) %-->.html"><!--% host.hostid %--></a></td>
|
||||
<td><a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pad_left(host.hostid) %-->.html"><strong><!--% host.host %--></strong><br>
|
||||
Host ID: <!--% host.hostid %--></a></td>
|
||||
<td><!--% host.license %--></td>
|
||||
<td><!--% host.date %--></td>
|
||||
</tr><!--% host_cnt = host_cnt + 1 %-->
|
||||
<!--% END %-->
|
||||
</tbody>
|
||||
</table>
|
||||
<p><a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">Become a Correspondent</a></p>
|
||||
<p><a href="<!--% absolute_url(baseurl) %-->../about.html#so_you_want_to_record_a_podcast">Become a Correspondent</a></p>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<p>
|
||||
All this information is available to the public. Scrape if you wish but if we can format the data for you then we're happy to help.
|
||||
</p>
|
||||
<div class="lane">
|
||||
<div class="lane stack">
|
||||
<!--% USE DBI(constants.driver) %-->
|
||||
<!--% FOREACH episodes IN DBI.query(query_episodes)
|
||||
%-->
|
||||
@@ -19,8 +19,8 @@
|
||||
<!-- Creative Commons License -->
|
||||
<a rel="license" href="https://creativecommons.org/licenses/by-nc-sa/2.5/"><img alt="Creative Commons License" border="0" src="https://creativecommons.org/images/public/somerights20.png" width="88" height="31" /></a><br>The following work is licensed under a <a rel="license" href="https://creativecommons.org/licenses/by-nc-sa/2.5/">Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License</a>.</p>
|
||||
<p>Today With a Techie Radio was brought to you by <a href="https://en.wikipedia.org/wiki/Infonomicon">The Infonomicon Computer Club</a></p>
|
||||
<div class="lane">
|
||||
<!--% FOREACH twat_episode IN DBI.query('
|
||||
<div class="lane stack">
|
||||
<!--% FOREACH twt_episode IN DBI.query('
|
||||
SELECT
|
||||
eps.id,
|
||||
eps.explicit,
|
||||
@@ -36,8 +36,9 @@
|
||||
')
|
||||
%-->
|
||||
<article>
|
||||
<!--% twat_show_summary(twat_episode) %-->
|
||||
<!--% twt_show_summary(twt_episode) %-->
|
||||
</article>
|
||||
<!--% END %-->
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
@@ -36,7 +36,6 @@
|
||||
|
||||
<!--% delta = date.calc.N_Delta_YMD(2005,9,19, date.format(date.now, '%Y'),date.format(date.now, '%m'),date.format(date.now, '%d')) %-->
|
||||
<section id="welcome">
|
||||
<header><h2>Welcome</h2></header>
|
||||
<p>Hacker Public Radio is a technology focused podcast that releases shows every weekday Monday to Friday. Our shows are produced by listeners like you and can be on any topic that is of interest to hackers, makers, hobbyists, etc. We are a welcoming community that offers positive feedback and encourages respectful debate.</p>
|
||||
<div id="call_for_shows">
|
||||
<!--% display_call_for_shows() %-->
|
||||
@@ -50,7 +49,7 @@
|
||||
<p>Record</p>
|
||||
</a>
|
||||
<br class="no-css">
|
||||
<a class="lane-button" href="https://hub.hackerpublicradio.org/calendar.php">
|
||||
<a class="lane-button" href="<!--% hub_baseurl %-->calendar.php">
|
||||
<img src="<!--% absolute_path(baseurl) %-->images/icons/calendar-2-line.svg" alt="" height="110">
|
||||
<p>Schedule</p>
|
||||
</a>
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
<div>
|
||||
<hr class="no-css">
|
||||
<h1>Other Download Options</h1>
|
||||
<div class="lane syndication">
|
||||
<div class="lane stack">
|
||||
<article>
|
||||
<header>
|
||||
<h2>Site Replication Sources</h2>
|
||||
|
||||
@@ -55,8 +55,8 @@
|
||||
<p><!--% show_avatar(episode.hostid, episode.host) %-->
|
||||
Hosted by <a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pad_left(episode.hostid) %-->.html"><!--% episode.host %--></a> on <span><!--% day_and_date(episode.date) %--></span> is flagged as <span><!--% display_explicit(episode.explicit) %--></span> and is released under a <span><!--% episode.license %--> license</span>. <br>
|
||||
<!--% display_tags(episode.tags) %--> <br>
|
||||
<!--% listen_now(episode, "twat", baseurl, media_baseurl) %-->
|
||||
<!--% display_listen_in(episode.id, "twat") %-->
|
||||
<!--% listen_now(episode, "twt", baseurl, media_baseurl) %-->
|
||||
<!--% display_listen_in(episode.id, "twt") %-->
|
||||
</p>
|
||||
<h3><!--% show_series(episode.series, episode.seriesid, "Part of the series") %--></h3>
|
||||
<p><em><!--% episode.series_description %--></em></p>
|
||||
@@ -12,7 +12,7 @@
|
||||
<meta http-equiv="last-modified" content="<!--% format_feed_date(date.now) %-->">
|
||||
<meta name="keywords" content="Technology, Tech News, Education, Training" />
|
||||
<meta name="description" content="Hacker Public Radio is a podcast that releases shows every weekday Monday through Friday. Our shows are produced by the community (you) and can be on any topic that is of interest to hackers and hobbyists." />
|
||||
<link rel="shortcut icon" href="<!--% absolute_url(baseurl) %-->hpr.ico" >
|
||||
<link rel="shortcut icon" href="/hpr.ico" >
|
||||
<link rel="alternate" type="application/rss+xml" title="Hacker Public Radio Opus RSS" href="<!--% absolute_path(baseurl) %-->hpr_opus_rss.php" />
|
||||
<link rel="alternate" type="application/rss+xml" title="Hacker Public Radio Ogg Vorbis RSS" href="<!--% absolute_path(baseurl) %-->hpr_ogg_rss.php" />
|
||||
<link rel="alternate" type="application/rss+xml" title="Hacker Public Radio MP3 RSS" href="<!--% absolute_path(baseurl) %-->hpr_mp3_rss.php" />
|
||||
|
||||
@@ -50,11 +50,11 @@
|
||||
%-->
|
||||
|
||||
<item>
|
||||
<title><!--% item.comment_author_name | html_strip | xml_entity %--> says: <!--% item.comment_title | html_strip | xml_entity %--></title>
|
||||
<author>feedback.nospam@nospam.hackerpublicradio.org (<!--% item.comment_author_name | html_strip | xml_entity %-->)</author>
|
||||
<title><!--% item.comment_author_name | html_strip %--> says: <!--% item.comment_title | html_strip %--></title>
|
||||
<author>feedback.nospam@nospam.hackerpublicradio.org (<!--% item.comment_author_name | html_strip %-->)</author>
|
||||
<link><!--% absolute_url(http_baseurl) %-->eps/hpr<!--% zero_pad_left(item.eps_id) %-->/index.html#comments</link>
|
||||
<description><![CDATA[<strong>
|
||||
RE: hpr<!--% zero_pad_left(item.eps_id) %-->::<!--% item.episode_date %--> <em><!--% item.episode_title | html_strip | xml_entity %--></em> by <a href="<!--% absolute_url(http_baseurl) %-->correspondents/<!--% zero_pad_left(item.host_id) %-->.html"><!--% item.host %--></a></strong><!--% rss_show_series(item.series_name, item.series_id) | html_strip | xml_entity %--><br />
|
||||
RE: hpr<!--% zero_pad_left(item.eps_id) %-->::<!--% item.episode_date %--> <em><!--% item.episode_title | html_strip %--></em> by <a href="<!--% absolute_url(http_baseurl) %-->correspondents/<!--% zero_pad_left(item.host_id) %-->.html"><!--% item.host %--></a></strong><!--% rss_show_series(item.series_name, item.series_id) | html_strip %--><br />
|
||||
<!--% display_episode_duration(item.episode_duration) %--><!--% display_listen_in(item.eps_id) %--><br /><!--% item.comment_text FILTER html_line_break %-->
|
||||
]]></description>
|
||||
<pubDate><!--% format_feed_date(item.comment_timestamp) %--></pubDate>
|
||||
|
||||
@@ -56,7 +56,7 @@ or
|
||||
<p class="summary"><!--% show.summary %--></p>
|
||||
<!--% END %-->
|
||||
|
||||
<!--% MACRO twat_show_summary(show, hide_host) BLOCK %-->
|
||||
<!--% MACRO twt_show_summary(show, hide_host) BLOCK %-->
|
||||
|
||||
<h3 class="title"><a href="<!--% absolute_path(baseurl) %-->eps/twt<!--% zero_pad_left(show.id) %-->/index.html">Today with a Techie Ep.<!--% show.id %--> :: <!--% show.title %--></a> <!--% IF hide_host == "" %-->
|
||||
hosted by <a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pad_left(show.hostid) %-->.html"><!--% show.host %--></a>
|
||||
|
||||
@@ -93,7 +93,7 @@
|
||||
<!--% END %-->
|
||||
|
||||
<!--% MACRO media_path(episode_id, episode_type, media_type, baseurl, media_baseurl) BLOCK %-->
|
||||
<!--% IF episode_type == "twat" %-->
|
||||
<!--% IF episode_type == "twt" %-->
|
||||
<!--% episode_type = "twt" %-->
|
||||
<!--% padding = 3 %-->
|
||||
<!--% media_folder = "eps/"; padding = 3 %-->
|
||||
@@ -117,16 +117,20 @@
|
||||
<!--% IF folder %-->
|
||||
<!--% folder = folder %--><!--% ELSE %--><!--% folder = "hpr" %-->
|
||||
<!--% END %-->
|
||||
<small><a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.earliest) %-->/index.html" rel="first"><< First</a>,
|
||||
<!--% arrow_first = "arrow-first.svg" %-->
|
||||
<!--% arrow_prev = "arrow-previous.svg" %-->
|
||||
<!--% arrow_next = "arrow-next.svg" %-->
|
||||
<!--% arrow_last = "arrow-last.svg" %-->
|
||||
<nav class="episodes" aria-description="Navigation to other episodes"><span><a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.earliest) %-->/index.html" rel="first" aria-label="first episode"><!--% INSERT $arrow_first %--><span class="no-css"><< </span>First</a></span>,
|
||||
<!--% IF links.previous %-->
|
||||
<a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.previous) %-->/index.html" rel="previous">< Previous</a>,
|
||||
<span><a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.previous) %-->/index.html" rel="previous" aria-label="previous episode"><!--% INSERT $arrow_prev %--><span class="no-css">< </span>Previous</a></span>,
|
||||
<!--% ELSE %-->
|
||||
<span><</span> Previous,
|
||||
<span class="no-link"><!--% INSERT $arrow_prev %--><span class="no-css">< </span>Previous</span>,
|
||||
<!--% END %-->
|
||||
<!--% IF links.next %-->
|
||||
<a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.next) %-->/index.html" rel="next">Next ></a>,
|
||||
<span><a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.next) %-->/index.html" rel="next" aria-label="next episode">Next<span class="no-css"> ></span><!--% INSERT $arrow_next %--></a></span>,
|
||||
<!--% ELSE %-->
|
||||
Next <span>></span>
|
||||
<span class="no-link">Next<span class="no-css"> ></span><!--% INSERT $arrow_next %--></span>,
|
||||
<!--% END %-->
|
||||
<a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.latest) %-->/index.html" rel="last">Latest >></a></small>
|
||||
<span><a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.latest) %-->/index.html" rel="last" aria-label="latest episode">Latest<span class="no-css"> >></span><!--% INSERT $arrow_last %--></a></span></nav>
|
||||
<!--% END %-->
|
||||
|
||||