diff --git a/.gitignore b/.gitignore
index 5a68293b8..956b86d9c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,6 +7,7 @@ diff.diff
.*.sw*
.DS_Store
.idea
+.directory
# Bundler config
/.bundle
@@ -21,6 +22,7 @@ public/assets
public/developer
public/developer.html
public/developer2
+public/images
public/index.html
public/package
diff --git a/.gitmodules b/.gitmodules
index 3843fad07..47065d90e 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +1,3 @@
-[submodule "public/themes"]
- path = public/themes
- url = git://github.com/openSUSE/opensuse-themes.git
+[submodule "public/chameleon"]
+ path = public/chameleon
+ url = https://github.com/openSUSE/opensuse-theme-chameleon.git
diff --git a/app/assets/images/default-screenshots/devel-package.png b/app/assets/images/default-screenshots/devel-package.png
new file mode 100644
index 000000000..f103ec620
Binary files /dev/null and b/app/assets/images/default-screenshots/devel-package.png differ
diff --git a/app/assets/images/default-screenshots/devel-package.svg b/app/assets/images/default-screenshots/devel-package.svg
new file mode 100644
index 000000000..d682eb133
--- /dev/null
+++ b/app/assets/images/default-screenshots/devel-package.svg
@@ -0,0 +1,119 @@
+
+
+
+
diff --git a/app/assets/images/default-screenshots/doc-package.png b/app/assets/images/default-screenshots/doc-package.png
new file mode 100644
index 000000000..eed1c7333
Binary files /dev/null and b/app/assets/images/default-screenshots/doc-package.png differ
diff --git a/app/assets/images/default-screenshots/doc-package.svg b/app/assets/images/default-screenshots/doc-package.svg
new file mode 100644
index 000000000..6764ea686
--- /dev/null
+++ b/app/assets/images/default-screenshots/doc-package.svg
@@ -0,0 +1,163 @@
+
+
+
+
diff --git a/app/assets/images/default-screenshots/file_settings.png b/app/assets/images/default-screenshots/file_settings.png
deleted file mode 100644
index 932e483e4..000000000
Binary files a/app/assets/images/default-screenshots/file_settings.png and /dev/null differ
diff --git a/app/assets/images/default-screenshots/files.png b/app/assets/images/default-screenshots/files.png
deleted file mode 100644
index e93cb3c24..000000000
Binary files a/app/assets/images/default-screenshots/files.png and /dev/null differ
diff --git a/app/assets/images/default-screenshots/kernel-package.png b/app/assets/images/default-screenshots/kernel-package.png
new file mode 100644
index 000000000..9e020bfed
Binary files /dev/null and b/app/assets/images/default-screenshots/kernel-package.png differ
diff --git a/app/assets/images/default-screenshots/kernel-package.svg b/app/assets/images/default-screenshots/kernel-package.svg
new file mode 100644
index 000000000..4453f5e2a
--- /dev/null
+++ b/app/assets/images/default-screenshots/kernel-package.svg
@@ -0,0 +1,76 @@
+
+
+
+
diff --git a/app/assets/images/default-screenshots/lang-package.png b/app/assets/images/default-screenshots/lang-package.png
new file mode 100644
index 000000000..04cea20d2
Binary files /dev/null and b/app/assets/images/default-screenshots/lang-package.png differ
diff --git a/app/assets/images/default-screenshots/lang-package.svg b/app/assets/images/default-screenshots/lang-package.svg
new file mode 100644
index 000000000..7e130617c
--- /dev/null
+++ b/app/assets/images/default-screenshots/lang-package.svg
@@ -0,0 +1,133 @@
+
+
+
+
diff --git a/app/assets/images/default-screenshots/no_screenshot_opensuse.png b/app/assets/images/default-screenshots/no_screenshot_opensuse.png
deleted file mode 100644
index a57a9c51d..000000000
Binary files a/app/assets/images/default-screenshots/no_screenshot_opensuse.png and /dev/null differ
diff --git a/app/assets/images/default-screenshots/no_screenshot_opensuse_big.png b/app/assets/images/default-screenshots/no_screenshot_opensuse_big.png
deleted file mode 100644
index fb0e5a5cc..000000000
Binary files a/app/assets/images/default-screenshots/no_screenshot_opensuse_big.png and /dev/null differ
diff --git a/app/assets/images/default-screenshots/openstack-package.png b/app/assets/images/default-screenshots/openstack-package.png
new file mode 100644
index 000000000..7c7ecc39d
Binary files /dev/null and b/app/assets/images/default-screenshots/openstack-package.png differ
diff --git a/app/assets/images/default-screenshots/openstack-package.svg b/app/assets/images/default-screenshots/openstack-package.svg
new file mode 100644
index 000000000..c3fcf3a91
--- /dev/null
+++ b/app/assets/images/default-screenshots/openstack-package.svg
@@ -0,0 +1,76 @@
+
+
+
+
diff --git a/app/assets/images/default-screenshots/openstack.png b/app/assets/images/default-screenshots/openstack.png
deleted file mode 100644
index 1dbb5f42e..000000000
Binary files a/app/assets/images/default-screenshots/openstack.png and /dev/null differ
diff --git a/app/assets/images/default-screenshots/package.png b/app/assets/images/default-screenshots/package.png
new file mode 100644
index 000000000..f89812e0b
Binary files /dev/null and b/app/assets/images/default-screenshots/package.png differ
diff --git a/app/assets/images/default-screenshots/package.svg b/app/assets/images/default-screenshots/package.svg
new file mode 100644
index 000000000..909089b00
--- /dev/null
+++ b/app/assets/images/default-screenshots/package.svg
@@ -0,0 +1,73 @@
+
+
+
+
diff --git a/app/assets/images/default-screenshots/perl-package.png b/app/assets/images/default-screenshots/perl-package.png
new file mode 100644
index 000000000..09855b2b0
Binary files /dev/null and b/app/assets/images/default-screenshots/perl-package.png differ
diff --git a/app/assets/images/default-screenshots/perl-package.svg b/app/assets/images/default-screenshots/perl-package.svg
new file mode 100644
index 000000000..0727b920f
--- /dev/null
+++ b/app/assets/images/default-screenshots/perl-package.svg
@@ -0,0 +1,76 @@
+
+
+
+
diff --git a/app/assets/images/default-screenshots/perl.gif b/app/assets/images/default-screenshots/perl.gif
deleted file mode 100644
index 0288540d2..000000000
Binary files a/app/assets/images/default-screenshots/perl.gif and /dev/null differ
diff --git a/app/assets/images/default-screenshots/perl.png b/app/assets/images/default-screenshots/perl.png
deleted file mode 100644
index ee3bc81dc..000000000
Binary files a/app/assets/images/default-screenshots/perl.png and /dev/null differ
diff --git a/app/assets/images/default-screenshots/python-package.png b/app/assets/images/default-screenshots/python-package.png
new file mode 100644
index 000000000..c028bc91b
Binary files /dev/null and b/app/assets/images/default-screenshots/python-package.png differ
diff --git a/app/assets/images/default-screenshots/python-package.svg b/app/assets/images/default-screenshots/python-package.svg
new file mode 100644
index 000000000..1fd7194e6
--- /dev/null
+++ b/app/assets/images/default-screenshots/python-package.svg
@@ -0,0 +1,76 @@
+
+
+
+
diff --git a/app/assets/images/default-screenshots/python.png b/app/assets/images/default-screenshots/python.png
deleted file mode 100644
index dffcbc7f6..000000000
Binary files a/app/assets/images/default-screenshots/python.png and /dev/null differ
diff --git a/app/assets/images/default-screenshots/ruby-package.png b/app/assets/images/default-screenshots/ruby-package.png
new file mode 100644
index 000000000..0647ca60a
Binary files /dev/null and b/app/assets/images/default-screenshots/ruby-package.png differ
diff --git a/app/assets/images/default-screenshots/ruby-package.svg b/app/assets/images/default-screenshots/ruby-package.svg
new file mode 100644
index 000000000..159a0b6f4
--- /dev/null
+++ b/app/assets/images/default-screenshots/ruby-package.svg
@@ -0,0 +1,77 @@
+
+
+
+
diff --git a/app/assets/images/default-screenshots/rubygem.png b/app/assets/images/default-screenshots/rubygem.png
deleted file mode 100644
index 8ea9390c0..000000000
Binary files a/app/assets/images/default-screenshots/rubygem.png and /dev/null differ
diff --git a/app/assets/images/default-screenshots/tux.png b/app/assets/images/default-screenshots/tux.png
deleted file mode 100644
index c762ab792..000000000
Binary files a/app/assets/images/default-screenshots/tux.png and /dev/null differ
diff --git a/app/assets/images/distributions/leap.svg b/app/assets/images/distributions/leap.svg
new file mode 100644
index 000000000..9581dc1cc
--- /dev/null
+++ b/app/assets/images/distributions/leap.svg
@@ -0,0 +1,104 @@
+
+
+
+
diff --git a/app/assets/images/distributions/testing.svg b/app/assets/images/distributions/testing.svg
new file mode 100644
index 000000000..0a11f074e
--- /dev/null
+++ b/app/assets/images/distributions/testing.svg
@@ -0,0 +1,98 @@
+
+
+
+
diff --git a/app/assets/images/distributions/tumbleweed.svg b/app/assets/images/distributions/tumbleweed.svg
new file mode 100644
index 000000000..e42561a11
--- /dev/null
+++ b/app/assets/images/distributions/tumbleweed.svg
@@ -0,0 +1,94 @@
+
+
+
+
diff --git a/app/assets/stylesheets/app.scss b/app/assets/stylesheets/app.scss
new file mode 100644
index 000000000..c9e11a191
--- /dev/null
+++ b/app/assets/stylesheets/app.scss
@@ -0,0 +1,26 @@
+// New theme
+.package-card {
+ .card-img-top {
+ height: 250px;
+ background-size: cover;
+ background-position: center;
+ background-repeat: no-repeat;
+ }
+
+ // Only one line text
+ .card-title {
+ height: 1.1em;
+ white-space: nowrap;
+ overflow: hidden;
+
+ mark {
+ padding: 0;
+ }
+ }
+
+ // Only two line text
+ .card-text {
+ height: 3em;
+ overflow: hidden;
+ }
+}
\ No newline at end of file
diff --git a/app/assets/stylesheets/style.scss b/app/assets/stylesheets/style.scss
index 881564d00..062cb4d59 100644
--- a/app/assets/stylesheets/style.scss
+++ b/app/assets/stylesheets/style.scss
@@ -623,4 +623,3 @@ select {
.global-navigation-menu li span.global-navigation-icon {
background-image:url('//static.opensuse.org/themes/bento/images/globalnav/globalnav-im.png');
}
-
diff --git a/app/controllers/distributions_controller.rb b/app/controllers/distributions_controller.rb
index 74acabc1e..507506b15 100644
--- a/app/controllers/distributions_controller.rb
+++ b/app/controllers/distributions_controller.rb
@@ -3,36 +3,21 @@ class DistributionsController < ApplicationController
# GET /distributions
def index
- render layout: 'jekyll'
+ render layout: 'download'
end
# GET /distributions/leap
def leap
- render layout: 'jekyll'
- end
-
- # GET /distributions/leap/ports
- def leap_ports
- render layout: 'jekyll'
+ render layout: 'download'
end
# GET /distributions/tumbleweed
def tumbleweed
- render layout: 'jekyll'
- end
-
- # GET /distributions/tumbleweed/ports
- def tumbleweed_ports
- render layout: 'jekyll'
- end
-
- # GET /distributions/tumbleweed/unsupported
- def tumbleweed_unsupported
- render layout: 'jekyll'
+ render layout: 'download'
end
# GET /distributions/testing
def testing
- render layout: 'jekyll'
+ render layout: 'download'
end
end
diff --git a/app/models/screenshot.rb b/app/models/screenshot.rb
index 1e8bb2ed3..18cad671f 100644
--- a/app/models/screenshot.rb
+++ b/app/models/screenshot.rb
@@ -3,7 +3,7 @@
# Class to cache and resize the screenshot of a given package
class Screenshot
- THUMBNAIL_WIDTH = "160"
+ THUMBNAIL_WIDTH = "600"
# @return [String] name of the package
attr_reader :pkg_name
@@ -30,7 +30,7 @@ def thumbnail_path(fetch: true)
if cached?
thumbnail_file_path(fullpath: false)
elsif source_url.nil?
- default_file_path(:thumbnail, fullpath: false)
+ default_file_path(fullpath: false)
elsif fetch
begin
self.fetch
@@ -43,7 +43,7 @@ def thumbnail_path(fetch: true)
rescue Exception => e
raise unless Rails.env.production?
Rails.logger.debug("No screenshot fetched for: " + pkg_name)
- default_file_path(:thumbnail, fullpath: false)
+ default_file_path(fullpath: false)
end
else
nil
@@ -60,7 +60,7 @@ def blob(type = :screenshot)
if cached?
cached_blob(type)
elsif source_url.nil?
- default_blob(type)
+ default_blob
else
begin
fetch
@@ -73,7 +73,7 @@ def blob(type = :screenshot)
rescue Exception => e
raise unless Rails.env.production?
Rails.logger.debug("No screenshot fetched (blob) for: " + pkg_name)
- default_blob(type)
+ default_blob
end
end
end
@@ -92,8 +92,8 @@ def cached_blob(type)
end
end
- def default_blob(type)
- open(default_file_path(type), "rb", &:read)
+ def default_blob
+ open(default_file_path, "rb", &:read)
end
def cache_key
@@ -127,40 +127,50 @@ def thumbnail_file_path(fullpath: true)
fullpath ? File.join(Rails.root, "public", "images", file) : file
end
- def default_file_path(type, fullpath: true)
+ def default_file_path(fullpath: true)
file = case pkg_name
when /-devel$/
- "file_settings.png"
+ "devel-package.svg"
when /-devel-/
- "file_settings.png"
- when /-lang$/
- "file_settings.png"
+ "devel-package.svg"
when /-debug$/
- "file_settings.png"
+ "devel-package.svg"
+ when /-lang$/
+ "lang-package.svg"
+ when /-l10n-/
+ "lang-package.svg"
+ when /-i18n-/
+ "lang-package.svg"
+ when /-translations/
+ "lang-package.svg"
when /-doc$/
- "files.png"
+ "doc-package.svg"
when /-help-/
- "files.png"
+ "doc-package.svg"
when /-javadoc$/
- "files.png"
+ "doc-package.svg"
when /-debuginfo/
- "file_settings.png"
+ "devel-package.svg"
when /-debugsource/
- "file_settings.png"
+ "devel-package.svg"
when /-kmp-/
- "file_settings.png"
+ "devel-package.svg"
when /^rubygem-/
- "rubygem.png"
+ "ruby-package.svg"
when /^perl-/
- "perl.png"
+ "perl-package.svg"
when /^python-/
- "python.png"
+ "python-package.svg"
+ when /^python2-/
+ "python-package.svg"
+ when /^python3-/
+ "python-package.svg"
when /^kernel-/
- "tux.png"
+ "kernel-package.svg"
when /^openstack-/i
- "openstack.png"
+ "openstack-package.svg"
else
- type == :thumbnail ? "no_screenshot_opensuse.png" : "no_screenshot_opensuse_big.png"
+ "package.svg"
end
if fullpath
File.join(Rails.root, "app/assets/images/default-screenshots", file)
diff --git a/app/views/distributions/_unsupported_live_media.html.erb b/app/views/distributions/_unsupported_live_media.html.erb
deleted file mode 100644
index ef5440302..000000000
--- a/app/views/distributions/_unsupported_live_media.html.erb
+++ /dev/null
@@ -1,10 +0,0 @@
-
- <%= _('Unsupported LiveUSBs') %>
-
-
- <%= _('openSUSE Tumbleweed also offers a number of unsupported LiveUSBs. These
-cannot be used for Installation or Upgrade. They are not an accurate
-reflection as to whether or not Tumbleweed will run on your hardware.') %>
-
- <%= link_to _('Get Unsupported Tumbleweed LiveCDs.'), tumbleweed_unsupported_distributions_path %>
-
- <%= _('Help test openSUSE’s next version of Leap by downloading
- the latest development milestone.') %>
-
-
-
-
-
-
-
-
- <%= _('Choosing which Distribution to Download') %>
-
-
- <%= _('%{tumbleweed} is a rolling-release. This means the software is always the latest stable versions available from the openSUSE Project. Things will change regularly as Free and Open Source projects continually release new versions of their software.') % { tumbleweed: link_to(_('openSUSE Tumbleweed'), tumbleweed_distributions_path) } %>
-
- <%= _('Tumbleweed is recommended for Developers, openSUSE Contributors, and Linux/FOSS Enthusiasts.') %>
-
-
-
- <%= _('%{leap} is a regular-release. This means it releases %{annually}, with security and stability updates being the priority during each release %{lifetime}.') %
- { leap: link_to(_('openSUSE Leap'), leap_distributions_path),
- annually: link_to(_('annually'), _('https://en.opensuse.org/openSUSE:Roadmap')),
- lifetime: link_to(_('lifetime'), _("https://en.opensuse.org/Lifetime"))
- } %>
- <%= _('It is not expected to change in any significant way until its next annual release.') %>
-
- <%= _('Leap shares a Common Base System with %{sles}, so major architectural changes are not expected for several years, aligned with each new Major Release (eg 12, 13, etc) of SUSE Linux Enterprise.') % {
- sles: link_to(_('SUSE Linux Enterprise'), "https://www.suse.com/products/server/")
- } %>
-
- <%= _('Leap is recommended for Sysadmins, Enterprise Developers, and ‘Regular’ Desktop Users.') %>
-
<%= _('Help test openSUSE’s next version of Leap by downloading the latest development milestone.') %>
+
+
+
+
+
-
- <%= _('Both distributions are well tested by openQA as well as by human openSUSE contributors so both can be relied upon to work.') %>
-
- <%= _('Both distributions are fully capable of being used on a Desktop PC, laptop, server, or in the cloud.') %>
-
+
+
+
+ <%= _('Choosing which Distribution to Download') %>
+
-
-
- <%= _('If you are still not sure, download %{leap}') % { leap: link_to(_('openSUSE Leap'), leap_distributions_path) } %>
-
-
- <%= _('It is easy to switch to openSUSE Tumbleweed if you change your mind later.') %>
-
+
+
+
+ <%= _('%{tumbleweed} is a rolling-release. This means the software is always the latest stable versions available from the openSUSE Project. Things will change regularly as Free and Open Source projects continually release new versions of their software.') % { tumbleweed: link_to(_('openSUSE Tumbleweed'), tumbleweed_distributions_path) } %>
+
+
+ <%= _('Tumbleweed is recommended for Developers, openSUSE Contributors, and Linux/FOSS Enthusiasts.') %>
+
+
+
+
+ <%= _('%{leap} is a regular-release. This means it releases %{annually}, with security and stability updates being the priority during each release %{lifetime}.') %
+ { leap: link_to(_('openSUSE Leap'), leap_distributions_path),
+ annually: link_to(_('annually'), _('https://en.opensuse.org/openSUSE:Roadmap')),
+ lifetime: link_to(_('lifetime'), _("https://en.opensuse.org/Lifetime"))
+ } %>
+ <%= _('It is not expected to change in any significant way until its next annual release.') %>
+ <%= _('Leap shares a Common Base System with %{sles}, so major architectural changes are not expected for several years, aligned with each new Major Release (eg 12, 13, etc) of SUSE Linux Enterprise.') % {
+ sles: link_to(_('SUSE Linux Enterprise'), "https://www.suse.com/products/server/")
+ } %>
+
+
+ <%= _('Leap is recommended for Sysadmins, Enterprise Developers, and ‘Regular’ Desktop Users.') %>
+
+
+
-
+
+ <%= _('Both distributions are well tested by openQA as well as by human openSUSE contributors so both can be relied upon to work.') %>
+
+
+ <%= _('Both distributions are fully capable of being used on a Desktop PC, laptop, server, or in the cloud.') %>
+
- <%= _('openSUSE Leap is also available on other architectures, such as AArch64 (aka ARMv8) and PPC64.') %>
-
- <%= link_to _('Get openSUSE Leap for other architectures.'), leap_ports_distributions_path %>
-
- openSUSE Tumbleweed
- <%= _('is also available on other architectures, such as Intel 32-bit (aka i586), AArch64 (aka ARMv8) and PPC64.') %>
-
- <%= link_to _('Get openSUSE Tumbleweed for other architectures.'), tumbleweed_ports_distributions_path %>
-
+ <%= _('Please Note: These LiveUSBs are not supported') %>
+ <%= _('They cannot be used to install or upgrade Tumbleweed. Please use the %{tumbleweed_media} instead.') %
+ { tumbleweed_media: link_to(s_('Please Use|Tumbleweed installation media'), tumbleweed_distributions_path) } %>
+ <%= _('They have a limited package/driver selection, so cannot be considered an accurate reflection as to whether Tumbleweed will work on your hardware or not.') %>
+ <%= _('They are not tested as thoroughly as the %{tumbleweed_media}.') %
+ { tumbleweed_media: link_to(s_('Not Tested|Tumbleweed installation media'), tumbleweed_distributions_path) } %>
+ <%= _('Please review %{openqa}\'s test results if you want an indication whether these LiveUSBs are working as expected.') % { openqa: link_to('openQA', 'https://openqa.opensuse.org/') } %>
+
-
-
- <%= _('Download the LiveUSBs of the rolling version of openSUSE, for desktop PCs, laptops, and servers.') %>
-
-
-
-
-
-
-
-
-
-
-
-
- <%= _('Please Note: These LiveUSBs are not supported') %>
-
-
-
- <%= _('They cannot be used to install or upgrade Tumbleweed. Please use the %{tumbleweed_media} instead.') %
- { tumbleweed_media: link_to(s_('Please Use|Tumbleweed installation media'), tumbleweed_distributions_path) } %>
-
-
- <%= _('They have a limited package/driver selection, so cannot be considered
-an accurate reflection as to whether Tumbleweed will work on your hardware or not.') %>
-
-
- <%= _('They are not tested as thoroughly as the %{tumbleweed_media}.') %
- { tumbleweed_media: link_to(s_('Not Tested|Tumbleweed installation media'), tumbleweed_distributions_path) } %>
- <%= _('Please review %{openqa}\'s test results if you want an indication whether these LiveUSBs are working as expected.') % { openqa: link_to('openQA', 'https://openqa.opensuse.org/') } %>
-