diff --git a/CHANGELOG b/CHANGELOG index 690be331..b88f4aa5 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,6 +1,10 @@ Changelog (English) =================== +2.0.7 +Fixed problem with seccomp (issue #869) +Improved Gentoo bootstrap + 2.0.6 Improved mount and unmount functions Force make a filesystem @@ -11,7 +15,7 @@ Enabled journal for FS ext3/4, ext2 without journal Added an attempt to re-unmount in case of failure The e2fsck utility is included in the assembly Fixed problem with running dbus in Fedora -Fixed issue of creating a FS (mke2fs) when using busybox from system (issue # 891) +Fixed issue of creating a FS (mke2fs) when using busybox from system (issue #891) START and STOP buttons in notification Show app after five taps on notification in stealth mode @@ -396,6 +400,10 @@ Updated list packages of base system installation История изменений (Русский) =========================== +2.0.7 +Исправлена проблема с seccomp (тикет #869) +Доработан инсталлятор Gentoo + 2.0.6 Изменен подход к монтированию и размонтированию контейнера Исправление проблемы с созданием файловой системы diff --git a/app/build.gradle b/app/build.gradle index 9bfae774..6c3db282 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -2,14 +2,14 @@ apply plugin: 'com.android.application' android { compileSdkVersion 25 - buildToolsVersion '27.0.2' + buildToolsVersion '27.0.3' defaultConfig { applicationId 'ru.meefik.linuxdeploy' minSdkVersion 10 targetSdkVersion 25 - versionCode 234 - versionName "2.0.6" + versionCode 235 + versionName "2.0.7" } buildTypes { release { diff --git a/app/src/main/assets/env b/app/src/main/assets/env index c1a33ce5..fc357894 160000 --- a/app/src/main/assets/env +++ b/app/src/main/assets/env @@ -1 +1 @@ -Subproject commit c1a33ce50be3f5f1cb03a53636ff707f71c84d3b +Subproject commit fc357894926281c8436f57be1fbce60a6fe2674c diff --git a/app/src/main/java/ru/meefik/linuxdeploy/RepositoryActivity.java b/app/src/main/java/ru/meefik/linuxdeploy/RepositoryActivity.java index 749c4d85..b11909d1 100644 --- a/app/src/main/java/ru/meefik/linuxdeploy/RepositoryActivity.java +++ b/app/src/main/java/ru/meefik/linuxdeploy/RepositoryActivity.java @@ -1,10 +1,13 @@ package ru.meefik.linuxdeploy; +import android.annotation.SuppressLint; import android.app.ProgressDialog; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.content.pm.PackageManager; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; import android.net.Uri; import android.os.AsyncTask; import android.os.Bundle; @@ -17,6 +20,7 @@ import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.EditText; +import android.widget.ImageView; import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; @@ -207,6 +211,7 @@ public void onClick(DialogInterface dialog, int whichButton) { dialog.show(); } + @SuppressLint("RestrictedApi") private void changeUrlDialog() { final EditText input = new EditText(this); input.setText(PrefStore.getRepositoryUrl(this)); @@ -253,17 +258,49 @@ protected void onCreate(Bundle savedInstanceState) { // ListView Adapter ListView listView = (ListView) findViewById(R.id.repositoryView); adapter = new ArrayAdapter>(this, - android.R.layout.simple_list_item_2, android.R.id.text1, profiles) { + R.layout.repository_row, R.id.repo_entry_title, profiles) { @Override public View getView(int position, View convertView, ViewGroup parent) { View view = super.getView(position, convertView, parent); - TextView text1 = (TextView) view.findViewById(android.R.id.text1); - TextView text2 = (TextView) view.findViewById(android.R.id.text2); + TextView title = (TextView) view.findViewById(R.id.repo_entry_title); + TextView subTitle = (TextView) view.findViewById(R.id.repo_entry_subtitle); + ImageView icon = (ImageView) view.findViewById(R.id.repo_entry_icon); String name = profiles.get(position).get("PROFILE"); String desc = profiles.get(position).get("DESC"); - text1.setText(name); - if (desc != null && !desc.isEmpty()) text2.setText(desc); - else text2.setText(getString(R.string.repository_default_description)); + String type = profiles.get(position).get("TYPE"); + int iconRes = R.raw.linux; + switch (type) { + case "archlinux": + iconRes = R.raw.archlinux; + break; + case "centos": + iconRes = R.raw.centos; + break; + case "debian": + iconRes = R.raw.debian; + break; + case "fedora": + iconRes = R.raw.fedora; + break; + case "gentoo": + iconRes = R.raw.gentoo; + break; + case "kalilinux": + iconRes = R.raw.kalilinux; + break; + case "slackware": + iconRes = R.raw.slackware; + break; + case "ubuntu": + iconRes = R.raw.ubuntu; + break; + } + InputStream imageStream = view.getResources().openRawResource(iconRes); + Bitmap bitmap = BitmapFactory.decodeStream(imageStream); + icon.setImageBitmap(bitmap); + title.setText(name); + if (desc != null && !desc.isEmpty()) subTitle.setText(desc); + else subTitle.setText(getString(R.string.repository_default_description)); return view; } }; diff --git a/app/src/main/res/layout/mounts_row.xml b/app/src/main/res/layout/mounts_row.xml index bfbf15f7..5f9772ff 100644 --- a/app/src/main/res/layout/mounts_row.xml +++ b/app/src/main/res/layout/mounts_row.xml @@ -1,4 +1,3 @@ - + + + + + + + + diff --git a/app/src/main/res/raw/archlinux.png b/app/src/main/res/raw/archlinux.png new file mode 100644 index 00000000..5240a1a8 Binary files /dev/null and b/app/src/main/res/raw/archlinux.png differ diff --git a/app/src/main/res/raw/centos.png b/app/src/main/res/raw/centos.png new file mode 100644 index 00000000..ba8cc8ff Binary files /dev/null and b/app/src/main/res/raw/centos.png differ diff --git a/app/src/main/res/raw/debian.png b/app/src/main/res/raw/debian.png new file mode 100644 index 00000000..57feb62c Binary files /dev/null and b/app/src/main/res/raw/debian.png differ diff --git a/app/src/main/res/raw/fedora.png b/app/src/main/res/raw/fedora.png new file mode 100644 index 00000000..c3660db3 Binary files /dev/null and b/app/src/main/res/raw/fedora.png differ diff --git a/app/src/main/res/raw/gentoo.png b/app/src/main/res/raw/gentoo.png new file mode 100644 index 00000000..77b03895 Binary files /dev/null and b/app/src/main/res/raw/gentoo.png differ diff --git a/app/src/main/res/raw/kalilinux.png b/app/src/main/res/raw/kalilinux.png new file mode 100644 index 00000000..35d6b0f4 Binary files /dev/null and b/app/src/main/res/raw/kalilinux.png differ diff --git a/app/src/main/res/raw/linux.png b/app/src/main/res/raw/linux.png new file mode 100644 index 00000000..60da2fa2 Binary files /dev/null and b/app/src/main/res/raw/linux.png differ diff --git a/app/src/main/res/raw/slackware.png b/app/src/main/res/raw/slackware.png new file mode 100644 index 00000000..386599fe Binary files /dev/null and b/app/src/main/res/raw/slackware.png differ diff --git a/app/src/main/res/raw/ubuntu.png b/app/src/main/res/raw/ubuntu.png new file mode 100644 index 00000000..bcf5d12b Binary files /dev/null and b/app/src/main/res/raw/ubuntu.png differ diff --git a/build.gradle b/build.gradle index 3be019c3..85848174 100644 --- a/build.gradle +++ b/build.gradle @@ -7,9 +7,10 @@ buildscript { url 'https://maven.google.com/' name 'Google' } + google() } dependencies { - classpath 'com.android.tools.build:gradle:3.0.1' + classpath 'com.android.tools.build:gradle:3.1.1' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index f8ed25a4..aad4c450 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Fri Dec 22 15:45:26 MSK 2017 +#Mon Apr 23 08:36:17 MSK 2018 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip