LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices


Closed Thread
  Search this Thread
Old 06-03-2024, 10:16 AM   #31
maybeJosiah
Member
 
Registered: Jan 2024
Location: USA
Distribution: Ubuntu, Android, Ubuntu Touch, Jolla Sailfish X E.
Posts: 358

Original Poster
Blog Entries: 3

Rep: Reputation: 7

Sorry NevemTeve, second to last before this I wrote was at TB0ne. X E.
 
Old 06-03-2024, 10:20 AM   #32
shruggy
Senior Member
 
Registered: Mar 2020
Posts: 3,706

Rep: Reputation: Disabled
Many deb helper tools are listed on https://wiki.debian.org/AutomaticPackagingTools.

Of those, I have experience with dh-make (but prefer debmake over it), dh-make-perl aka cpan2dsc (OK), gem2deb (OK), python3-stdeb aka py2dsc (crap), pypi2deb aka py2dsp (OK, but you'll have to backport the version currently in sid to be able to handle Python projects based around pyproject.toml), and npm2deb (very good).

I also have had some experience with debcargo and cabal-debian, but that was several years ago, I haven't tried their recent versions as I didn't have to make debs out of any Rust or Haskell projects recently.
 
1 members found this post helpful.
Old 06-03-2024, 10:23 AM   #33
maybeJosiah
Member
 
Registered: Jan 2024
Location: USA
Distribution: Ubuntu, Android, Ubuntu Touch, Jolla Sailfish X E.
Posts: 358

Original Poster
Blog Entries: 3

Rep: Reputation: 7
Question

Quote:
Originally Posted by shruggy View Post
Many deb helper tools are listed on https://wiki.debian.org/AutomaticPackagingTools.

Of those, I have experience with dh-make (but prefer debmake over it), dh-make-perl aka cpan2dsc (OK), gem2deb (OK), python3-stdeb aka py2dsc (crap), pypi2deb aka py2dsp (OK, but you'll have to backport the version currently in sid to be able to handle Python projects based around pyproject.toml), and npm2deb (very good).

I also have had some experience with debcargo and cabal-debian, but that was several years ago, I haven't tried their recent versions as I didn't have to make debs out of any Rust or Haskell projects recently.
Wow, so can I make an app in Ruby or Java since I know those? Sorry but I am still unclear how some. I understand directory structure and stuff but how do I know how to connect in stuff? Are there API refs? X E.
 
Old 06-03-2024, 10:34 AM   #34
maybeJosiah
Member
 
Registered: Jan 2024
Location: USA
Distribution: Ubuntu, Android, Ubuntu Touch, Jolla Sailfish X E.
Posts: 358

Original Poster
Blog Entries: 3

Rep: Reputation: 7
Okay, I saw lots of stuff for making apps but what exactly do I need to install or get to make an app? Looks like Ruby is for me now. Java no auto maker seemingly according to that. Looks like I need to make an archive of like my files and it makes a template for me. I looked through lots of official documents. Thank you. I know I could make a gem but I would like to make just a program, no gem needed. Where would be getting started with say auto tools? X E.
 
Old 06-03-2024, 10:53 AM   #35
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,316

Rep: Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373
I think we need to review some things here, because I’m not 100 percent sure if you know them.

An “app” is a single file with execute permissions. If the language used to make that app is interpreted, then the app would be a text file, containing the source code, and starting with a shebang. If the language is compiled, then the app would generated by running the source code file through a program called a compiler.

The source code is what you write.

To distribute the app to your friend, then all you need to do is test it on his version of Linux, and give him the executable. He can then just run it.

Some apps load other files. And if you’re distributing it for a general audience, then you’ll want to include things like icons and .desktop files (to put it in the menus). A packaging format like .deb just bundles all that together, and installing the .deb puts those files in the right place for the distribution to find them.

It sounds like you’re trying to find out how to make a .deb when you don’t even know how to compile, and that’s not going to work.
 
1 members found this post helpful.
Old 06-03-2024, 10:55 AM   #36
maybeJosiah
Member
 
Registered: Jan 2024
Location: USA
Distribution: Ubuntu, Android, Ubuntu Touch, Jolla Sailfish X E.
Posts: 358

Original Poster
Blog Entries: 3

Rep: Reputation: 7
I know how to compile, interpret, whatever. What I try for is something I can install and use hardware with, preferably with minimal other installations. I already make cross platform stuff but what I am trying for is like a system app or whatever to call it. X E.

Last edited by maybeJosiah; 06-03-2024 at 10:58 AM.
 
Old 06-03-2024, 10:57 AM   #37
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,316

Rep: Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373
Okay, so what are you actually asking here?
 
Old 06-03-2024, 10:58 AM   #38
maybeJosiah
Member
 
Registered: Jan 2024
Location: USA
Distribution: Ubuntu, Android, Ubuntu Touch, Jolla Sailfish X E.
Posts: 358

Original Poster
Blog Entries: 3

Rep: Reputation: 7
How do I make an installable thing like a .deb?
 
Old 06-03-2024, 11:01 AM   #39
maybeJosiah
Member
 
Registered: Jan 2024
Location: USA
Distribution: Ubuntu, Android, Ubuntu Touch, Jolla Sailfish X E.
Posts: 358

Original Poster
Blog Entries: 3

Rep: Reputation: 7
Like how to make a stand alone compiled for Linux thing that can use system stuff and have GUI? At this point I think I am asking how to make a .deb with Ruby. X E.
 
Old 06-03-2024, 11:01 AM   #40
shruggy
Senior Member
 
Registered: Mar 2020
Posts: 3,706

Rep: Reputation: Disabled
For Java, they have javahelper.

Quote:
Originally Posted by maybeJosiah View Post
I know I could make a gem but I would like to make just a program, no gem needed.
Then those tools are not for you. They are called auto because they semi-automatically convert some language projects to deb. I.e. if you have a Ruby gem, you can semi-automatically convert it to deb with gem2deb; if you have a Perl module packaged on CPAN, you can semi-automatically convert it to deb with cpan2dsc, and so on.

But if you just have a program in some language, with no packaging infrastructure, you'll have to package it manually. debmake may help to start you going, but it will still require quite a few manual (and often menial) work on your part. How to use debmake is exhaustively described in the Guide for Debian Maintainers. This will require some learning curve, for sure.

Are there shortcuts, you ask? Yes, there are. But I don't like them. E.g., there is makedeb. It's especially appealing for those who accustomed to creating PKGBUILDs for Arch/AUR as it basically uses the same paradigm. In my experience, it's less flexible than native Debian tools, but it may help you quickly create a simple deb package from scratch. I doubt such a package would ever be accepted into Debian or Ubuntu though as it would not pass their packaging quality musters.
 
Old 06-03-2024, 11:03 AM   #41
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,316

Rep: Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373Reputation: 5373
“How do I make a .deb” is easily googlable. Here’s one link.

https://www.hackgnar.com/2016/01/sim...ation.html?m=1

“How do I write the program I’m going to put into the .deb” is another question entirely.
 
Old 06-03-2024, 11:04 AM   #42
maybeJosiah
Member
 
Registered: Jan 2024
Location: USA
Distribution: Ubuntu, Android, Ubuntu Touch, Jolla Sailfish X E.
Posts: 358

Original Poster
Blog Entries: 3

Rep: Reputation: 7
I saw that gems are converted to tar.gz's then to .Deb's so what is wrong with just making a .tar.gz skip the gem? X E.
 
Old 06-03-2024, 11:05 AM   #43
maybeJosiah
Member
 
Registered: Jan 2024
Location: USA
Distribution: Ubuntu, Android, Ubuntu Touch, Jolla Sailfish X E.
Posts: 358

Original Poster
Blog Entries: 3

Rep: Reputation: 7
Yeah, at this point it is like how do I make code actually do anything in a .deb. I can make a static .Deb but I try for a program. X E.
 
Old 06-03-2024, 11:27 AM   #44
shruggy
Senior Member
 
Registered: Mar 2020
Posts: 3,706

Rep: Reputation: Disabled
Quote:
Originally Posted by maybeJosiah View Post
I saw that gems are converted to tar.gz's then to .Deb's so what is wrong with just making a .tar.gz skip the gem? X E.
Everything is wrong about it. A .tar.gz is just a bunch of files and directories packed together. It has no universally agreed upon internal structure¹. No automatic tool will be able to do anything with it.
______
¹ Unless we are speaking about Slackware's .tgz, which does indeed have a clearly defined internal structure and format, but this is something very different than your random .tar.gz archive.

Last edited by shruggy; 06-03-2024 at 11:33 AM.
 
Old 06-03-2024, 11:35 AM   #45
TB0ne
LQ Guru
 
Registered: Jul 2003
Location: Birmingham, Alabama
Distribution: SuSE, RedHat, Slack,CentOS
Posts: 27,126

Rep: Reputation: 8044Reputation: 8044Reputation: 8044Reputation: 8044Reputation: 8044Reputation: 8044Reputation: 8044Reputation: 8044Reputation: 8044Reputation: 8044Reputation: 8044
Quote:
Originally Posted by maybeJosiah View Post
How do I make an installable thing like a .deb? Like how to make a stand alone compiled for Linux thing that can use system stuff and have GUI? At this point I think I am asking how to make a .deb with Ruby. X E.
Now we're on to Ruby, from rust/python/java. Great....again, still doesn't matter and you don't seem to be grasping what you're told. AGAIN:
  1. Write your program, whatever you want it to be, in whatever language. You claim to be an expert and can code in anything; this should be trivial.
  2. Get your program working with whatever you want GUI/CLI/Web/Whatever
  3. Put it, along with whatever you want in a directory by itself, and **FOLLOW THE EASILY FOUND HOW TO GUIDES YOU WERE SPOON FED IN POST #3** to create the .deb
You are now done. Notice that there aren't any 'it needs rust/python/ruby/whatever' qualifications. Notice how it doesn't depend on snap/flatpack/whatever-else. Install it locally; host it wherever you want. Still isn't hard, but you aren't understanding things. At this point, you're either trolling or are unable to learn.
 
  


Closed Thread

Tags
deb, deb package, develop, developer, linux, program, programing, ubuntu


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Can`t find C-compiler in Debian ,or at least can`t find one that can make executables hemmelig Linux - Software 4 05-26-2008 03:07 AM
how to use syanptic in fc 5 and how to add repo and which repo to be added.. vikas04522 Fedora 1 08-26-2006 12:41 PM
Least resource & least space using linux operating system ? winxandlinx Linux - Software 4 05-25-2006 11:10 AM
Distribute updates to settings on a Debian based network (Lots of opinions wanted) amon Debian 0 04-11-2006 04:54 PM
a Distribute for a server and coding blackman890 Linux - Distributions 5 03-26-2005 08:51 PM

LinuxQuestions.org > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 02:16 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration