Wiele wersji tej samej aplikacji w Centrum oprogramowania Ubuntu?

13

Już opublikowałem moją zastrzeżoną aplikację w Centrum oprogramowania Ubuntu (https://myapps.developer.ubuntu.com), a teraz chcę ją zaktualizować o nową wersję.

Tym razem chciałem załadować wiele kompilacji dla jednej aplikacji (jeden dla Ubuntu 12.04 i386, jeden dla Ubuntu 12.04. Amd64, jeden dla Ubuntu 11.10 i386, ...) Problem polega na tym, że nie wydaje się to możliwe. Nowe przesyłanie zastępuje stare.

Czy to prawda, że ​​Centrum oprogramowania obsługuje tylko jeden pakiet binarny na aplikację? Mógłbym spróbować utworzyć nową aplikację dla każdej kompilacji, ale wydaje się to złym rozwiązaniem.

Jakieś wskazówki, aby rozwiązać problem?

użytkownik1099994
źródło
Widziałeś to, może ci pomóc - serverfault.com/a/279360
23 93 26 35 19 57 3 89
Może to zabrzmieć głupio, ale czy próbowałeś przesłać swoje różne nazwy, np. „Myapp v1” „myapp v2” itd.
Mark Kirby,

Odpowiedzi:

2

MyApps nie jest skonfigurowany do obsługi sytuacji oddzielnych plików binarnych na arch / serię.

Sugeruję po prostu upewnienie się, że wszystkie twoje pliki binarne dotrą do recenzenta, a oni zajmą się przesyłaniem odpowiednich plików binarnych do PPA dla ciebie (dopóki myapps nie zostanie zaktualizowany, aby poradzić sobie z tą sytuacją).

  • Opcja 1: Jeśli twoje pliki binarne są małe, spakuj je do jednego pliku i użyj pola przesyłania pakietów
  • Opcja 2: jeśli są duże, łatwiej będzie je przesłać gdzie indziej (Ubuntu1 lub dropbox) i udostępnić je za pośrednictwem adresu URL, zauważając, że w zgłoszeniu myapps.
  • Opcja 3: (Muszę sprawdzić, czy byłoby to OK, jeśli chodzi o zasady) Jeśli twoje pliki binarne będą działały poprawnie w usłudze kompilacji Launchpad, utwórz PPA, znajdź mnie na IRC (noodles775 na freenode) i możemy sprywatyzować twoje PPA, wtedy możesz zapisać swoje źródło i automatycznie zbudować je dla LP dla dystrybucji / łuków.
Michael Nelson
źródło
0

Wydaje mi się, że strona myapps została zaprojektowana głównie z myślą o aplikacjach Python / GTK - aplikacjach wieloplatformowych tylko w najnowszej wersji. Z tych powodów nie ma opcji pozwalającej na wybór w oparciu o procesor i wersję, chociaż oczywiście ta funkcja istnieje dla Software Center i automatycznych aktualizacji przy użyciu repozytoriów.

Myślę, że myapps jest nieodpowiednim narzędziem do tego zadania, jeśli chcesz publikować skompilowane wersje (pliki binarne) swojego programu dla różnych wydań i procesorów. Być może będziesz musiał spojrzeć na konfigurację projektu na Launchpad i przejście do głównego nurtu wraz z rozwojem.

https://launchpad.net/projects/+new

Alternatywnie uważam, że umowy PPA powinny być skonfigurowane do robienia tego, co chcesz w odniesieniu do wersji 32- i 64-bitowych, jednak nie jest to to samo, co publikowanie z myapps, ponieważ nie byłyby one dostępne, dopóki ktoś nie doda PPA do swoich źródeł .

producent 4
źródło
0

Odpowiedź Michaela Nelsona powinna być rozważona, hmmm, „kanoniczna”, ale skoro miałem już prawie gotowy szkic, oto moje dwa centy :)

Myślę, że polityka Dev Portal dotycząca przesyłania własnych pakietów wyjaśnia, dlaczego masz ten problem i jakie masz alternatywy:

wprowadź opis zdjęcia tutaj

Rozbijmy to:

  1. Źródła lub pliki binarne

    • Wygląda na to, że chcesz załadować wiele plików binarnych. Ogólnie rzecz biorąc, zastrzeżone aplikacje binarne są albo statycznie połączone, albo łączą niezbędne zależności ze ścieżkami względnymi, dzięki czemu nie trzeba instalować żadnych dodatkowych elementów apt-get, z wyjątkiem być może ia32-libs.
    • Do ciebie należy upewnienie się, że taki plik binarny działa na Ubuntu 11.04 / 11.10 / 12.04 (w zależności od tego, na co celujesz), bez awarii na żadnej platformie; AFAIK - podstawowym wymaganiem jest to, libcaby kompilacja aplikacji / bibliotek była zgodna wstecz z najstarszym możliwym jądrem, na które chcesz atakować; Uważam, że wszystko, co jest Lucid lub nowsze, jest w porządku z obecnym libc 2.15 na Precise.
    • Nie wiem, jak szerokie są usługi pakowania Canonical dla deweloperów komercyjnych, jeśli prześlesz nie-debianizowane źródło, ale zakładam, że musiałoby to być kompilowalne do czegoś podobnego do powyższego „uniwersalnego” pliku binarnego.
  2. Pakiet źródłowy Debiana:

    • Jeśli wybierzesz tę opcję, wszystko, co musisz zrobić, to (a) upewnić się, że w repozytoriach repozytoriów dla najstarszej wersji, na którą chcesz kierować, dostępne są wszelkie zależności, oraz że (b) Twoja aplikacja nie korzysta z żadnych nowych funkcji / API / ABI w tych zależnościach, tak że działa na powiedzmy 12.04, ale zawiedzie 11.04.
    • W tym przypadku uważam, że Canonical / Soyuz (system kompilacji) zajmie się tworzeniem wielu pakietów dla każdego wydania.
  3. Zaangażuj człowieka - spakuj wszystkie różne pliki binarne do gigantycznego tarballa i skontaktuj się z kluskami 775 ;

ish
źródło
-1

po prostu zaktualizuj za pomocą menedżera aktualizacji i gotowe

Jaskółka oknówka
źródło
To naprawdę nie pomoże, ponieważ po prostu nadpisze stare.
23 93 26 35 19 57 3 89
-1

Użyj Synaptic lub aptitude zamiast Ubuntu Software Center. W ten sposób będziesz mieć większą kontrolę nad tym, które pakiety będą instalowane, i będziesz mógł sprawdzić zależności, polecać pakiety itp. Przed ich zainstalowaniem.

Prahlad Yeri
źródło
To naprawdę nie pomoże, ponieważ po prostu nadpisze stare.
23 93 26 35 19 57 3 89
-2

Użyj systemu PPA Launchpad - tworzy łatwe repozytorium Ubuntu. Przejdź do launchpad.net. Jeśli się zarejestrujesz, powinieneś być w stanie dodać różne kompilacje dla tego samego pakietu.

wąsy75
źródło
2
Jeśli jest to pomocne, proszę rozwinąć, w jaki sposób osiągnąć to, czego wymaga pytanie.
23 93 26 35 19 57 3 89