diff --git a/.gitignore b/.gitignore index 2cf8635e12..3b1b851f64 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,8 @@ releases _site/ .jekyll-cache/ +vendor +.bundle/ # Planet _cache/ diff --git a/404.md b/404.md new file mode 100644 index 0000000000..b202ae21d7 --- /dev/null +++ b/404.md @@ -0,0 +1,13 @@ +--- +layout: default +permalink: /404.html +--- + +![404]({{site.baseurl}}/assets/404.png){:.full} + +# Page Not Found + +If you feel this is not normal, create an issue on the GitHub. + +[Go Back](){: .inline-button} [File an Issue]({{site.issuesurl}}) +{: .dialog-buttons} diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000000..cb77b6dbde --- /dev/null +++ b/Gemfile @@ -0,0 +1,33 @@ +source "https://rubygems.org" + +# Hello! This is where you manage which Jekyll version is used to run. +# When you want to use a different version, change it below, save the +# file and run `bundle install`. Run Jekyll with `bundle exec`, like so: +# +# bundle exec jekyll serve +# +# This will help ensure the proper Jekyll version is running. +# Happy Jekylling! +gem "jekyll", "~> 4.3.3" + +# This is the default theme for new Jekyll sites. You may change this to anything you like. + +# If you want to use GitHub Pages, remove the "gem "jekyll"" above and +# uncomment the line below. To upgrade, run `bundle update github-pages`. +# gem "github-pages", group: :jekyll_plugins + +# If you have any plugins, put them here! +group :jekyll_plugins do +# gem 'jekyll-feed', '~> 0.13' +# gem 'jekyll-sitemap', '~> 1.4' +# gem 'jekyll-compose', '~> 0.12.0' +# gem 'jekyll-postfiles', '~> 3.1' +end + +# Windows does not include zoneinfo files, so bundle the tzinfo-data gem +# gem "tzinfo-data", platforms: [:mingw, :mswin, :x64_mingw, :jruby] + +# Performance-booster for watching directories on Windows +# gem "wdm", "~> 0.1.0" if Gem.win_platform? + +gem "webrick", "~> 1.8" diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000000..843c2b4177 --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,168 @@ +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + bigdecimal (3.1.8) + colorator (1.1.0) + concurrent-ruby (1.3.4) + em-websocket (0.5.3) + eventmachine (>= 0.12.9) + http_parser.rb (~> 0) + eventmachine (1.2.7) + ffi (1.17.0) + ffi (1.17.0-aarch64-linux-gnu) + ffi (1.17.0-aarch64-linux-musl) + ffi (1.17.0-arm-linux-gnu) + ffi (1.17.0-arm-linux-musl) + ffi (1.17.0-arm64-darwin) + ffi (1.17.0-x86-linux-gnu) + ffi (1.17.0-x86-linux-musl) + ffi (1.17.0-x86_64-darwin) + ffi (1.17.0-x86_64-linux-gnu) + ffi (1.17.0-x86_64-linux-musl) + forwardable-extended (2.6.0) + google-protobuf (4.28.3) + bigdecimal + rake (>= 13) + google-protobuf (4.28.3-aarch64-linux) + bigdecimal + rake (>= 13) + google-protobuf (4.28.3-arm64-darwin) + bigdecimal + rake (>= 13) + google-protobuf (4.28.3-x86-linux) + bigdecimal + rake (>= 13) + google-protobuf (4.28.3-x86_64-darwin) + bigdecimal + rake (>= 13) + google-protobuf (4.28.3-x86_64-linux) + bigdecimal + rake (>= 13) + http_parser.rb (0.8.0) + i18n (1.14.6) + concurrent-ruby (~> 1.0) + jekyll (4.3.4) + addressable (~> 2.4) + colorator (~> 1.0) + em-websocket (~> 0.5) + i18n (~> 1.0) + jekyll-sass-converter (>= 2.0, < 4.0) + jekyll-watch (~> 2.0) + kramdown (~> 2.3, >= 2.3.1) + kramdown-parser-gfm (~> 1.0) + liquid (~> 4.0) + mercenary (>= 0.3.6, < 0.5) + pathutil (~> 0.9) + rouge (>= 3.0, < 5.0) + safe_yaml (~> 1.0) + terminal-table (>= 1.8, < 4.0) + webrick (~> 1.7) + jekyll-sass-converter (3.0.0) + sass-embedded (~> 1.54) + jekyll-watch (2.2.1) + listen (~> 3.0) + kramdown (2.4.0) + rexml + kramdown-parser-gfm (1.1.0) + kramdown (~> 2.0) + liquid (4.0.4) + listen (3.9.0) + rb-fsevent (~> 0.10, >= 0.10.3) + rb-inotify (~> 0.9, >= 0.9.10) + mercenary (0.4.0) + pathutil (0.16.2) + forwardable-extended (~> 2.6) + public_suffix (6.0.1) + rake (13.2.1) + rb-fsevent (0.11.2) + rb-inotify (0.11.1) + ffi (~> 1.0) + rexml (3.3.9) + rouge (4.5.1) + safe_yaml (1.0.5) + sass-embedded (1.80.7) + google-protobuf (~> 4.28) + rake (>= 13) + sass-embedded (1.80.7-aarch64-linux-android) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-aarch64-linux-gnu) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-aarch64-linux-musl) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-aarch64-mingw-ucrt) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-arm-linux-androideabi) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-arm-linux-gnueabihf) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-arm-linux-musleabihf) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-arm64-darwin) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-riscv64-linux-android) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-riscv64-linux-gnu) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-riscv64-linux-musl) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-x86-cygwin) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-x86-linux-android) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-x86-linux-gnu) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-x86-linux-musl) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-x86-mingw-ucrt) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-x86_64-cygwin) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-x86_64-darwin) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-x86_64-linux-android) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-x86_64-linux-gnu) + google-protobuf (~> 4.28) + sass-embedded (1.80.7-x86_64-linux-musl) + google-protobuf (~> 4.28) + terminal-table (3.0.2) + unicode-display_width (>= 1.1.1, < 3) + unicode-display_width (2.6.0) + webrick (1.9.0) + +PLATFORMS + aarch64-linux + aarch64-linux-android + aarch64-linux-gnu + aarch64-linux-musl + aarch64-mingw-ucrt + arm-linux-androideabi + arm-linux-gnu + arm-linux-gnueabihf + arm-linux-musl + arm-linux-musleabihf + arm64-darwin + riscv64-linux-android + riscv64-linux-gnu + riscv64-linux-musl + ruby + x86-cygwin + x86-linux + x86-linux-android + x86-linux-gnu + x86-linux-musl + x86-mingw-ucrt + x86_64-cygwin + x86_64-darwin + x86_64-linux-android + x86_64-linux-gnu + x86_64-linux-musl + +DEPENDENCIES + jekyll (~> 4.3.3) + webrick (~> 1.8) + +BUNDLED WITH + 2.5.22 diff --git a/README.md b/README.md index b86501c975..0a9e1ebd9d 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,15 @@ -webkitgtk.org -============= +
+ -The WebKitGTK website. + # WebKitGTK.org -New version of the WebKitGTK website done in [Jekyll](http://jekyllrb.com/) -using the style of GNOME project pages. + The WebKitGTK website. +
-In order to test it you need to install Jeykyll, you can do it with the -following commands in a Debian based system: +This site is made in [Jekyll](http://jekyllrb.com/) using the style of GNOME project pages. - sudo apt-get install jekyll +In order to test it, see [Setup](https://jimmac.github.io/os-component-website/#setup). -And then you can run the command `jekyll build` that will generate the site under -`_site` folder. BTW, you can use `jekyll serve` to test it locally. - -In order to write a piece of news in the new website you just have to create a -new file inside `_posts` folder using +In order to write a piece of news you have to create a +new file inside the `_posts` folder using [Markdown](http://daringfireball.net/projects/markdown/) syntax. diff --git a/_config.yml b/_config.yml index 21af3b41f8..43cde68968 100644 --- a/_config.yml +++ b/_config.yml @@ -1,6 +1,13 @@ -name: The WebKitGTK Project -url: https://webkitgtk.org -exclude: ['README.md', 'generate-site', 'releases', 'webkit-release', 'planet', 'generate-planet', 'generate-security-advisory', 'reference', 'cvedata'] +title: WebKitGTK +url: "https://webkitgtk.org" +sourceurl: "https://github.com/WebKitGTK/webkitgtk.org" +description: "A WebKit port for the GTK library." +issuesurl: "https://github.com/WebKitGTK/webkitgtk.org/issues" +permalink: /:title/ +primary-color: "#3584e4" +exclude: ["README.md", "scripts", "releases", "planet", "reference", "cvedata"] + +markdown: kramdown stable-release-version: 2.46.3 unstable-release-version: 2.47.1 diff --git a/_includes/footer.html b/_includes/footer.html new file mode 100644 index 0000000000..47bc2a8f60 --- /dev/null +++ b/_includes/footer.html @@ -0,0 +1,8 @@ + diff --git a/_includes/head.html b/_includes/head.html new file mode 100644 index 0000000000..c4bee1bcd1 --- /dev/null +++ b/_includes/head.html @@ -0,0 +1,29 @@ + + + + + + + {% if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %} + + + + + + + + + + + + + + + + + + + + + + diff --git a/_includes/header.html b/_includes/header.html new file mode 100644 index 0000000000..7276b62d9e --- /dev/null +++ b/_includes/header.html @@ -0,0 +1,3 @@ +
+

{{ site.title }}

+
diff --git a/_layouts/default.html b/_layouts/default.html index 2f635b31a3..2c844dd9ec 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -1,152 +1,12 @@ - + + {% include head.html %} - - - {% if page.title %} {{ page.title }} - {% endif %}{{ site.name }} - + + {% include header.html %} - - +
{{ content }}
- - - -
-
- -
- -
-
- WebKitGTK -
-
- -
-
- {{ content }} -
- - - -
-
- - - - + {% include footer.html %} + diff --git a/_layouts/post.html b/_layouts/post.html index 01c38b1970..04c75b4f86 100644 --- a/_layouts/post.html +++ b/_layouts/post.html @@ -1,11 +1,18 @@ ---- -layout: default ---- + + + {% include head.html %} -
+ + {% include header.html %} -

{{ page.title }}

+
+

{{ page.title }}

+ {{ content }} + Go Back +
-{{ content }} - -
+ {% include footer.html %} + + diff --git a/assets/404.png b/assets/404.png new file mode 100644 index 0000000000..3766512ca6 Binary files /dev/null and b/assets/404.png differ diff --git a/assets/apple-touch-icon.png b/assets/apple-touch-icon.png new file mode 100644 index 0000000000..80b0cdb8e9 Binary files /dev/null and b/assets/apple-touch-icon.png differ diff --git a/assets/apple-touch-icon.svg b/assets/apple-touch-icon.svg new file mode 100644 index 0000000000..9044c8a92d --- /dev/null +++ b/assets/apple-touch-icon.svg @@ -0,0 +1,84 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + diff --git a/assets/card.png b/assets/card.png new file mode 100644 index 0000000000..ce04c8980e Binary files /dev/null and b/assets/card.png differ diff --git a/assets/card.svg b/assets/card.svg new file mode 100644 index 0000000000..b5943e7c9c --- /dev/null +++ b/assets/card.svg @@ -0,0 +1,249 @@ + +image/svg+xmlcompass2WebKitGTK diff --git a/assets/extlink-d.svg b/assets/extlink-d.svg new file mode 100644 index 0000000000..6911436ec6 --- /dev/null +++ b/assets/extlink-d.svg @@ -0,0 +1,42 @@ + + + + + + + + diff --git a/assets/extlink-l.svg b/assets/extlink-l.svg new file mode 100644 index 0000000000..cd5972940d --- /dev/null +++ b/assets/extlink-l.svg @@ -0,0 +1,42 @@ + + + + + + + + diff --git a/assets/favicon.png b/assets/favicon.png new file mode 100644 index 0000000000..f5544aa025 Binary files /dev/null and b/assets/favicon.png differ diff --git a/assets/favicon.svg b/assets/favicon.svg new file mode 100644 index 0000000000..d2a3bf9eb2 --- /dev/null +++ b/assets/favicon.svg @@ -0,0 +1,65 @@ + + + + + + + + + + + + diff --git a/assets/page-logo-i.svg b/assets/page-logo-i.svg new file mode 100644 index 0000000000..79c549c8ad --- /dev/null +++ b/assets/page-logo-i.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/page-logo.svg b/assets/page-logo.svg new file mode 100644 index 0000000000..cf5ac23d9d --- /dev/null +++ b/assets/page-logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/splash-dark.png b/assets/splash-dark.png new file mode 100644 index 0000000000..6dcccc13cc Binary files /dev/null and b/assets/splash-dark.png differ diff --git a/assets/splash.png b/assets/splash.png new file mode 100644 index 0000000000..5c2845017d Binary files /dev/null and b/assets/splash.png differ diff --git a/assets/webkit-windows.webp b/assets/webkit-windows.webp new file mode 100644 index 0000000000..5e476751f8 Binary files /dev/null and b/assets/webkit-windows.webp differ diff --git a/images/wkgtk-2.46-motionmark-cairo-skia.svg b/assets/wkgtk-2.46-motionmark-cairo-skia.svg similarity index 100% rename from images/wkgtk-2.46-motionmark-cairo-skia.svg rename to assets/wkgtk-2.46-motionmark-cairo-skia.svg diff --git a/fonts/InterVariable.woff2 b/fonts/InterVariable.woff2 new file mode 100644 index 0000000000..22a12b04e1 Binary files /dev/null and b/fonts/InterVariable.woff2 differ diff --git a/index.md b/index.md index 3ed1e9f5f4..9313e8c1fe 100644 --- a/index.md +++ b/index.md @@ -2,9 +2,10 @@ layout: default --- -![Screenshot of Epiphany using WebKitGTK](/images/screenshot.png) - -## Web content rendering ## + + + + WebKitGTK is a full-featured port of the WebKit rendering engine, suitable for projects requiring any kind of web integration, from hybrid @@ -14,33 +15,37 @@ computers to embedded systems like phones, tablets, and televisions. WebKitGTK is made by a lively community of developers and designers, who hope to bring the web platform to everyone. It's the official web engine of the GNOME platform and is used in -browsers such as [Epiphany](http://projects.gnome.org/epiphany/), -[Eolie](https://wiki.gnome.org/Apps/Eolie), and -[Tangram](https://github.com/sonnyp/Tangram). - -## Web process separation ## +browsers such as [Epiphany](https://apps.gnome.org/Epiphany), +[Navigator](https://gitlab.gnome.org/World/navigator), and +[Tangram](https://apps.gnome.org/Tangram). -Since adding support for WebKit2, it's possible to build applications that -use the web platform with increased security and responsiveness. The web -is a jungle, but web pages cannot crash the main application or freeze the -UI. +webkit browsers -## Accessibility ## +## Accessibility Access is one of our core values. For this reason, we are committed to making the web work for individuals of all ages and abilities, from all walks of life, all over the world. -## Support for audio and video ## +## Contact + +- [Matrix](https://matrix.to/#/%23webkitgtk:matrix.org) +- [Mastodon](https://floss.social/@WebKitGTK) + +## Contribute + +- [Get Started](https://www.webkit.org/getting-started) +- [File a Bug](https://bugs.webkit.org/enter_bug.cgi?assigned_to=webkit-unassigned%40lists.webkit.org&attachurl=&blocked=&bug_file_loc=http://&bug_severity=Normal&bug_status=NEW&comment=&component=WebKit%20Gtk&contenttypeentry=&contenttypemethod=autodetect&contenttypeselection=text/plain&data=&dependson=&description=&flag_type-1=X&flag_type-3=X&flag_type-4=X&form_name=enter_bug&keywords=GTK&maketemplate=Remember%20values%20as%20bookmarkable%20template&op_sys=Linux&priority=P3&product=WebKit&rep_platform=PC&short_desc=%5BGTK%5D%20) + +## API Reference -The web isn't just for reading words. We drive development of the GStreamer -WebKit backend and support full integration of video into page -content and the HTML canvas element. Currently we are working to finish -support for WebAudio and WebRTC. +- [WebKit](https://webkitgtk.org/reference/webkitgtk/stable) +- [WebKitWebProcessExtension](https://webkitgtk.org/reference/webkitgtk-web-process-extension/stable) +- [JavascriptCore](https://webkitgtk.org/reference/jsc-glib/stable) -## 3D CSS and accelerated rendering ## +## More Info -WebKitGTK can use the GPU to enable smooth page compositing and -scrolling, as well as 3D CSS transforms and 3D HTML canvas (otherwise -known as WebGL). This makes WebKitGTK suitable for a whole range -of games and visualization applications. +- [News](news) +- [Security Advisories](security) +- [Releases](releases) & [Verifying Releases](verifying) +- [Planet](https://planet.webkitgtk.org) diff --git a/aperez.key b/keys/aperez.key similarity index 100% rename from aperez.key rename to keys/aperez.key diff --git a/carlosgc.key b/keys/carlosgc.key similarity index 100% rename from carlosgc.key rename to keys/carlosgc.key diff --git a/news.html b/news.html deleted file mode 100644 index 9cde3adef9..0000000000 --- a/news.html +++ /dev/null @@ -1,9 +0,0 @@ ---- -layout: post -title: All the news ---- - -{% for post in site.posts %} -

{{ post.title }}

-

{{ post.date | date_to_long_string | upcase }}

-{% endfor %} diff --git a/news.md b/news.md new file mode 100644 index 0000000000..bf4c2a64c0 --- /dev/null +++ b/news.md @@ -0,0 +1,12 @@ +--- +layout: default +title: News +--- + + diff --git a/planet/css b/planet/css deleted file mode 120000 index 75e99a5c2f..0000000000 --- a/planet/css +++ /dev/null @@ -1 +0,0 @@ -../css/ \ No newline at end of file diff --git a/css/reset.css b/planet/css/reset.css similarity index 100% rename from css/reset.css rename to planet/css/reset.css diff --git a/css/text.css b/planet/css/text.css similarity index 100% rename from css/text.css rename to planet/css/text.css diff --git a/planet/fonts b/planet/fonts deleted file mode 120000 index 049a28070e..0000000000 --- a/planet/fonts +++ /dev/null @@ -1 +0,0 @@ -../fonts/ \ No newline at end of file diff --git a/fonts/OpenSans-Bold.ttf b/planet/fonts/OpenSans-Bold.ttf similarity index 100% rename from fonts/OpenSans-Bold.ttf rename to planet/fonts/OpenSans-Bold.ttf diff --git a/fonts/OpenSans-BoldItalic.ttf b/planet/fonts/OpenSans-BoldItalic.ttf similarity index 100% rename from fonts/OpenSans-BoldItalic.ttf rename to planet/fonts/OpenSans-BoldItalic.ttf diff --git a/fonts/OpenSans-ExtraBold.ttf b/planet/fonts/OpenSans-ExtraBold.ttf similarity index 100% rename from fonts/OpenSans-ExtraBold.ttf rename to planet/fonts/OpenSans-ExtraBold.ttf diff --git a/fonts/OpenSans-ExtraBoldItalic.ttf b/planet/fonts/OpenSans-ExtraBoldItalic.ttf similarity index 100% rename from fonts/OpenSans-ExtraBoldItalic.ttf rename to planet/fonts/OpenSans-ExtraBoldItalic.ttf diff --git a/fonts/OpenSans-Italic.ttf b/planet/fonts/OpenSans-Italic.ttf similarity index 100% rename from fonts/OpenSans-Italic.ttf rename to planet/fonts/OpenSans-Italic.ttf diff --git a/fonts/OpenSans-Light.ttf b/planet/fonts/OpenSans-Light.ttf similarity index 100% rename from fonts/OpenSans-Light.ttf rename to planet/fonts/OpenSans-Light.ttf diff --git a/fonts/OpenSans-LightItalic.ttf b/planet/fonts/OpenSans-LightItalic.ttf similarity index 100% rename from fonts/OpenSans-LightItalic.ttf rename to planet/fonts/OpenSans-LightItalic.ttf diff --git a/fonts/OpenSans-Regular.ttf b/planet/fonts/OpenSans-Regular.ttf similarity index 100% rename from fonts/OpenSans-Regular.ttf rename to planet/fonts/OpenSans-Regular.ttf diff --git a/fonts/OpenSans-SemiBold.ttf b/planet/fonts/OpenSans-SemiBold.ttf similarity index 100% rename from fonts/OpenSans-SemiBold.ttf rename to planet/fonts/OpenSans-SemiBold.ttf diff --git a/fonts/OpenSans-SemiboldItalic.ttf b/planet/fonts/OpenSans-SemiboldItalic.ttf similarity index 100% rename from fonts/OpenSans-SemiboldItalic.ttf rename to planet/fonts/OpenSans-SemiboldItalic.ttf diff --git a/planet/images b/planet/images deleted file mode 120000 index e4c5bd02a1..0000000000 --- a/planet/images +++ /dev/null @@ -1 +0,0 @@ -../images/ \ No newline at end of file diff --git a/images/background.png b/planet/images/background.png similarity index 100% rename from images/background.png rename to planet/images/background.png diff --git a/images/bolt.png b/planet/images/bolt.png similarity index 100% rename from images/bolt.png rename to planet/images/bolt.png diff --git a/images/contact.png b/planet/images/contact.png similarity index 100% rename from images/contact.png rename to planet/images/contact.png diff --git a/images/documentation.png b/planet/images/documentation.png similarity index 100% rename from images/documentation.png rename to planet/images/documentation.png diff --git a/images/download.png b/planet/images/download.png similarity index 100% rename from images/download.png rename to planet/images/download.png diff --git a/images/focus-bg.png b/planet/images/focus-bg.png similarity index 100% rename from images/focus-bg.png rename to planet/images/focus-bg.png diff --git a/images/gnome-favicon.png b/planet/images/gnome-favicon.png similarity index 100% rename from images/gnome-favicon.png rename to planet/images/gnome-favicon.png diff --git a/images/group.png b/planet/images/group.png similarity index 100% rename from images/group.png rename to planet/images/group.png diff --git a/images/heart.png b/planet/images/heart.png similarity index 100% rename from images/heart.png rename to planet/images/heart.png diff --git a/images/rss.png b/planet/images/rss.png similarity index 100% rename from images/rss.png rename to planet/images/rss.png diff --git a/images/screenshot.png b/planet/images/screenshot.png similarity index 100% rename from images/screenshot.png rename to planet/images/screenshot.png diff --git a/images/shield.png b/planet/images/shield.png similarity index 100% rename from images/shield.png rename to planet/images/shield.png diff --git a/images/top_bar-bg.png b/planet/images/top_bar-bg.png similarity index 100% rename from images/top_bar-bg.png rename to planet/images/top_bar-bg.png diff --git a/images/top_bar-item-bg.png b/planet/images/top_bar-item-bg.png similarity index 100% rename from images/top_bar-item-bg.png rename to planet/images/top_bar-item-bg.png diff --git a/images/webkit-favicon.ico b/planet/images/webkit-favicon.ico similarity index 100% rename from images/webkit-favicon.ico rename to planet/images/webkit-favicon.ico diff --git a/images/wheel.png b/planet/images/wheel.png similarity index 100% rename from images/wheel.png rename to planet/images/wheel.png diff --git a/planet/images/wkgtk-2.46-motionmark-cairo-skia.svg b/planet/images/wkgtk-2.46-motionmark-cairo-skia.svg new file mode 100644 index 0000000000..80d24652a2 --- /dev/null +++ b/planet/images/wkgtk-2.46-motionmark-cairo-skia.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/planet/style.css b/planet/style.css deleted file mode 120000 index 5191bf75c4..0000000000 --- a/planet/style.css +++ /dev/null @@ -1 +0,0 @@ -../style.css \ No newline at end of file diff --git a/planet/style.css b/planet/style.css new file mode 100644 index 0000000000..d9df727ba9 --- /dev/null +++ b/planet/style.css @@ -0,0 +1,404 @@ +@import url("css/reset.css"); +@import url("css/text.css"); + +@font-face { + font-family: 'Open Sans'; + src: local('Open Sans'), + url(fonts/OpenSans-Regular.ttf); +} + +@font-face { + font-family: 'Open Sans Semi Bold'; + src: local('Open Sans Semi Bold'), + url(fonts/OpenSans-SemiBold.ttf); +} + +/* Base information */ +/* ========================================================================== */ + +html { + width: 100%; + height: 100%; + min-height: 100%; + + color: #2e3436; + font-family: 'Open Sans', Arial, sans-serif; + font-size: 14px; +} + +body { + width: 100%; + height: 100%; + min-height: 100%; + +} + +/* This is used to push the footer to the bottom. */ +#main_wrapper { + min-height: 100%; + height: auto !important; + height: 100%; + margin: 0 auto -3.5ex; + + background: #dfefff; + background-image: url('images/background.png'); /* fallback */ + background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 1))), url('images/background.png'), #dfefff; + background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%), url('images/background.png'), #dfefff; + background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%), url('images/background.png'), #dfefff; + background: -ms-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%), url('images/background.png'), #dfefff; + background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%), url('images/background.png'), #dfefff; + background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%), url('images/background.png'), #dfefff; +} + +a { + color: #204a87; +} + +a:hover { + color: #3465a4; +} + +a:visited { + color: #5d396e; +} + +h1 { + margin: 0 0 6px; + font-family: 'Open Sans Semi Bold', Arial, sans-serif; + font-size: 35px; + text-shadow: 0 1px 0 #fff; + line-height: normal; +} + +h2 { + margin: 20px 0 10px; + font-family: 'Open Sans Semi Bold', Arial, sans-serif; + font-size: 25px; + text-shadow: 0 1px 0 #fff; +} + +h3 { + margin: 10px 0 5px; + font-family: 'Open Sans Semi Bold', Arial, sans-serif; + font-size: 20px; + text-shadow: 0 1px 0 #fff; +} + +.left { + float: left; +} + +.right { + float: right; +} + +.maxwidth { + height: 100%; + width: 960px; + margin: 0 auto; +} + +/* Global Domain Bar */ +/* ========================================================================== */ +#global_domain_bar { + background: #8b9bab; + height: 5px; +} + +#title_bar { + background: #383d42; +} + +#title_bar span, +#title_bar span a, +#title_bar span a:hover, +#title_bar span a:visited { + vertical-align: middle; + line-height: 55px; + + color: white; + font-weight: bold; + font-family: 'Open Sans Semi Bold', Arial, sans-serif; + font-size: 30px; + text-shadow: 1px 1px 5px rgba(0, 0, 0, 1); + text-decoration: none; +} + +#global_domain_bar .maxwidth { + position: relative; +} + +#global_domain_bar .tab { + background: #8b9bab; + position: absolute; + right: 0; + float: right; + padding: 3px 8px; + font-size: 12px; + line-height: 16px; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + -moz-box-shadow: 0 4px 2px -2px; + -webkit-box-shadow: 0 4px 2px -2px; + box-shadow: 0 4px 2px -2px; + white-space: nowrap; +} + +#global_domain_bar .tab a.root { + color: white !important; + font-weight: bold; + text-decoration: none; + background: url(images/gnome-favicon.png) 0 0 no-repeat; + padding-left: 18px; + border-right: 1px solid #ccc; + padding-right: 6px; + margin-right: 3px; +} + +#global_domain_bar .tab a.root:last-child { + border-right: 0; + padding-right: 0; + margin-right: 0; +} + +#global_domain_bar .tab a.root:hover { + text-decoration: underline; +} + + +#global_domain_bar .tab.webkit { + margin-right: 120px; +} + +#global_domain_bar .tab.webkit a.root { + background: url(images/webkit-favicon.ico) 0 0 no-repeat +} + +#global_domain_bar .tab.none { + margin-right: 232px; +} + +#global_domain_bar .tab.none a.root { + background: none; + padding-left: 0; +} + +#container { + padding-top: 20px; + color: #555; + width: 960px; + margin: auto; + min-height: 240px; + + padding-bottom: 5ex; + overflow: hidden; +} + +#container .content, +#container .sidebar { + display: inline; + float: left; + margin-left: 0px; + margin-right: 0px; +} + +#container .content { + text-align: justify; + width: 940px; +} + +#container.two_columns .content { + width: 665px; + padding-right: 25px; +} + +#container.two_columns .sidebar { + width: 270px; +} + +.subtle_box { + padding: 20px; + background: rgba(100%, 100%, 100%, 0.4); + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + -moz-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.05); + -webkit-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.05); +} + +.subtle_box:not(:last-child) { + margin-bottom: 50px; +} + +.subtle_box .section:not(:last-child) { + margin-bottom: 30px; +} + +.subtle_box .section > :not(:first-child) { + margin-left: 10px; +} + +.subtle_box .header { + font-family: 'Open Sans Semi Bold', Arial, sans-serif; + font-weight: bold; + font-size: 20px; + margin-bottom: 10px; + white-space: nowrap; + + /* Room for the icon. */ + padding-left: 26px; + height: 26px; +} + +.subtle_box .download { background: url(images/download.png) 0 center no-repeat; } +.subtle_box .documentation { background: url(images/documentation.png) 0 center no-repeat; } +.subtle_box .contact { background: url(images/contact.png) 0 center no-repeat; } +.subtle_box .contribute { background: url(images/heart.png) 0 center no-repeat; } +.subtle_box .news { background: url(images/bolt.png) 0 center no-repeat; } +.subtle_box .security { background: url(images/shield.png) 0 center no-repeat; } +.subtle_box .feeds { background: url(images/group.png) 0 center no-repeat; } +.subtle_box .subscribe { background: url(images/wheel.png) 0 center no-repeat; } +.subtle_box .rss { background: url(images/rss.png) 0 center no-repeat; } + +.subtle_box .subheader { + font-weight: bold; + font-size: 105%; +} + +.subtle_box .header > span { + vertical-align: middle; + margin-left: 5px; +} + +.subtle_box li { + margin-bottom: 0.5ex; + list-style: none; +} + +.subtle_box li p { + margin-left: 2ex; +} + +#footer { + width: 100%; + height: 3.5ex; + + border-top: 1px solid #b1b7ca; + border-bottom: 1px solid #b1b7ca; + background: #d3dee8; + color: #555753; + font-size: 80%; +} + +#footer .maxwidth span { + line-height: 3.5ex; +} + +/* Planet */ +.clear { + clear: both; +} + +.date { + float: right; + font-size: 110%; + font-weight: bold; + margin: 0.4em; + margin: 0px 0px 0px 10px !important; +} + +.author { + font-weight: bold; +} + +h2 a { + text-decoration: none; +} + +.news img { + max-width: 670px; + height: auto; +} + +table { + width: 100%; + margin: 0.5em 0; + background: #ececec; + background: rgba(0,0,0,0.1); + border: 1px solid #bbb; + border-radius: 3px; +} +table > thead { + background: #bbb; +} +table > tbody > tr { + border-top: 1px solid #bbb; +} +table > thead > tr > th, +table > tbody > tr > td { + padding: 0.25rem 0.5rem; +} + +pre { + padding: 0.25em 1em; + border: 1px dotted #aaa; +} + +hr { + margin: 3em auto; + width: 33%; + border: none; + border-top: 2px dotted #aaa; +} + +figure { + margin: 1em 0; + padding: 1em; + text-align: center; +} +figure > img { + display: block; + border: 1px solid #aaa; + border-radius: 5px; + background-color: white; + margin: 0.5em auto; +} +figure > figcaption { + color: #666; + font-size: 90%; + margin: 0.5em 1em 1em 1em; +} + +@supports not (-ms-ime-align: auto) { + /* + * Resets for
/, see: + * https://css-tricks.com/two-issues-styling-the-details-element-and-how-to-solve-them/ + */ + details > summary { + cursor: pointer; + } + details > summary > * { + display: inline; + } +} + +details { + margin: 1em 0; + border: 1px solid #aaa; + background: rgba(100%, 100%, 100%, 0.4); + border-radius: 5px; + box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.05); +} +details > summary, +details > div { + padding: 0.5em 1em; +} +details > div { + border-top: 1px solid #aaa; + background: rgba(100%, 100%, 100%, 0.25); +} +details > div > pre { + white-space: pre-wrap; +} diff --git a/cve.py b/scripts/cve.py similarity index 100% rename from cve.py rename to scripts/cve.py diff --git a/generate-planet b/scripts/generate-planet similarity index 100% rename from generate-planet rename to scripts/generate-planet diff --git a/generate-site b/scripts/generate-site similarity index 100% rename from generate-site rename to scripts/generate-site diff --git a/httpcache.py b/scripts/httpcache.py similarity index 100% rename from httpcache.py rename to scripts/httpcache.py diff --git a/webkit-release b/scripts/webkit-release similarity index 100% rename from webkit-release rename to scripts/webkit-release diff --git a/wsa b/scripts/wsa similarity index 100% rename from wsa rename to scripts/wsa diff --git a/security.html b/security.html deleted file mode 100644 index 25e9c1976a..0000000000 --- a/security.html +++ /dev/null @@ -1,9 +0,0 @@ ---- -layout: post -title: WebKitGTK Security Advisories ---- - -{% for post in site.tags.WSA %} -

{{ post.title }}

-

{{ post.date | date_to_long_string | upcase }}

-{% endfor %} diff --git a/security.md b/security.md new file mode 100644 index 0000000000..dd6aa28791 --- /dev/null +++ b/security.md @@ -0,0 +1,12 @@ +--- +layout: default +title: Security Advisories +--- + + diff --git a/style.css b/style.css index d9df727ba9..cb0fb2d5ee 100644 --- a/style.css +++ b/style.css @@ -1,404 +1,317 @@ -@import url("css/reset.css"); -@import url("css/text.css"); +/* -@font-face { - font-family: 'Open Sans'; - src: local('Open Sans'), - url(fonts/OpenSans-Regular.ttf); -} + WebKitGTK + ==================== -@font-face { - font-family: 'Open Sans Semi Bold'; - src: local('Open Sans Semi Bold'), - url(fonts/OpenSans-SemiBold.ttf); -} + Shamelessly stolen CSS from systemd + https://github.com/systemd/systemd/tree/main/docs -/* Base information */ -/* ========================================================================== */ +*/ -html { - width: 100%; - height: 100%; - min-height: 100%; +/* Fonts */ - color: #2e3436; - font-family: 'Open Sans', Arial, sans-serif; - font-size: 14px; +@font-face { + font-family: InterVariable; + font-style: normal; + font-weight: 100 900; + font-display: swap; + src: url("fonts/InterVariable.woff2") format("woff2"); } -body { - width: 100%; - height: 100%; - min-height: 100%; - +@supports (font-variation-settings: normal) { + :root { + font-family: "InterVariable", sans-serif; + font-optical-sizing: auto; + } } -/* This is used to push the footer to the bottom. */ -#main_wrapper { - min-height: 100%; - height: auto !important; - height: 100%; - margin: 0 auto -3.5ex; - - background: #dfefff; - background-image: url('images/background.png'); /* fallback */ - background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 1))), url('images/background.png'), #dfefff; - background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%), url('images/background.png'), #dfefff; - background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%), url('images/background.png'), #dfefff; - background: -ms-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%), url('images/background.png'), #dfefff; - background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%), url('images/background.png'), #dfefff; - background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%), url('images/background.png'), #dfefff; -} +/* Colors */ -a { - color: #204a87; +:root { + --primary-color: #0461be; + --rounded-corner: 9px; + --fg-color: rgb(0 0 6 / 80%); + --bg-color: #f5f5f6; + --term-bg: #ffffff; } -a:hover { - color: #3465a4; -} +/* General */ -a:visited { - color: #5d396e; +* { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; } -h1 { - margin: 0 0 6px; - font-family: 'Open Sans Semi Bold', Arial, sans-serif; - font-size: 35px; - text-shadow: 0 1px 0 #fff; - line-height: normal; +html, +body { + margin: 0; + padding: 0; + font-size: 16px; + font-family: "InterVariable", sans-serif; + font-weight: 400; + line-height: 1.6; + scroll-behavior: smooth; } -h2 { - margin: 20px 0 10px; - font-family: 'Open Sans Semi Bold', Arial, sans-serif; - font-size: 25px; - text-shadow: 0 1px 0 #fff; +body { + color: var(--fg-color); + background-color: var(--bg-color); + display: grid; + min-height: 100vh; + grid-template-rows: auto minmax(auto, 1fr) auto; /* header, stuff, footer */ } -h3 { - margin: 10px 0 5px; - font-family: 'Open Sans Semi Bold', Arial, sans-serif; - font-size: 20px; - text-shadow: 0 1px 0 #fff; +/* Make tables vertically aligned to the top */ +tbody td { + vertical-align: top; } -.left { - float: left; +b { + font-weight: 600; } -.right { - float: right; +hr { + margin: 3rem auto 4rem; + width: 40%; + opacity: 40%; } -.maxwidth { - height: 100%; - width: 960px; - margin: 0 auto; -} +/* Footer */ -/* Global Domain Bar */ -/* ========================================================================== */ -#global_domain_bar { - background: #8b9bab; - height: 5px; +footer { + padding: 4rem 0; + text-align: center; } -#title_bar { - background: #383d42; +footer a { + display: block; + margin: auto; } -#title_bar span, -#title_bar span a, -#title_bar span a:hover, -#title_bar span a:visited { - vertical-align: middle; - line-height: 55px; +/* Titles */ - color: white; - font-weight: bold; - font-family: 'Open Sans Semi Bold', Arial, sans-serif; - font-size: 30px; - text-shadow: 1px 1px 5px rgba(0, 0, 0, 1); - text-decoration: none; +h1, +h2, +h3, +h4, +h5, +h6 { + margin: 3rem 0 1rem; + font-weight: 600; + line-height: 1.25; + font-variation-settings: "wght" 600; /* needed for webkit */ } -#global_domain_bar .maxwidth { - position: relative; +h1 { + font-size: 1.5rem; + font-weight: 100; } -#global_domain_bar .tab { - background: #8b9bab; - position: absolute; - right: 0; - float: right; - padding: 3px 8px; - font-size: 12px; - line-height: 16px; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; - border-radius: 5px; - -moz-box-shadow: 0 4px 2px -2px; - -webkit-box-shadow: 0 4px 2px -2px; - box-shadow: 0 4px 2px -2px; - white-space: nowrap; +h2 { + font-size: 1.2rem; } -#global_domain_bar .tab a.root { - color: white !important; - font-weight: bold; - text-decoration: none; - background: url(images/gnome-favicon.png) 0 0 no-repeat; - padding-left: 18px; - border-right: 1px solid #ccc; - padding-right: 6px; - margin-right: 3px; -} +/* Links */ -#global_domain_bar .tab a.root:last-child { - border-right: 0; - padding-right: 0; - margin-right: 0; +a { + font-weight: 600; + text-decoration: none; + color: var(--primary-color); + cursor: pointer; + font-variation-settings: "wght" 600; /* needed for webkit */ } -#global_domain_bar .tab a.root:hover { +a:hover { text-decoration: underline; } - -#global_domain_bar .tab.webkit { - margin-right: 120px; -} - -#global_domain_bar .tab.webkit a.root { - background: url(images/webkit-favicon.ico) 0 0 no-repeat -} - -#global_domain_bar .tab.none { - margin-right: 232px; +a[href^="http"]:after { + display: inline-block; + margin-left: 3px; + content: url("assets/extlink-l.svg"); } -#global_domain_bar .tab.none a.root { - background: none; - padding-left: 0; +a[href^="http"]:has(img, svg):after { + content: none; } -#container { - padding-top: 20px; - color: #555; - width: 960px; - margin: auto; - min-height: 240px; +/* Images */ - padding-bottom: 5ex; - overflow: hidden; +img { + display: block; + margin: 2rem auto; + max-width: 100%; } -#container .content, -#container .sidebar { - display: inline; - float: left; - margin-left: 0px; - margin-right: 0px; +img.full, +picture.full img { + width: 100%; } -#container .content { - text-align: justify; - width: 940px; -} +/* Code */ -#container.two_columns .content { - width: 665px; - padding-right: 25px; +.highlighter-rouge { + font-size: 80%; + line-height: normal; + padding: 2px 1rem; + border-radius: var(--rounded-corner); + background-color: var(--term-bg); + max-width: 100vw; + overflow-x: auto; + margin: 1rem 0; } -#container.two_columns .sidebar { - width: 270px; +code.highlighter-rouge { + padding: 2px 6px; + background-color: var(--term-bg); } -.subtle_box { - padding: 20px; - background: rgba(100%, 100%, 100%, 0.4); - -moz-border-radius: 5px; - -webkit-border-radius: 5px; - border-radius: 5px; - -moz-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.05); - -webkit-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.05); - box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.05); +.highlight table td { + padding: 5px; } -.subtle_box:not(:last-child) { - margin-bottom: 50px; +.highlight table pre { + margin: 0; } -.subtle_box .section:not(:last-child) { - margin-bottom: 30px; -} +/* Singletons */ -.subtle_box .section > :not(:first-child) { - margin-left: 10px; +#container { + width: 80%; + margin-left: auto; + margin-right: auto; + max-width: 720px; } -.subtle_box .header { - font-family: 'Open Sans Semi Bold', Arial, sans-serif; - font-weight: bold; - font-size: 20px; - margin-bottom: 10px; - white-space: nowrap; - - /* Room for the icon. */ - padding-left: 26px; +#logo { + display: block; + width: 251px; height: 26px; + background: url("assets/page-logo.svg") no-repeat center; + padding: 5rem 0 3rem; + margin: 0 auto; + position: relative; } -.subtle_box .download { background: url(images/download.png) 0 center no-repeat; } -.subtle_box .documentation { background: url(images/documentation.png) 0 center no-repeat; } -.subtle_box .contact { background: url(images/contact.png) 0 center no-repeat; } -.subtle_box .contribute { background: url(images/heart.png) 0 center no-repeat; } -.subtle_box .news { background: url(images/bolt.png) 0 center no-repeat; } -.subtle_box .security { background: url(images/shield.png) 0 center no-repeat; } -.subtle_box .feeds { background: url(images/group.png) 0 center no-repeat; } -.subtle_box .subscribe { background: url(images/wheel.png) 0 center no-repeat; } -.subtle_box .rss { background: url(images/rss.png) 0 center no-repeat; } - -.subtle_box .subheader { - font-weight: bold; - font-size: 105%; +#logo a { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + color: rgb(0 0 0 / 0%); /* make text transparent */ + cursor: pointer; } -.subtle_box .header > span { - vertical-align: middle; - margin-left: 5px; -} +/* Buttons */ -.subtle_box li { - margin-bottom: 0.5ex; - list-style: none; +.dialog-buttons { + display: flex; + flex-direction: row; + align-items: baseline; + justify-content: space-between; + margin-top: 6rem; } -.subtle_box li p { - margin-left: 2ex; +.inline-button { + display: inline-block; + font-weight: 900; + font-size: 90%; + padding: 0.4rem 1rem; + border-radius: var(--rounded-corner); + background-color: var(--term-bg); + color: var(--fg-color); } -#footer { - width: 100%; - height: 3.5ex; +/* News */ - border-top: 1px solid #b1b7ca; - border-bottom: 1px solid #b1b7ca; - background: #d3dee8; - color: #555753; - font-size: 80%; +ul.news { + display: block; + list-style: none; + margin: 0; + padding: 0; } -#footer .maxwidth span { - line-height: 3.5ex; +ul.news li { + padding: 0 0 1rem 0; + text-align: center; } -/* Planet */ -.clear { - clear: both; +ul.news li > a { + display: flex; + flex-direction: column; + padding: 0.5rem 1rem; + border-radius: var(--rounded-corner); + transition: all 0.35s cubic-bezier(0.17, 0.89, 0.32, 1.28); } -.date { - float: right; - font-size: 110%; - font-weight: bold; - margin: 0.4em; - margin: 0px 0px 0px 10px !important; +ul.news li > a:hover { + background-color: var(--term-bg); + box-shadow: 0 0 0 8px var(--term-bg); } -.author { - font-weight: bold; +ul.news .date { + opacity: 0.4; + font-feature-settings: "tnum"; + -webkit-font-feature-settings: "tnum"; + font-size: 80%; + letter-spacing: 0.1rem; + white-space: nowrap; + text-overflow: ellipsis; } -h2 a { - text-decoration: none; +ul.news .title { + text-transform: capitalize; + flex-grow: 1; } -.news img { - max-width: 670px; - height: auto; -} +/* Media Queries */ -table { - width: 100%; - margin: 0.5em 0; - background: #ececec; - background: rgba(0,0,0,0.1); - border: 1px solid #bbb; - border-radius: 3px; -} -table > thead { - background: #bbb; -} -table > tbody > tr { - border-top: 1px solid #bbb; -} -table > thead > tr > th, -table > tbody > tr > td { - padding: 0.25rem 0.5rem; +@media only screen and (max-device-width: 480px) { + .highlighter-rouge { + max-width: 80vw; + } } -pre { - padding: 0.25em 1em; - border: 1px dotted #aaa; -} +@media screen and (min-width: 650px) { + h1 { + font-size: 1.6rem; + } -hr { - margin: 3em auto; - width: 33%; - border: none; - border-top: 2px dotted #aaa; -} + ul.news li { + padding: 0; + text-align: left; + } -figure { - margin: 1em 0; - padding: 1em; - text-align: center; -} -figure > img { - display: block; - border: 1px solid #aaa; - border-radius: 5px; - background-color: white; - margin: 0.5em auto; -} -figure > figcaption { - color: #666; - font-size: 90%; - margin: 0.5em 1em 1em 1em; + ul.news li > a { + flex-direction: row; + padding: 1rem 3rem; + gap: 1rem; + row-gap: 1rem; + } } -@supports not (-ms-ime-align: auto) { - /* - * Resets for
/, see: - * https://css-tricks.com/two-issues-styling-the-details-element-and-how-to-solve-them/ - */ - details > summary { - cursor: pointer; +@media (prefers-color-scheme: dark) { + :root { + color-scheme: dark; + --primary-color: #81d0ff; + --fg-color: #ffffff; + --bg-color: #222226; + --term-bg: #343437; } - details > summary > * { - display: inline; + + #logo { + background-image: url("assets/page-logo-i.svg"); } -} -details { - margin: 1em 0; - border: 1px solid #aaa; - background: rgba(100%, 100%, 100%, 0.4); - border-radius: 5px; - box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.05); -} -details > summary, -details > div { - padding: 0.5em 1em; -} -details > div { - border-top: 1px solid #aaa; - background: rgba(100%, 100%, 100%, 0.25); -} -details > div > pre { - white-space: pre-wrap; + img.filterimg { + filter: invert() hue-rotate(180deg) opacity(50%); + } + + a[href^="http"]:after { + display: inline-block; + margin-left: 3px; + content: url("assets/extlink-d.svg"); + } } diff --git a/verifying.md b/verifying.md index 07e8d73067..707cb82e60 100644 --- a/verifying.md +++ b/verifying.md @@ -1,9 +1,8 @@ --- -layout: default +layout: post +title: Verifying Releases --- -# Verifying Releases - WebKitGTK release tarballs are cryptographically signed and can be verified using [PGP signatures](#pgp-signatures) (in an `.asc` file) and their [checksums](#checksums) (in a `.sums` file). Everybody is encouraged to verify @@ -18,7 +17,6 @@ Forging a signature is practically impossible without gaining access to the private key used. If that were to happen, the compromised key would be revoked and all files re-signed with new keys. - ### Keys The following PGP keys are currently in use for signing releases: @@ -28,18 +26,17 @@ The following PGP keys are currently in use for signing releases: DeveloperFingerprint - Adrián Pérez de Castro (key) + Adrián Pérez de Castro (key) 5AA3 BC33 4FD7 E336 9E7C 77B2 91C5 59DB E4C9 123B - Carlos García Campos (key) + Carlos García Campos (key) 013A 0127 AC9C 65B3 4FFA 6252 6C10 09B6 9397 5393 - ### Importing keys Once downloaded, keys need to be imported in the PGP keyring, for example with @@ -54,7 +51,6 @@ gpg: imported: 1 gpg: no ultimately trusted keys found ``` - ### Checking The signature file for each release has the same name plus the `.asc` suffix. @@ -75,7 +71,6 @@ gpg: using RSA key 013A0127AC9C65B34FFA62526C1009B693975393 gpg: Good signature from "Carlos Garcia Campos " [full] ``` - ## Checksums Checksums for release tarballs are also published along releases. While